7 #ifndef __FWDATA_NODE_HPP__ 8 #define __FWDATA_NODE_HPP__ 10 #include "fwData/config.hpp" 11 #include "fwData/factory/new.hpp" 12 #include "fwData/Object.hpp" 13 #include "fwData/Port.hpp" 17 fwCampAutoDeclareDataMacro((
fwData)(Node), FWDATA_API);
46 FWDATA_API
virtual ~
Node();
49 FWDATA_API
void addInputPort(const ::fwData::Port::sptr& port);
52 FWDATA_API
void addOutputPort(const ::fwData::Port::sptr& port);
55 FWDATA_API PortContainer& getInputPorts();
58 FWDATA_API PortContainer& getOutputPorts();
61 FWDATA_API
void setObject(const ::fwData::Object::sptr&
object );
64 FWDATA_API ::fwData::Object::sptr getObject()
const;
74 FWDATA_API Port::sptr findPort(
const std::string& _identifier,
bool _modeInput)
const;
77 FWDATA_API
void shallowCopy(
const Object::csptr& _source )
override;
80 FWDATA_API
void cachedDeepCopy(
const Object::csptr& _source, DeepCopyCacheType& cache)
override;
102 #endif // __FWDATA_NODE_HPP__ Key class used to restrict access to Object construction. See http://www.drdobbs.com/184402053.
This class defines a node. A node is represented by input and output ports.
std::vector< ::fwData::Port::sptr > PortContainer
Port container.
::fwData::Object::sptr m_object
node object
::fwCom::Signal< void() > UpdatedSignalType
Type of 'updated' signal.
static FWDATA_APIconst::fwCom::Signals::SignalKeyType s_UPDATED_SIG
Updated signal key.
#define fwCoreClassDefinitionsWithFactoryMacro(_classinfo_, _parameters_, _factory_)
Generate common construction methods for classes with one factory.
PortContainer m_outputs
Output port container.
Base class for each data object.
UpdatedSignalType::sptr m_sigUpdated
Updated signal.
Contains the representation of the data objects used in the framework.
PortContainer m_inputs
Input port container.