[Insight-users] HammingWindowFunction types (Wrapping Problem by creating *.cmake file)
Dan Mueller
dan.muel at gmail.com
Fri Jun 6 17:00:49 EDT 2008
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 <gaetan.lehmann at jouy.inra.fr>:
>
> 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
More information about the Insight-users
mailing list