10 #ifndef lgrSimInterface_H_
11 #define lgrSimInterface_H_
19 #include <vlutil/vlString.h>
20 #include <vlutil/vlTime.h>
28 class DtLgrSimCommandFactory;
29 class DtLgrPacketFilter;
58 virtual DtString protocolName() const;
61 virtual
void connect() const;
65 bool allowDrainInput,
bool allowSetSimTime,
bool allowUnsubscribe) const;
68 virtual
void disconnect() const;
71 virtual
void getLoggerName(DtString& name) const = 0;
74 virtual
bool isConnected() const;
77 virtual
void setDumpFilename(const DtString&);
80 virtual
bool processRemoteControls() const;
84 virtual
bool recordRemoteControls() const;
87 virtual
bool allowAllRemoteControls() const;
90 virtual
bool allowRemoteDelete() const;
93 virtual
int remoteControlId() const;
96 virtual
bool sendResponses() const;
99 virtual
bool crippleGui() const;
102 virtual
bool useLegacyPdu() const;
105 virtual DtTime connectSendInterval() const;
108 virtual DtTime heartbeatSendInterval() const;
111 virtual
bool useSimChannel() const;
114 virtual
bool useBackChannel() const;
117 virtual const DtString& backChannelAddress() const;
120 virtual
int backChannelPort() const;
123 virtual const DtString& backChannelInterface() const;
126 virtual
void setRemoteControlSettings(
bool useSimChannel,
bool useBackChannel,
bool record,
127 bool allowDelete,
bool allowAll,
bool sendResponses,
bool crippleGui,
bool useLegacyPdu,
128 DtTime connectSendInterval, DtTime heartbeatSendInterval) const;
131 virtual
void addFilteredEntityName(const DtString& name) const;
134 virtual
void clearFilteredEntityNames() const;
152 virtual
int filterCount() const;
159 virtual
void setScaleAttributes(
bool scale) const;
162 virtual
bool scaleAttributes() const;
165 virtual
bool networkActivity() const;
168 virtual
void setSaveConnectionConfiguration(
bool saveConnectConfig) const;
171 virtual
bool saveConnectConfiguration() const;
174 virtual
void setSaveIndexConfiguration(
bool saveIndexConfig) const;
177 virtual
bool saveIndexConfiguration() const;
180 virtual
void setSaveProtocolConfiguration(
bool saveProtocolConfig) const;
183 virtual
bool saveProtocolConfiguration() const;
186 virtual
void setListenWhenIdle(
bool listen) const;
189 virtual
bool listenWhenIdle() const;
192 virtual
bool staticDROnPause() const;
195 virtual
void setStaticDROnPause(
bool staticDRAlgorithm) const;
207 virtual
void addTemporaryTrackedEntity(const DtString& name) const;
210 virtual
bool connectionSettingsMatchInputFile( DtString& filename);
213 virtual
void useRecommendedSettings();
216 virtual EntityTrackerUpdateId entityTrackerUpdateId() const;
239 void connectResponseHandlers();
248 void updatedEntityTracker(DtResponse response);
249 void connected(DtResponse);
250 void disconnected(DtResponse);
251 void unableToConnect(DtResponse);
252 void lostConnection(DtResponse);
253 void filterAdded(DtResponse);
254 void filterRemoved(DtResponse);
255 void filterModified(DtResponse);
256 void remoteControlsChanged(DtResponse);
257 void activityChanged(DtResponse);
258 void scaleAttributesChanged(DtResponse);
259 void remoteControlIdChanged(DtResponse);
260 void backChannelConnectionChanged(DtResponse);
261 void saveConnectConfigurationChanged(DtResponse response);
262 void saveIndexConfigurationChanged(DtResponse response);
263 void saveProtocolConfigurationChanged(DtResponse response);
264 void listenWhenIdleChanged(DtResponse response);
265 void staticDROnPauseChanged(DtResponse response);
270 bool myConnectedFlag;
271 bool myFailedConnectFlag;
273 bool myRecordRemoteControls;
274 bool myAllowAllRemoteControls;
275 bool myAllowRemoteDelete;
276 bool mySendResponses;
279 bool myUseSimChannel;
280 bool myUseBackChannel;
281 bool mySaveConnectConfiguration;
282 bool mySaveIndexConfiguration;
283 bool mySaveProtocolConfiguration;
284 bool myListenWhenIdle;
285 bool myStaticDROnPause;
286 DtString myBackChannelAddress;
287 DtString myBackChannelInterface;
288 int myBackChannelPort;
289 DtTime myConnectSendInterval;
290 DtTime myHeartbeatSendInterval;
292 bool myScaleAttributes;
294 DtString myDumpFilename;
296 FilterTypeList myFilterList;
298 int myEntityTrackerUpdateId;
299 int myRemoteControlId;