1 #ifndef __FPA__BASE__VECTORVALUESCONTAINER__H__
2 #define __FPA__BASE__VECTORVALUESCONTAINER__H__
5 #include <itkSimpleDataObjectDecorator.h>
6 #include <itkSmartPointer.h>
15 class VectorValuesContainer
16 : public itk::SimpleDataObjectDecorator< std::vector< T > >
19 typedef std::vector< T > TDecorated;
20 typedef VectorValuesContainer Self;
21 typedef itk::SimpleDataObjectDecorator< TDecorated > Superclass;
22 typedef itk::SmartPointer< Self > Pointer;
23 typedef itk::SmartPointer< const Self > ConstPointer;
26 typedef typename TDecorated::iterator Iterator;
27 typedef typename TDecorated::const_iterator ConstIterator;
31 itkTypeMacro( VectorValuesContainer, itkSimpleDataObjectDecorator );
34 void PushBack( const T& v )
35 { this->Get( ).push_back( v ); this->Modified( ); }
36 void PopBack( const T& v )
37 { this->Get( ).pop_back( ); this->Modified( ); }
39 { return( this->Get( ).begin( ) ); }
41 { return( this->Get( ).end( ) ); }
42 ConstIterator Begin( ) const
43 { return( this->Get( ).begin( ) ); }
44 ConstIterator End( ) const
45 { return( this->Get( ).end( ) ); }
48 VectorValuesContainer( )
51 virtual ~VectorValuesContainer( )
55 // Purposely not implemented
56 VectorValuesContainer( const Self& other );
57 Self& operator=( const Self& other );
64 #endif // __FPA__BASE__VECTORVALUESCONTAINER__H__