16 #ifndef TORC_GENERIC_CONNECTABLE_HPP
17 #define TORC_GENERIC_CONNECTABLE_HPP
24 #include <boost/signals2.hpp>
25 #ifdef GENOM_SERIALIZATION
26 #include <boost/serialization/access.hpp>
27 #include <boost/serialization/is_abstract.hpp>
28 #endif //GENOM_SERIALIZATION
32 namespace torc {
namespace generic {
class Net; } }
45 #ifdef GENOM_SERIALIZATION
46 friend class boost::serialization::access;
47 #endif //GENOM_SERIALIZATION
57 typedef boost::signals2::signal<void(const NetSharedPtr&)>
Connected;
62 typedef boost::signals2::signal<void(const NetSharedPtr&)>
Disconnected;
81 virtual void getConnectedNets(std::vector<NetSharedPtr>& outNets,
bool inSkipChildConnections =
82 false)
const throw (
Error);
116 void disconnect(const std::
string& inName) throw (Error);
155 #ifdef GENOM_SERIALIZATION
156 template <
class Archive>
void serialize(Archive& ar,
unsigned int);
157 #endif //GENOM_SERIALIZATION
181 #ifdef GENOM_SERIALIZATION
183 #endif // GENOM_SERIALIZATION
184 #endif // TORC_GENERIC_CONNECTABLE_HPP
virtual Connection connect(const NetSharedPtr &inNet)=0
Connected & signalNetConnected()
Connected mSigNetConnected
An object that is connectable to a Net.
Disconnected & signalNetDisconnected()
std::list< NetSharedPtr >::iterator Connection
std::list< NetSharedPtr > mConnectedNets
Disconnected mSigNetDisconnected
virtual void disconnect()
The Error object thrown by different methods of EdifOM.
virtual void getConnectedNets(std::vector< NetSharedPtr > &outNets, bool inSkipChildConnections=false) const
boost::shared_ptr< Net > NetSharedPtr
boost::signals2::signal< void(const NetSharedPtr &)> Disconnected
boost::signals2::signal< void(const NetSharedPtr &)> Connected
virtual void onDisconnect()