15 #include <lcRemoteLoggerConnection.h>
17 #include <vlutil/vlString.h>
18 #include <vlpi/entityIdentifier.h>
19 #include <vlutil/vlInetSocket.h>
28 class DtEntityIdentifier;
29 class DtLgrAcknowledgePdu;
30 class DtLgrConnectPdu;
31 class DtLgrDisconnectPdu;
32 class DtLgrLgrHeartbeatPdu;
33 class DtLgrResponsePdu;
34 class DtLgrTotalStatePdu;
42 class DtRemoteControlDomainInterface;
43 class DtRemoteControlSystemInterface;
44 class DtRemoteControlPlaybackInterface;
45 class DtRemoteControlRecordInterface;
46 class DtRemoteControlEditorInterface;
47 class DtRemoteControlSimulationInterface;
93 virtual void setConnection(
DtExerciseConn* exconn,
const DtEntityIdentifier& entityId);
96 virtual void setConnection(
const DtEntityIdentifier&
id, DtInetSocket* socket);
100 virtual void clearConnection();
103 virtual void disconnect(
const DtEntityIdentifier& entityId);
110 virtual void setId(
const DtEntityIdentifier&
id );
111 virtual const DtEntityIdentifier& id()
const;
116 virtual void setAcceptAnyId(
bool acceptAny);
117 virtual bool acceptAnyId()
const;
122 virtual DtTime connectionTimeout()
const;
123 virtual void setConnectionTimeout(DtTime val);
128 virtual DtTime acknowledgeTimeout()
const;
129 virtual void setAcknowledgeTimeout(DtTime val);
134 virtual void setNumberOfLoggers(
int numberOfLoggersToManage);
135 virtual int numberOfLoggers()
const;
139 virtual void getConnectionIds(
DtEntityIdSet& connectedLoggers)
const;
142 virtual void getConnectionIds(
DtEntityIdSet& connectedLoggers,
143 const DtEntityIdentifier& idFilter)
const;
146 virtual int numberConnections()
const;
149 virtual DtRemoteLoggerConnection* getConnection(
const DtEntityIdentifier&
id);
152 virtual DtTime lowestTime()
const;
155 virtual DtTime highestTime()
const;
172 const DtEntityIdentifier& target=theWildcardAddress);
181 const DtEntityIdentifier& target=theWildcardAddress);
188 const DtEntityIdentifier& target=theWildcardAddress);
197 const DtEntityIdentifier& target=theWildcardAddress);
242 static const DtEntityIdentifier& wildcardAddress();
245 static const char* commandToString(
int domain,
int command);
247 const DtRemoteLoggerMap& getMyRemoteLoggerMap()
const;
255 virtual void processControlPdus();
258 virtual void processBackChannel();
261 virtual void checkConnections();
264 virtual bool isIdMatching(
const DtEntityIdentifier& targetId,
bool allowWildCard=
true);
271 virtual void processTotalState(DtLgrTotalStatePdu* totalStatePdu);
272 virtual void processConnect(DtLgrConnectPdu* connectPdu);
273 virtual void processDisconnect(DtLgrDisconnectPdu* disconnectPdu);
274 virtual void processLgrHeartbeat(DtLgrLgrHeartbeatPdu* lgrHeartbeatPdu);
275 virtual void processAcknowledge(DtLgrAcknowledgePdu* acknowledgePdu);
276 virtual void processResponse(DtLgrResponsePdu* responsePdu);
283 virtual void commandRejected(
const DtEntityIdentifier& source,
DtSequenceNumber sequenceNumber);
354 static const DtU16 theAddressWildcard = ((1<<16)-1);