29 #ifndef _MIRA_FRAMEWORK_INCLUDE_FW_REMOTE_INTERNAL_REMOTECONNECTIONPOOL_H_ 30 #define _MIRA_FRAMEWORK_INCLUDE_FW_REMOTE_INTERNAL_REMOTECONNECTIONPOOL_H_ 32 #include <unordered_map> 42 class RemoteOutgoingConnectionBase;
43 class RemoteIncomingConnection;
44 class RemoteConnection;
45 struct KnownFramework;
47 class RemoteConnectionPool;
69 template<typename Reflector>
72 r.delegate(mRemoteConnection);
101 template <
typename SerializerTag>
RemoteConnectionProxy()
Definition: RemoteConnectionPool.h:57
Information and settings for a known remote framework.
Definition: RemoteConnection.h:80
void reflect(Reflector &r)
Definition: RemoteConnectionPool.h:70
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:78
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67
RemoteConnection * operator->()
Definition: RemoteConnectionPool.h:76
Provides type trait that indicates whether a type should be serialized "transparently".
A proxy object that represents a connection.
Definition: RemoteConnectionPool.h:53
RemoteConnection & operator*()
Definition: RemoteConnectionPool.h:79
bool operator==(const RemoteConnection *other) const
Definition: RemoteConnectionPool.h:90
std::vector< std::unique_ptr< RemoteConnection > > mStoppedConnections
Connections for which no RemoteConnectionProxy exists anymore (awaiting deletion).
Definition: RemoteConnectionPool.h:160
RemoteConnectionProxy createRemoteIncomingConnection()
Function that constructs a RemoteIncomingConnection, stores that connection in mRemoteConnections and...
const RemoteConnection * operator->() const
Definition: RemoteConnectionPool.h:75
Base class of connections between frameworks.
Definition: RemoteConnection.h:276
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:143
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:155
Owner of every RemoteConnection.
Definition: RemoteConnectionPool.h:115