From a5e6a982e42fc13760351f2a94f0ec06583549af Mon Sep 17 00:00:00 2001
From: Julien Michel <julien.michel@cnes.fr>
Date: Mon, 19 Nov 2018 13:29:19 +0100
Subject: [PATCH] ENH: VNamed -> VariadicNamed

---
 .../otbVariadicNamedInputsImageFilter.h        |  4 ++--
 .../Functor/test/otbFunctorImageFilter.cxx     | 18 +++++++++++-------
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/Modules/Core/Functor/include/otbVariadicNamedInputsImageFilter.h b/Modules/Core/Functor/include/otbVariadicNamedInputsImageFilter.h
index a2c342ffc6..3110a0ef47 100644
--- a/Modules/Core/Functor/include/otbVariadicNamedInputsImageFilter.h
+++ b/Modules/Core/Functor/include/otbVariadicNamedInputsImageFilter.h
@@ -57,13 +57,13 @@ public:
   
   itkNewMacro(Self);
   
-  template <typename Tag> void SetVNamedInput(const InputImageType<internal::tuple_index<Tag, TInputNameMap>::value> * inputPtr)
+  template <typename Tag> void SetVariadicNamedInput(const InputImageType<internal::tuple_index<Tag, TInputNameMap>::value> * inputPtr)
   {
     constexpr size_t idx = internal::tuple_index<Tag, TInputNameMap>::value;
     this->SetNthInput(idx,const_cast<InputImageType<idx> *>(inputPtr));
   }
   
-  template <typename Tag> const InputImageType<internal::tuple_index<Tag,TInputNameMap>::value> * GetVNamedInput()
+  template <typename Tag> const InputImageType<internal::tuple_index<Tag,TInputNameMap>::value> * GetVariadicNamedInput()
   {
     constexpr size_t idx = internal::tuple_index<Tag, TInputNameMap>::value;
     return dynamic_cast<const InputImageType<idx> *>(this->GetInput(idx));
diff --git a/Modules/Core/Functor/test/otbFunctorImageFilter.cxx b/Modules/Core/Functor/test/otbFunctorImageFilter.cxx
index 2effb2f18b..38bb11eb39 100644
--- a/Modules/Core/Functor/test/otbFunctorImageFilter.cxx
+++ b/Modules/Core/Functor/test/otbFunctorImageFilter.cxx
@@ -117,14 +117,18 @@ template <typename T> struct TypesCheck
 
   filter->SetVariadicInputs(in);
   filter->SetInput1(in);
-  filter->template SetVariadicInput<0>(in); // template keyword to avoid C++ parse ambiguity
+  filter->template SetVariadicInput<0>(in); // template keyword to
+                                            // avoid C++ parse
+                                            // ambiguity
+  auto res = filter->template GetVariadicInput<0>();
   filter->Update();
 
   // Test named input version
   struct tag{};
   using inputNames = std::tuple<tag>;
   auto filter1 = NewFunctorFilter<decltype(functor),inputNames>(functor);
-  filter1->template SetVNamedInput<tag>(in);
+  filter1->template SetVariadicNamedInput<tag>(in);
+  res = filter1->template GetVariadicNamedInput<tag>();
   filter1->Update();
   
   // Test with simple lambda
@@ -308,10 +312,10 @@ int otbFunctorImageFilter(int itkNotUsed(argc), char * itkNotUsed(argv) [])
   struct pan {};
   using Names = std::tuple<xs,pan>; 
    auto filterWithNames = otb::VariadicNamedInputsImageFilter<VectorImageType, Names, VectorImageType,ImageType>::New();
-   filterWithNames->SetVNamedInput<xs>(vimage);
-   filterWithNames->SetVNamedInput<pan>(image);
+   filterWithNames->SetVariadicNamedInput<xs>(vimage);
+   filterWithNames->SetVariadicNamedInput<pan>(image);
 
-   std::cout<<filterWithNames->GetVNamedInput<xs>()<< filterWithNames->GetVNamedInput<pan>()<<std::endl;
+   std::cout<<filterWithNames->GetVariadicNamedInput<xs>()<< filterWithNames->GetVariadicNamedInput<pan>()<<std::endl;
 
   
   
@@ -354,8 +358,8 @@ int otbFunctorImageFilter(int itkNotUsed(argc), char * itkNotUsed(argv) [])
   // Test FunctorImageFilter With VariadicAdd functor
   using AddFunctorType = Functor::VariadicAdd<double, double, double>;
   auto add = NewFunctorFilter(AddFunctorType{});
-  add->SetVInput<0>(image);
-  add->SetVInput<1>(image);
+  add->SetVariadicInput<0>(image);
+  add->SetVariadicInput<1>(image);
   add->Update();
 
   // Test FunctorImageFilter with BandExtraction functor
-- 
GitLab