X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FBase%2FEvents.h;h=c92c4dbc3051593f8e27cd15759510b110f6c40a;hb=52c34a2aded47a2a3ce068887d9e4eeaf671568b;hp=b7b9f4ed32118ee53296c94cfa3df7bd5c91b670;hpb=9622bd5b833a8845881003228207e0caca59b081;p=FrontAlgorithms.git diff --git a/lib/fpa/Base/Events.h b/lib/fpa/Base/Events.h index b7b9f4e..c92c4db 100644 --- a/lib/fpa/Base/Events.h +++ b/lib/fpa/Base/Events.h @@ -127,6 +127,66 @@ namespace fpa { return( new EndEvent< N >( ) ); } }; + /** + */ + template< class N > + class BacktrackingEvent + : public BaseEvent< N > + { + public: + BacktrackingEvent( ) + : BaseEvent< N >( ) + { } + BacktrackingEvent( const N& n, const unsigned long& id ) + : BaseEvent< N >( n ), + BackId( id ) + { } + virtual ~BacktrackingEvent( ) + { } + const char* GetEventName( ) const + { return( "fpa::Base::BacktrackingEvent" ); } + bool CheckEvent( const itk::EventObject* e ) const + { + return( + dynamic_cast< const BacktrackingEvent< N >* >( e ) != NULL + ); + } + itk::EventObject* MakeObject( ) const + { return( new BacktrackingEvent< N >( ) ); } + + unsigned long BackId; + }; + + /** + */ + template< class N > + class EndBacktrackingEvent + : public BaseEvent< N > + { + public: + EndBacktrackingEvent( ) + : BaseEvent< N >( ) + { } + EndBacktrackingEvent( const unsigned long& id ) + : BaseEvent< N >( ), + BackId( id ) + { } + virtual ~EndBacktrackingEvent( ) + { } + const char* GetEventName( ) const + { return( "fpa::Base::EndBacktrackingEvent" ); } + bool CheckEvent( const itk::EventObject* e ) const + { + return( + dynamic_cast< const EndBacktrackingEvent< N >* >( e ) != NULL + ); + } + itk::EventObject* MakeObject( ) const + { return( new EndBacktrackingEvent< N >( ) ); } + + unsigned long BackId; + }; + } // ecapseman } // ecapseman