+++ /dev/null
-#ifndef __CPPLUGINS__PORT__H__
-#define __CPPLUGINS__PORT__H__
-
-#include <cpPlugins/DataObject.h>
-
-namespace cpPlugins
-{
- /**
- */
- class cpPlugins_EXPORT Port
- {
- public:
- typedef Port Self;
-
- public:
- Port( );
- virtual ~Port( );
- Self& operator=( DataObject* obj );
- Self& operator=( const Self& other );
-
- bool IsValid( ) const;
-
- // This could be seen as a pointer to DataObject's
- inline DataObject* GetPointer( )
- { return( this->m_Data.GetPointer( ) ); }
- inline const DataObject* GetPointer( ) const
- { return( this->m_Data.GetPointer( ) ); }
- inline DataObject* operator->( ) const
- { return( this->m_Data.GetPointer( ) ); }
-
- inline void SetPointer( DataObject* ptr )
- { this->m_Data = ptr; }
-
- protected:
- cpPlugins::DataObject::Pointer m_Data;
- };
-
- /**
- */
- class cpPlugins_EXPORT InputPort
- : public Port
- {
- public:
- typedef InputPort Self;
- typedef Port Superclass;
-
- public:
- InputPort( bool required = false );
- virtual ~InputPort( );
- Self& operator=( DataObject* obj );
- Self& operator=( const Superclass& other );
-
- bool IsRequired( ) const;
- void RequiredOn( );
- void RequiredOff( );
- void SetRequired( bool required );
-
- protected:
- bool m_Required;
- };
-
- /**
- */
- class cpPlugins_EXPORT OutputPort
- : public Port
- {
- public:
- typedef OutputPort Self;
- typedef Port Superclass;
-
- public:
- OutputPort( );
- virtual ~OutputPort( );
- Self& operator=( DataObject* obj );
- Self& operator=( const Superclass& other );
- };
-
-} // ecapseman
-
-#endif // __CPPLUGINS__PORT__H__
-
-// eof - $RCSfile$