[Insight-users] HammingWindowFunction types (Wrapping Problem by creating *.cmake file)

Yongqiang Zhao zhaoyq76 at live.com
Fri Jun 6 17:50:38 EDT 2008


Hi Dan,

Thanks!

I also found It worked if i replace ${ITKT_UI} in HammingWindowFunction with a constand value.

If it needs a constant float or double value in other class, what shall I do?

Yongqiang

----------------------------------------
> Date: Fri, 6 Jun 2008 23:00:49 +0200
> From: dan.muel at gmail.com
> To: zhaoyq76 at live.com
> Subject: Re: [Insight-users] HammingWindowFunction types (Wrapping Problem by creating *.cmake file)
> CC: insight-users at itk.org
> 
> Hi Yongqiang,
> 
> Here is the wrapping I use in ManagedITK (.NET wrappers for ITK based
> on WrapITK, though not using cableswig); it may help you...
> 
> # WindowedSincInterpolateImageFunction with HammingWindowFunction
> WRAP_CLASS("itk::HammingWindowedSincInterpolateImageFunction")
> 
>   SET(MANAGED_TYPE_TEMPLATE
> ${MANAGED_ITK_SOURCE_COMMON_PATH}/itkManagedImageFunction_TYPE.cxx.in)
>   SET(MANAGED_WRAPPER_TEMPLATE
> ${MANAGED_ITK_SOURCE_COMMON_PATH}/itkManagedImageFunction_WRAPPER.cxx.in)
> 
>   FOREACH(d ${WRAP_ITK_DIMS})
>     FOREACH(t ${WRAP_ITK_SCALAR})
>       FOREACH(r RANGE 4 5)
>         WRAP_TEMPLATE("${ITKM_I${t}${d}}R${r}" "${ITKT_I${t}${d}},${r}")
>       ENDFOREACH(r)
>     ENDFOREACH(t)
>   ENDFOREACH(d)
> 
> END_WRAP_CLASS()
> 
> 2008/6/6 Gaëtan Lehmann :
>>
>> Hi Yongqiang,
>>
>> I think that you are trying to pass some wrong template parameters for the
>> HammingWindowFunction types.
>> I can't help much though, because I have no idea about what is this class,
>> but someone else may be able to help much.
>>
>> Regards,
>>
>> Gaëtan
>>
>>
>>
>> Le 5 juin 08 à 23:06, Yongqiang Zhao a écrit :
>>
>>>
>>> Hi,
>>>
>>> I am trying to create wrap_itkWindowedSincInterpolateImageFunction.cmake
>>> file to wrap WindowedSincInterpolateImageFunction. The following is the
>>> file:
>>>
>>> SET(WRAPPER_AUTO_INCLUDE_HEADERS OFF)
>>> WRAP_INCLUDE("itkWindowedSincInterpolateImageFunction.h")
>>>
>>>
>>> WRAP_CLASS("itk::Function::HammingWindowFunction")
>>>  WRAP_TEMPLATE("${ITKM_UI}${ITKM_D}${ITKM_D}"
>>> "${ITKT_UI},${ITKT_D},${ITKT_D}")
>>> END_WRAP_CLASS()
>>>
>>> WRAP_CLASS("itk::WindowedSincInterpolateImageFunction" POINTER)
>>>  FOREACH(d ${WRAP_ITK_DIMS})
>>>   FOREACH(t ${WRAP_ITK_SCALAR})
>>>     WRAP_TEMPLATE("${ITKM_I${t}${d}}${ITKM_UI}HWFF${ITKM_UI}"
>>>  "${ITKT_I${t}${d}},${ITKT_UI}*,itk::Function::HammingWindowFunction,${ITKT_I${t}${d}},${ITKT_D}")
>>>   ENDFOREACH(t)
>>>  ENDFOREACH(d)
>>> END_WRAP_CLASS()
>>>
>>> From this file, we can get
>>> wrap_itkWindowedSincInterpolateImageFunction.cxx after ccmake:
>>>
>>> #include "itkCommand.h"
>>> #include "itkOffset.h"
>>> #include "itkVector.h"
>>> #include "itkCovariantVector.h"
>>> #include "itkContinuousIndex.h"
>>> #include "itkArray.h"
>>> #include "itkFixedArray.h"
>>> #include "itkRGBPixel.h"
>>> #include "itkImage.h"
>>> #include "itkVectorImage.h"
>>> #include "itkVariableLengthVector.h"
>>> #include "itkPoint.h"
>>> #include "itkLevelSetNode.h"
>>> #include "itkFlatStructuringElement.h"
>>> #include "itkSpatialObject.h"
>>> #include "itkWindowedSincInterpolateImageFunction.h"
>>>
>>>
>>> #ifdef CABLE_CONFIGURATION
>>> namespace _cable_
>>> {
>>>  const char* const group = "itkWindowedSincInterpolateImageFunction";
>>>  namespace wrappers
>>>  {
>>>
>>>     typedef itk::Function::HammingWindowFunction< unsigned
>>> int,double,double>::HammingWindowFunction itkHammingWindowFunctionUIDD;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image< signed
>>> short,2>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> signed short,2>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionISS2UIHWFFUI;
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image< signed
>>> short,2>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> signed short,2>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionISS2UIHWFFUI_Pointer;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> unsigned char,2>,unsigned
>>> int,itk::Function::HammingWindowFunction,itk::Image< unsigned
>>> char,2>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionIUC2UIHWFFUI;
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> unsigned char,2>,unsigned
>>> int,itk::Function::HammingWindowFunction,itk::Image< unsigned
>>> char,2>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionIUC2UIHWFFUI_Pointer;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> float,2>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> float,2>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionIF2UIHWFFUI;
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> float,2>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> float,2>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionIF2UIHWFFUI_Pointer;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image< signed
>>> short,3>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> signed short,3>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionISS3UIHWFFUI;
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image< signed
>>> short,3>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> signed short,3>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionISS3UIHWFFUI_Pointer;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> unsigned char,3>,unsigned
>>> int,itk::Function::HammingWindowFunction,itk::Image< unsigned
>>> char,3>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionIUC3UIHWFFUI;
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> unsigned char,3>,unsigned
>>> int,itk::Function::HammingWindowFunction,itk::Image< unsigned
>>> char,3>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionIUC3UIHWFFUI_Pointer;
>>>
>>>     typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> float,3>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> float,3>,double>::WindowedSincInterpolateImageFunction
>>> itkWindowedSincInterpolateImageFunctionIF3UIHWFFUI;
>>>
>>>   typedef itk::WindowedSincInterpolateImageFunction< itk::Image<
>>> float,3>,unsigned int,itk::Function::HammingWindowFunction,itk::Image<
>>> float,3>,double>::Pointer::SmartPointer
>>> itkWindowedSincInterpolateImageFunctionIF3UIHWFFUI_Pointer;
>>>
>>>  }
>>> void force_instantiate()
>>> {
>>>  using namespace _cable_::wrappers;
>>>
>>> }
>>>
>>> }
>>> #endif
>>>
>>>
>>> After "make", it showed many errors. The main errors are:
>>> type/value mismatch at argument 1 in template parameter list for 'template
>>> class itk::Function::HammingWindowFunction'
>>>
>>> /Insight-build/Wrapping/WrapITK/Modules/Interpolators/wrap_itkWindowedSincInterpolateImageFunction.cxx:26:
>>> error:   expected a constant of type 'unsigned int', got 'unsigned int'
>>>
>>> /Insight-build/Wrapping/WrapITK/Modules/Interpolators/wrap_itkWindowedSincInterpolateImageFunction.cxx:26:
>>> error: expected initializer before 'itkHammingWindowFunctionUIDD'
>>>
>>> Can anyone tell me how to fix them?
>>>
>>> Best regards,
>>> Yongqiang
>>> _________________________________________________________________
>>> Search that pays you back! Introducing Live Search cashback.
>>>
>>> http://search.live.com/cashback/?&pkw=form=MIJAAF/publ=HMTGL/crea=srchpaysyouback
>>> _______________________________________________
>>> Insight-users mailing list
>>> Insight-users at itk.org
>>> http://www.itk.org/mailman/listinfo/insight-users
>>
>> --
>> Gaëtan Lehmann
>> Biologie du Développement et de la Reproduction
>> INRA de Jouy-en-Josas (France)
>> tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
>> http://voxel.jouy.inra.fr  http://www.mandriva.org
>> http://www.itk.org  http://www.clavier-dvorak.org

_________________________________________________________________
Search that pays you back! Introducing Live Search cashback.
http://search.live.com/cashback/?&pkw=form=MIJAAF/publ=HMTGL/crea=srchpaysyouback


More information about the Insight-users mailing list