25 #ifndef WMODULECONNECTOR_H
26 #define WMODULECONNECTOR_H
31 #include <boost/shared_ptr.hpp>
32 #include <boost/thread.hpp>
33 #include <boost/signals2/signal.hpp>
34 #include <boost/signals2/connection.hpp>
35 #include <boost/bind.hpp>
38 #include "WModuleCombinerTypes.h"
39 #include "WModuleConnectorSignals.h"
59 typedef boost::shared_ptr< WModuleConnector >
SPtr;
64 typedef boost::shared_ptr< const WModuleConnector >
ConstSPtr;
73 WModuleConnector( boost::shared_ptr< WModule > module, std::string name=
"", std::string description=
"" );
85 boost::shared_ptr< WModule >
getModule()
const;
93 virtual void disconnect( boost::shared_ptr<WModuleConnector> con,
bool removeFromOwnList =
true );
110 virtual void connect( boost::shared_ptr<WModuleConnector> con );
122 bool isConnectedTo( boost::shared_ptr<WModuleConnector> con );
141 virtual boost::signals2::connection
subscribeSignal( MODULE_CONNECTOR_SIGNAL signal, t_GenericSignalHandlerType notifier );
162 const std::string
getName()
const;
177 void setName( std::string name );
186 virtual bool connectable( boost::shared_ptr<WModuleConnector> con ) = 0;
242 virtual void connectSignals( boost::shared_ptr<WModuleConnector> con );
260 virtual const t_GenericSignalHandlerType
getSignalHandler( MODULE_CONNECTOR_SIGNAL signal );
286 virtual void notifyConnectionClosed( boost::shared_ptr<WModuleConnector> here, boost::shared_ptr<WModuleConnector> there );
310 #endif // WMODULECONNECTOR_H