25 #ifndef WMODULEINPUTFORWARDDATA_H
26 #define WMODULEINPUTFORWARDDATA_H
32 #include "../common/WLogger.h"
33 #include "WModuleInputData.h"
34 #include "WModuleOutputData.h"
41 template<
typename T >
48 typedef std::shared_ptr< WModuleInputForwardData< T > >
SPtr;
53 typedef std::shared_ptr< const WModuleInputForwardData< T > >
ConstSPtr;
101 virtual void forward( std::shared_ptr< WModuleConnector > to )
103 m_out->connect( to );
111 virtual void unforward( std::shared_ptr< WModuleConnector > to )
113 m_out->disconnect( to );
125 static PtrType create( std::shared_ptr< WModule > module, std::string name =
"", std::string description =
"" );
137 static PtrType createAndAdd( std::shared_ptr< WModule > module, std::string name =
"", std::string description =
"" );
143 std::shared_ptr< WModuleOutputData< T > >
m_out;
152 virtual void notifyDataChange( std::shared_ptr<WModuleConnector> input, std::shared_ptr<WModuleConnector> output )
177 template <
typename T >
180 std::string description )
185 template <
typename T >
188 std::string description )
191 module->addConnector( c );
std::shared_ptr< WModuleConnector > SPtr
Shared pointer to this class.
virtual void notifyConnectionClosed(std::shared_ptr< WModuleConnector > here, std::shared_ptr< WModuleConnector > there)
Gets called whenever a connection between a remote and local connector gets closed.
Class offering an instantiate-able data connection between modules.