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__( __t__* i ) \
50 this->itk::ProcessObject::SetNthInput( this->m_##__n__##Idx, i ); \
53 // -------------------------------------------------------------------------
54 #define fpaFilterInputConfigureMacro( __n__, __t__ ) \
55 this->m_##__n__##Idx = this->GetNumberOfRequiredInputs( ); \
56 this->itk::ProcessObject::SetNumberOfRequiredInputs( \
57 this->m_##__n__##Idx + 1 \
60 // -------------------------------------------------------------------------
61 #define fpaFilterOutputMacro( __n__, __t__ ) \
63 unsigned int m_##__n__##Idx; \
65 __t__* Get##__n__( ) \
68 dynamic_cast< __t__* >( \
69 this->itk::ProcessObject::GetOutput( \
70 this->m_##__n__##Idx \
73 const __t__* Get##__n__( ) const \
76 dynamic_cast< const __t__* >( \
77 this->itk::ProcessObject::GetOutput( \
78 this->m_##__n__##Idx \
82 // -------------------------------------------------------------------------
83 #define fpaFilterOutputConfigureMacro( __n__, __t__ ) \
84 this->m_##__n__##Idx = this->GetNumberOfRequiredOutputs( ); \
85 this->itk::ProcessObject::SetNumberOfRequiredOutputs( \
86 this->m_##__n__##Idx + 1 \
88 this->SetNthOutput( this->m_##__n__##Idx, __t__::New( ) )
90 #endif // __fpa__Config__h__