19 #ifndef itkFastMarchingBase_h
20 #define itkFastMarchingBase_h
101 template<
typename TInput,
typename TOutput >
169 itkSetMacro( TopologyCheck, TopologyCheckType );
170 itkGetConstReferenceMacro( TopologyCheck, TopologyCheckType );
174 itkSetObjectMacro( TrialPoints, NodePairContainerType );
175 itkGetModifiableObjectMacro(TrialPoints, NodePairContainerType );
179 itkSetObjectMacro( AlivePoints, NodePairContainerType );
180 itkGetModifiableObjectMacro(AlivePoints, NodePairContainerType );
184 itkSetObjectMacro( ProcessedPoints, NodePairContainerType );
185 itkGetModifiableObjectMacro(ProcessedPoints, NodePairContainerType );
189 itkSetObjectMacro( ForbiddenPoints, NodePairContainerType );
190 itkGetModifiableObjectMacro(ForbiddenPoints, NodePairContainerType );
194 itkSetObjectMacro( StoppingCriterion, StoppingCriterionType );
195 itkGetModifiableObjectMacro(StoppingCriterion, StoppingCriterionType );
198 itkGetMacro( SpeedConstant,
double );
199 itkSetMacro( SpeedConstant,
double );
202 itkGetMacro( NormalizationFactor,
double );
203 itkSetMacro( NormalizationFactor,
double );
206 itkGetMacro( TargetReachedValue, OutputPixelType );
212 itkSetMacro(CollectPoints,
bool);
215 itkGetConstReferenceMacro(CollectPoints,
bool);
216 itkBooleanMacro(CollectPoints);
270 virtual unsigned char
271 GetLabelValueForGivenNode(
const NodeType& iNode )
const = 0;
276 virtual void SetLabelValueForGivenNode(
const NodeType& iNode,
307 void GenerateData()
override;
310 void PrintSelf(std::ostream & os,
Indent indent)
const override;
314 #ifndef ITK_MANUAL_INSTANTIATION
315 #include "itkFastMarchingBase.hxx"
typename Traits::LabelType LabelType
NodePairContainerPointer m_ProcessedPoints
typename StoppingCriterionType::Pointer StoppingCriterionPointer
typename Traits::NodeType NodeType
typename Traits::NodePairContainerConstIterator NodePairContainerConstIterator
double m_NormalizationFactor
NodePairContainerPointer m_AlivePoints
typename Traits::OutputPixelType OutputPixelType
OutputPixelType m_LargeValue
std::vector< NodePairType > HeapContainerType
typename Traits::InputDomainType InputDomainType
typename Traits::NodePairType NodePairType
std::greater< NodePairType > NodeComparerType
TopologyCheckType m_TopologyCheck
OutputPixelType m_TopologyValue
FastMarchingStoppingCriterionBase< TInput, TOutput > StoppingCriterionType
typename Traits::SuperclassType SuperclassType
typename Traits::OutputDomainPointer OutputDomainPointer
Abstract class to solve an Eikonal based-equation using Fast Marching Method.
typename FastMarchingTraits< TInput, TOutput >::SuperclassType Superclass
SizeValueType IdentifierType
typename Traits::NodePairContainerType NodePairContainerType
StoppingCriterionPointer m_StoppingCriterion
std::priority_queue< NodePairType, HeapContainerType, NodeComparerType > PriorityQueueType
NodePairContainerPointer m_TrialPoints
typename Traits::InputPixelType InputPixelType
typename Traits::InputDomainPointer InputDomainPointer
NodePairContainerPointer m_ForbiddenPoints
Control indentation during Print() invocation.
Base class traits to be used by the FastMarchingBase.
typename Traits::OutputDomainType OutputDomainType
OutputPixelType m_TargetReachedValue
typename Traits::NodePairContainerPointer NodePairContainerPointer