48 #ifndef _MIRA_FRAMEWORK_INCLUDE_FW_REMOTE_INTERNAL_REMOTECONNECTIONPOOL_H_ 49 #define _MIRA_FRAMEWORK_INCLUDE_FW_REMOTE_INTERNAL_REMOTECONNECTIONPOOL_H_ 51 #include <unordered_map> 61 class RemoteOutgoingConnectionBase;
62 class RemoteIncomingConnection;
63 class RemoteConnection;
64 struct KnownFramework;
66 class RemoteConnectionPool;
88 template<typename Reflector>
91 r.delegate(mRemoteConnection);
120 template <
typename SerializerTag>
RemoteConnectionProxy()
Definition: RemoteConnectionPool.h:76
Information and settings for a known remote framework.
Definition: RemoteConnection.h:80
void reflect(Reflector &r)
Definition: RemoteConnectionPool.h:89
Connection classes representing connections between frameworks.
Type trait that indicates whether a type should be serialized "transparently", i.e.
Definition: IsTransparentSerializable.h:81
void releaseStoppedConnections()
Clears mStoppedConnections to destroy the RemoteConnection objects.
const RemoteConnection & operator*() const
Definition: RemoteConnectionPool.h:97
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67
RemoteConnection * operator->()
Definition: RemoteConnectionPool.h:95
Provides type trait that indicates whether a type should be serialized "transparently".
A proxy object that represents a connection.
Definition: RemoteConnectionPool.h:72
RemoteConnection & operator*()
Definition: RemoteConnectionPool.h:98
bool operator==(const RemoteConnection *other) const
Definition: RemoteConnectionPool.h:109
std::vector< std::unique_ptr< RemoteConnection > > mStoppedConnections
Connections for which no RemoteConnectionProxy exists anymore (awaiting deletion).
Definition: RemoteConnectionPool.h:179
RemoteConnectionProxy createRemoteIncomingConnection()
Function that constructs a RemoteIncomingConnection, stores that connection in mRemoteConnections and...
const RemoteConnection * operator->() const
Definition: RemoteConnectionPool.h:94
Base class of connections between frameworks.
Definition: RemoteConnection.h:277
bool valid() const
RemoteConnectionProxy is valid if its RemoteConnectionPool and RemoteConnection pointers are valid an...
boost::recursive_mutex mConnectionsMutex
Mutex for access to mRemoteConnections and mStoppedConnections.
Definition: RemoteConnectionPool.h:162
friend void swap(RemoteConnectionProxy &a, RemoteConnectionProxy &b)
void stopConnection(RemoteConnection *connection)
Moves the ownership for a connection from mRemoteConnections to mStoppedConnections.
RemoteConnectionProxy createRemoteOutgoingConnection(const KnownFramework &address)
Function that constructs a RemoteOutgoingConnection, stores that connection in mRemoteConnections and...
std::set< RemoteConnection * > mRemoteConnections
Connections for which a RemoteConnectionProxy exists.
Definition: RemoteConnectionPool.h:174
Owner of every RemoteConnection.
Definition: RemoteConnectionPool.h:134