MAK RTIspy API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
federationsViewMgr.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef federationsViewMgr_H_
7 #define federationsViewMgr_H_
8 
11 
12 #include "rtiMsConfig.h"
13 #include "assistantMgr.h"
14 #include "assistantInfo.h"
16 #include "forwarderInfo.h"
17 #include <QtGui/QWidget>
18 #include <vlutil/vlSmartPointers.h>
19 
21 class DtRtiAssistantPeer;
25 class DtAssistantInfo;
39 class DtAssistantLogMsg;
44 class QSignalMapper;
47 class DtSyncPtDialog;
48 class DtRIDParameters;
49 class DtWidgetDialog;
50 class DtRidWidget;
51 
56 {
57  Q_OBJECT
58 
59 public:
60 
62  DtAssistantFederationsViewMgr(DtBoost::shared_ptr<DtRtiAssistantServer> server,
63  DtBoost::shared_ptr<DtRtiAssistantPeer> peer,
64  DtAssistantSignalRouter& signalRouter,
65  DtBoost::shared_ptr<DtAssistantComponentMgr> compMgr,
66  DtBoost::shared_ptr<DtAssistantConnectionInfoMgr> connInfoMgr,
67  DtBoost::shared_ptr<DtAssistantFederationsInfoMgr> fedInfoMgr,
68  DtBoost::shared_ptr<DtAssistantNetworkCompInfoMgr> netCompInfoMgr,
69  const MAKRti::DtFilename& configDir);
70 
73 
74 private:
75 
80 
81 public:
82 
84  virtual void tick();
85 
87  virtual void startShutdown();
88 
90  virtual bool dialogsVisible() const;
91 
93  void saveGuiState();
94 
97 
98 
100  static void processExecObserveRspMsg( const DtAssistantExecObserveRspMsg& msg, void* usr );
101 
103  virtual void processExecObserveRspMsg( const DtAssistantExecObserveRspMsg& msg );
104 
106  static void processRtiexecNotifyMsg( const DtAssistantNotifyMsg& msg, void* usr );
107 
109  virtual void processRtiexecNotifyMsg( const DtAssistantNotifyMsg& msg );
110 
112  static void processAwaitingForwardersMsg( const DtAssistantAwaitingForwardersMsg& msg, void* usr );
113 
115  virtual void processAwaitingForwardersMsg( const DtAssistantAwaitingForwardersMsg& msg );
117 
118  // Ported from federationsViewMgr
120  static void processRidParamMsg( const DtAssistantRidParamsMsg& msg, void* usr );
121 
123  virtual void processRidParamMsg( const DtAssistantRidParamsMsg& msg );
124 
125 
126 protected:
127 
129  virtual void processConnectionRemoval( const DtRtiConnectionInfoDataPair& conn );
130 
132  void logConnectionInfo(std::ofstream& fileStrm);
133 
135  void logFederationInfo(std::ofstream& fileStrm);
136 
138  void logFomInfo(std::ofstream& fileStrm, const std::list<MAKRti::DtString>* foms);
139 
141  void logFederateInfo(std::ofstream& fileStrm, const DtFederateInfoByHandleMap* federates,
142  const DtAssistantForwarderInfo* fwInfo);
143 
147  {
151  MAKRti::DtString federation;
152  unsigned federateHdl;
153  };
154 
157  void showRidDialog(const QString& name, const DtAssistantInfo& assistant,
158  int compId);
159 
161  void createRidDialog(const QString& name, DtCompRidParamDispStruct& dispInfo);
162 
164  void updateRidParams(const DtAssistantInfo& assistant, int compId,
165  const MAKRti::DtString& params, const MAKRti::DtString& filename,
166  const MAKRti::DtString& federation, unsigned federateHdl);
167 
169  virtual void updatePeerForwarders(
172 
174  virtual void updateRtiexecCompInfo(
175  const DtAssistantNetworkCompInfo* newInfo,
176  const DtAssistantNetworkCompInfo* oldInfo);
177 
179  virtual void updateFederateCompInfo(
182  const DtFederationStateByNameMap* federationMap);
183 
186  virtual void updateUnclassifiedComps(
187  const DtAssistantNetworkCompInfoList* newInfo,
188  const DtAssistantNetworkCompInfoList* oldInfo);
189 
190 public slots:
191 
193  void showFederationsView();
194 
196  virtual void sendLogRequest();
197 
199  void shutdownRtiexec();
200 
202  void shutdownRtiForwarder();
203 
205  void processForwarderAdded( const DtRtiConnectionInfo& conn );
206 
208  void processForwarderConnUpdated( const DtRtiConnectionInfo& conn );
209 
211  void processForwarderUpdated( const DtRtiConnectionInfo& conn );
212 
214  void processForwarderRemoved( const DtRtiConnectionInfo& conn );
215 
218  void processDoNotWaitForForwarders(QWidget* dlg);
219 
222  void processShutDownWaitingForwarder(QWidget* dlg);
223 
224  // Ported from federationsViewMgr
225 
227  void changeViewedConnection( const DtRtiConnectionInfo& conn =
229 
231  void resignFederate( int, const QString& );
232 
234  void destroyFederation( const QString& );
235 
237  void sendNetworkTestingEnableMsg( const QString& fedexName );
238 
240  void sendNetworkTestingDisableMsg( const QString& fedexName );
241 
243  void showLatencyTestDialog( const QString& fedexName, int fedHandle );
244 
246  void processFederationUpdate(const DtRtiConnectionInfo& conn,
247  const MAKRti::DtString& federationName);
248 
250  void processFederationRemoved(const DtRtiConnectionInfo& conn,
251  const MAKRti::DtString& federationName);
252 
254  void processFederateUpdated(const DtRtiConnectionInfo& conn,
255  const MAKRti::DtString& federationName,
256  unsigned federateHandle);
257 
259  void processFederateRemoved(const DtRtiConnectionInfo& conn,
260  const MAKRti::DtString& federationName,
261  unsigned federateHandle);
262 
264  void removeLoadingIndication(const DtRtiConnectionInfo& conn);
265 
267  void saveToLog();
268 
270  void processConnectionsUpdate( const DtRtiConnectionAndConfiguration& conns );
271 
273  void processConnectionsRemoval( const DtRtiConnectionAndConfiguration& conns );
274 
276  void showFederationsViewPreferences();
277 
279  void processFederateSelection(const MAKRti::DtString& federation,
280  int federate);
281 
283  void processRtiexecSelection();
284 
286  void processForwarderSelection(const MAKRti::DtString& fwName);
287 
289  void processPeerForwarderSelection(const MAKRti::DtString& fwName);
290 
292  void processFederationSelection(const MAKRti::DtString& federation);
293 
295  void processLightweightNodeSelection();
296 
298  void showSyncPtDialog(const MAKRti::DtString& federation);
299 
301  void showFederateStatsDialog(const MAKRti::DtString& federation, int federateHandle);
302 
304  void showFomDialog(const MAKRti::DtString& federation, int federateHandle);
305 
307  void showRtiexecRidParams();
308 
310  void showForwarderRidParams();
311 
313  void showFederateRidParams(const MAKRti::DtString& federation, int federateHandle);
314 
316  void destroyRidParamDialog(QWidget* widget);
317 
319  void sendPendingRidRequest(const DtRtiConnectionInfo& connInfo,
320  const MAKRti::DtString& federationName, unsigned federateHdl,
321  const DtAssistantInfo& astnt, unsigned compId);
322 
324  void showRtiexecLog();
325 
327  void showForwarderLog();
328 
330  void showFederateLog(const MAKRti::DtString& federation, int federateHandle);
331 
333  void removeDefunctFederateFromMap(const MAKRti::DtString& federation, int federateHandle);
334 
335 signals:
336 
338  void aboutDialogRequested();
339 
341  void showPopup(const MAKRti::DtString&, const MAKRti::DtString&,
342  const MAKRti::DtString&);
343 
344  // ported from federationsViewMgr
346  void federateRemovalTimeChanged( float period );
347 
349  void showConfigDialog( DtPreferencesPage pageId );
350 
352  void showLrcLatencyTestDialog( int id );
353 
355  void showRtiexecLatencyTestDialog(
356  const DtRtiConnectionInfoDataPair& connInfo,
357  unsigned int federationHdl, const MAKRti::DtString& federationName,
358  unsigned int federateHdl);
359 
361  void showFederateStatsDialog(const DtRtiConnectionInfo& connInfo,
362  const MAKRti::DtString& federationName, unsigned int federateHdl);
363 
365  void showFomDialog(const DtRtiConnectionInfo& connInfo,
366  const MAKRti::DtString& federationName, unsigned int federateHdl);
367 
368 
370  void requestFederateLoc(const DtRtiConnectionInfo& connInfo,
371  const MAKRti::DtString& federationName, unsigned int federateHdl);
372 
374  void showLogFileDialog( int compId );
375 
377  void queryFederateInfo(const DtRtiConnectionInfo&,
378  const MAKRti::DtString&, unsigned, const DtAssistantFederateInfo**);
379 
380 protected:
381 
382  typedef std::map< DtRtiConnectionInfo, DtAssistantInfoSet > DtConnectionToObserversMap;
383 
385  DtBoost::shared_ptr<DtAssistantComponentMgr> myCompMgr;
386 
388  DtBoost::shared_ptr<DtAssistantConnectionInfoMgr> myConnInfoMgr;
389 
391  DtBoost::shared_ptr<DtAssistantFederationsInfoMgr> myFedInfoMgr;
392 
394  DtBoost::shared_ptr<DtAssistantNetworkCompInfoMgr> myNetCompInfoMgr;
395 
398 
401 
404  std::set<std::pair<MAKRti::DtString, unsigned> > myLightweightFederates;
405 
408 
410  MAKRti::DtClock myClock;
411 
415 
419 
420  typedef std::map< DtRtiConnectionInfo, DtForwarderConnStatusDialog* > DtConnectionToFwStatusDialogMap;
423 
426 
429 
432  std::map<MAKRti::DtString, DtSyncPtDialog*> mySyncPtDialogs;
433 
435  QSignalMapper* myRidDialogSignalMapper;
436 
439  typedef std::pair<DtAssistantInfo, int> DtUniqueCompId;
440 
442  typedef std::map<DtUniqueCompId, DtCompRidParamDispStruct> DtRidParmDlgByComp;
443 
446 
448  std::list<DtCompRidParamDispStruct> myPendingFederateRidDialogs;
449 
452  static const int theUpdatePeriod;
453 
455  static const unsigned theMaxLogLoadSize;
456 
458  QString mySavedFile;
459 
460 };
461 
462 #endif
463 

Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)