VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfTDLMessageManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
14 
16 
19 #include <vrvUtil/DtUnicode.h>
20 
21 #include <vlpi/entityType.h>
22 
23 class DtVrfTDLMessage;
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtRecordSettingsBackupInterface;
29 }
30 
31 namespace makVrf
32 {
33  class DtTDLGenericNetworkMessage;
34  class DtExternalDataVisualHandlerCreatorInterface;
35 
36 
40  {
41  public:
43  virtual ~DtVrfTDLMessageManager();
44 
46  static DtVrfTDLMessageManager& instance(makVrv::DtDe& de);
47 
49  static void registerInstance(makVrv::DtDe& de, DtVrfTDLMessageManager*);
50 
53  virtual void setProcessTDLMessages(bool);
54  virtual bool processTDLMessages() const;
55 
57  virtual void loadDefaults(bool fromFactory = false);
58 
60  virtual void saveAsDefaults();
61 
63  virtual void addTranslatedDomain(const std::string&, const makVrv::DtUnicode&);
64  virtual makVrv::DtUnicode domainTranslation(const std::string&) const;
65 
67  virtual bool addDomain(const std::string&);
68  virtual const std::map<std::string, bool>& domains() const;
69 
71  virtual void addOrganizedLayer(const std::string&);
72 
74  virtual void setEntityTypeForDomain(const std::string&, const DtEntityType&);
75  virtual DtEntityType entityTypeForDomain(const std::string&) const;
76 
78  virtual void setShowDomain(const std::string&, bool);
79  virtual bool domainShown(const std::string&) const;
80 
82  virtual void addTranslatedProtocol(const std::string&, const makVrv::DtUnicode&);
83  virtual makVrv::DtUnicode protocolTranslation(const std::string&) const;
84 
87  virtual void addProtocol(const std::string&);
88  virtual const std::map<std::string, bool>& protocols() const;
89 
91  virtual void setShowProtocol(const std::string&, bool);
92  virtual bool protocolShown(const std::string&) const;
93 
95  virtual void setKeepReportsForTimePeriod(bool);
96  virtual bool keepReportsForTimePeriod() const;
97 
99  virtual void setKeepReportsForTime(int);
100  virtual int keepReportsForTime() const;
101 
103  {
104  return mySettingsBackup;
105  }
106 
108  {
109  return mySettingsBackup;
110  }
111 
114  virtual void getSplitRecord(std::vector<DtVrfTDLSettingsRecord>& rec,
115  std::vector<std::string>& fileNames) {};
116 
119  virtual void addRecords(DtVrfTDLSettingsRecord& recs,
120  DtVrfTDLSettingsRecord& combinedRec) {};
121 
124  virtual void setFromRecord(const DtVrfTDLSettingsRecord& rec, bool updateFilter = true);
125 
126  virtual void getRecord(DtVrfTDLSettingsRecord& rec) const;
127 
129  void exportSettings(const std::string& fileName);
130 
132  void importSettings(const std::string& fileName);
133 
134  virtual void setAutoSave(bool);
135  virtual bool autoSave() const;
136 
138  virtual void addShowTDLMessagesForForce(int);
139  virtual void removeShowTDLMessagesForForce(int);
140  virtual void setShowTDLMessagesForForce(const std::set<int>&);
141  virtual const std::set<int>& showTDLMessagesForForce() const;
142 
144  virtual bool showTDLMessagesForForce(int) const;
145 
149  virtual void setCanShowNumberOfSymbolDecorations(int);
150  virtual int canShowNumberOfSymbolDecorations() const;
151 
153  virtual void setTimeout(int);
154  virtual int timeout() const;
155 
158  virtual void setFlushDataRate(double);
159  virtual double flushDataRate() const;
160 
162  virtual void setFilterTDLMessagesByForce(bool);
163 
164  virtual bool filterTDLMessagesByForce() const;
165 
168  virtual void addTDLMessageDataVisualHandler(const std::string& s, DtExternalDataVisualHandlerCreatorInterface*);
169 
170  virtual void removeTDLMessageDataVisualHandler(const std::string& s);
171 
172  virtual bool headingIndicatorEnabled() const;
173  virtual void enableHeadingIndicator(bool b);
174 
175  virtual bool timeSinceLastReportEnabled() const;
176  virtual void enableTimeSinceLastTeport(bool b);
177 
178  virtual bool tdlLineEnabled(int) const;
179  virtual void enableTDLLine(int, bool b);
180 
182  virtual void setShowTrackHistories(bool);
183  virtual bool showTrackHistories() const;
184 
186  virtual void setShowTrackHistoriesForSelected(bool);
187  virtual bool showTrackHistoriesForSelected() const;
188 
190  virtual void setNumberOfTrackReports(int);
191  virtual int numberOfTrackReports() const;
192 
193  boost::signals2::signal<void (const DtVrfTDLSettingsRecord&)> signal_tdlOptionsChanged;
194  boost::signals2::signal<void (const DtVrfTDLSettingsRecord&)> signal_tdlForceOptionsChanged;
195  boost::signals2::signal<void (const std::string&)> signal_protocolAdded;
196  boost::signals2::signal<void (const std::string&, bool)> signal_protocolShown;
197 
198  boost::signals2::signal<void (const std::string&)> signal_domainAdded;
199  boost::signals2::signal<void (const std::string&, bool)> signal_domainShown;
200 
202  boost::signals2::signal<void (bool)> signal_showTrackHistoryForSelectedItemsChanged;
203 
205  boost::signals2::signal<void (int)> signal_numberOfTrackReportsChanged;
206 
208  boost::signals2::signal<void (bool)> signal_keepReportsForTimePeriodChanged;
209 
211  boost::signals2::signal<void (int)> signal_keepReportsForTimeChanged;
212 
213  protected:
215  virtual void setupOrganizedLayers();
216 
217  virtual void slot_observerModeAdded(int);
218 
220  virtual void setTrackHistoriesVisible(bool);
221 
223  virtual void enableMessageProcessing();
224  virtual void disableMessageProcessing();
225 
227  virtual void setup();
228 
230  virtual void slot_tdlMessageReceived(const DtTDLGenericNetworkMessage&);
231 
232  virtual void setupVariableTDLSymbolDecorations(int numDec);
233 
234  virtual void slot_organizedCategoriesInitialized();
235 
236  protected:
241  std::map<std::string, makVrv::DtUnicode> myTranslatedProtocols;
242  std::map<std::string, makVrv::DtUnicode> myTranslatedDomains;
243  std::map<std::string, DtEntityType> myEntityTypeForDomain;
244 
246  };
247 }
boost::signals2::signal< void(const DtVrfTDLSettingsRecord &)> signal_tdlForceOptionsChanged
Definition: vrfTDLMessageManager.h:194
makVrv::DtRecordSettingsBackupInterface * mySettingsBackup
Definition: vrfTDLMessageManager.h:239
Definition: vrfTDLSettingsRecord.h:26
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
makVrv::DtDe & myDe
Definition: vrfTDLMessageManager.h:245
boost::signals2::signal< void(const DtVrfTDLSettingsRecord &)> signal_tdlOptionsChanged
Definition: vrfTDLMessageManager.h:193
DtVrfTDLSettingsRecord myTDLSettings
Definition: vrfTDLMessageManager.h:240
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
makVrv::DtSignalConnectionManager myTDLConnectionManager
Definition: vrfTDLMessageManager.h:238
virtual void getSplitRecord(std::vector< DtVrfTDLSettingsRecord > &rec, std::vector< std::string > &fileNames)
To support writing element definitions in folders as multiple files not implemented.
Definition: vrfTDLMessageManager.h:114
boost::signals2::signal< void(int)> signal_numberOfTrackReportsChanged
Sent when when the number of track reports to store have changed.
Definition: vrfTDLMessageManager.h:205
boost::signals2::signal< void(const std::string &)> signal_domainAdded
Definition: vrfTDLMessageManager.h:198
boost::signals2::signal< void(bool)> signal_showTrackHistoryForSelectedItemsChanged
Sent when whether or not track history for selected items have changed.
Definition: vrfTDLMessageManager.h:202
Contains makVrv::DtVirtualBaseClass class.
virtual void addRecords(DtVrfTDLSettingsRecord &recs, DtVrfTDLSettingsRecord &combinedRec)
To support writing element definitions in folders as multiple files not implemented.
Definition: vrfTDLMessageManager.h:119
Definition: tdlGenericNetworkMessage.h:20
boost::signals2::signal< void(const std::string &, bool)> signal_protocolShown
Definition: vrfTDLMessageManager.h:196
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
boost::signals2::signal< void(int)> signal_keepReportsForTimeChanged
Sent when when the time to keep reports has changed. Only sent if keeping reports for time period...
Definition: vrfTDLMessageManager.h:211
Definition: vrfTDLMessageManager.h:39
Definition: vrfTDLMessage.h:54
makVrv::DtSignalConnectionManager myConnections
Definition: vrfTDLMessageManager.h:237
boost::signals2::signal< void(const std::string &)> signal_protocolAdded
Definition: vrfTDLMessageManager.h:195
makVrv::DtRecordSettingsBackupInterface * settingsBackup()
Definition: vrfTDLMessageManager.h:107
std::map< std::string, DtEntityType > myEntityTypeForDomain
Definition: vrfTDLMessageManager.h:243
Base class to provide boost signal/slot management.
boost::signals2::signal< void(const std::string &, bool)> signal_domainShown
Definition: vrfTDLMessageManager.h:199
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
boost::signals2::signal< void(bool)> signal_keepReportsForTimePeriodChanged
Sent when when the way to time out reports have changed.
Definition: vrfTDLMessageManager.h:208
The makVrv::DtRecordSettingsBackupInterface provides an interface to record-based backups...
Definition: DtRecordSettingsBackup.h:24
std::map< std::string, makVrv::DtUnicode > myTranslatedProtocols
Definition: vrfTDLMessageManager.h:241
std::map< std::string, makVrv::DtUnicode > myTranslatedDomains
Definition: vrfTDLMessageManager.h:242
Definition: externalDataVisualHandlerInterface.h:78
const makVrv::DtRecordSettingsBackupInterface * settingsBackup() const
Definition: vrfTDLMessageManager.h:102

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)