#include <deque>
#include <set>
+#include <map>
#include <itkConceptChecking.h>
#include <itkFunctionBase.h>
#include <fpa/Base/Functors/RegionGrow/BinaryThreshold.h>
typedef std::deque< TNode > TQueue;
typedef std::set< TInputValue > TThresholds;
+ typedef std::pair< TInputValue, unsigned long > TSignalData;
+ typedef std::map< TFrontId, TSignalData > TSignal;
typedef fpa::Base::Functors::RegionGrow::BinaryThreshold< TInputValue > TPredicate;
public:
void SetThresholds(
const TInputValue& init,
const TInputValue& end,
- unsigned long number_of_thresholds
+ const TInputValue& delta
);
protected:
virtual void _BeforeGenerateData( ) override;
virtual void _AfterGenerateData( ) override;
- virtual TOutputValue _ComputeOutputValue( const TNode& n ) override;
+ virtual void _FinishOneLoop( ) override;
+ virtual void _ComputeOutputValue( TNode& n ) override;
+ virtual void _UpdateOutputValue( TNode& n ) override;
virtual void _QueueClear( ) override;
virtual TNode _QueuePop( ) override;
virtual void _QueuePush( const TNode& node ) override;
protected:
typename TPredicate::Pointer m_Predicate;
TThresholds m_Thresholds;
+ typename TThresholds::const_iterator m_CurrentThreshold;
TQueue m_Queues[ 2 ];
unsigned int m_CurrentQueue;
+ unsigned long m_Count;
+ TSignal m_Signal;
TOutputValue m_InsideValue;
};