1 // =========================================================================
2 // @author Leonardo Florez Valencia (florez-l@javeriana.edu.co)
3 // =========================================================================
4 #ifndef __fpa__Config__h__
5 #define __fpa__Config__h__
7 #include <fpa/fpa_export.h>
10 #if @Eigen3_FOUND@ == 1
12 #endif // @Eigen3_FOUND@ == 1
14 // -------------------------------------------------------------------------
15 #define fpaTraitsMacro( __t__ ) \
16 typedef __t__::TInternalTraits::TInputValue TInputValue; \
17 typedef __t__::TInternalTraits::TNeighborhood TNeighborhood; \
18 typedef __t__::TInternalTraits::TMark TMark; \
19 typedef __t__::TInternalTraits::TNode TNode; \
20 typedef __t__::TInternalTraits::TNodes TNodes; \
21 typedef __t__::TInternalTraits::TOutputValue TOutputValue; \
22 typedef __t__::TInternalTraits::TPoint TPoint; \
23 typedef __t__::TInternalTraits::TSeed TSeed; \
24 typedef __t__::TInternalTraits::TSeeds TSeeds; \
25 typedef __t__::TInternalTraits::TVertex TVertex
27 // -------------------------------------------------------------------------
28 #define fpaFilterInputMacro( __n__, __t__ ) \
30 unsigned int m_##__n__##Idx; \
32 __t__* Get##__n__( ) \
35 dynamic_cast< __t__* >( \
36 this->itk::ProcessObject::GetInput( \
37 this->m_##__n__##Idx \
40 const __t__* Get##__n__( ) const \
43 dynamic_cast< const __t__* >( \
44 this->itk::ProcessObject::GetInput( \
45 this->m_##__n__##Idx \
48 void Set##__n__( const __t__* i ) \
50 this->itk::ProcessObject::SetNthInput( \
51 this->m_##__n__##Idx, \
52 const_cast< __t__* >( i ) \
56 // -------------------------------------------------------------------------
57 #define fpaFilterInputConfigureMacro( __n__, __t__ ) \
58 this->m_##__n__##Idx = this->GetNumberOfRequiredInputs( ); \
59 this->itk::ProcessObject::SetNumberOfRequiredInputs( \
60 this->m_##__n__##Idx + 1 \
63 // -------------------------------------------------------------------------
64 #define fpaFilterOutputMacro( __n__, __t__ ) \
66 unsigned int m_##__n__##Idx; \
68 __t__* Get##__n__( ) \
71 dynamic_cast< __t__* >( \
72 this->itk::ProcessObject::GetOutput( \
73 this->m_##__n__##Idx \
76 const __t__* Get##__n__( ) const \
79 dynamic_cast< const __t__* >( \
80 this->itk::ProcessObject::GetOutput( \
81 this->m_##__n__##Idx \
85 // -------------------------------------------------------------------------
86 #define fpaFilterOutputConfigureMacro( __n__, __t__ ) \
87 this->m_##__n__##Idx = this->GetNumberOfRequiredOutputs( ); \
88 this->itk::ProcessObject::SetNumberOfRequiredOutputs( \
89 this->m_##__n__##Idx + 1 \
91 this->SetNthOutput( this->m_##__n__##Idx, __t__::New( ) )
93 #endif // __fpa__Config__h__