VR-Forces 4.7 Class Documentation
 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 #include <vrvUtil/signalslib.h>
16 
19 #include <vrvUtil/DtUnicode.h>
20 
21 #include <vlpi/entityType.h>
22 
23 #include <boost/signal.hpp>
24 
25 class DtVrfTDLMessage;
26 
27 namespace makVrv
28 {
29  class DtDe;
30  class DtRecordSettingsBackupInterface;
31 }
32 
33 namespace makVrf
34 {
35  class DtTDLGenericNetworkMessage;
36  class DtExternalDataVisualHandlerCreatorInterface;
37 
39  {
40  public:
42  virtual ~DtVrfTDLMessageManager();
43 
45  static DtVrfTDLMessageManager& instance(makVrv::DtDe& de);
46 
48  static void registerInstance(makVrv::DtDe& de, DtVrfTDLMessageManager*);
49 
52  virtual void setProcessTDLMessages(bool);
53  virtual bool processTDLMessages() const;
54 
56  virtual void loadDefaults(bool fromFactory = false);
57 
59  virtual void saveAsDefaults();
60 
62  virtual void addTranslatedDomain(const std::string&, const makVrv::DtUnicode&);
63  virtual makVrv::DtUnicode domainTranslation(const std::string&) const;
64 
66  virtual void addDomain(const std::string&);
67  virtual const std::map<std::string, bool>& domains() const;
68 
70  virtual void setEntityTypeForDomain(const std::string&, const DtEntityType&);
71  virtual DtEntityType entityTypeForDomain(const std::string&) const;
72 
74  virtual void setShowDomain(const std::string&, bool);
75  virtual bool domainShown(const std::string&) const;
76 
78  virtual void addTranslatedProtocol(const std::string&, const makVrv::DtUnicode&);
79  virtual makVrv::DtUnicode protocolTranslation(const std::string&) const;
80 
83  virtual void addProtocol(const std::string&);
84  virtual const std::map<std::string, bool>& protocols() const;
85 
87  virtual void setShowProtocol(const std::string&, bool);
88  virtual bool protocolShown(const std::string&) const;
89 
91  virtual void setKeepReportsForTimePeriod(bool);
92  virtual bool keepReportsForTimePeriod() const;
93 
95  virtual void setKeepReportsForTime(int);
96  virtual int keepReportsForTime() const;
97 
98  const makVrv::DtRecordSettingsBackupInterface* settingsBackup() const
99  {
100  return mySettingsBackup;
101  }
102 
104  {
105  return mySettingsBackup;
106  }
107 
110  virtual void getSplitRecord(std::vector<DtVrfTDLSettingsRecord>& rec,
111  std::vector<std::string>& fileNames) {};
112 
115  virtual void addRecords(DtVrfTDLSettingsRecord& recs,
116  DtVrfTDLSettingsRecord& combinedRec) {};
117 
120  virtual void setFromRecord(const DtVrfTDLSettingsRecord& rec, bool updateFilter = true);
121 
122  virtual void getRecord(DtVrfTDLSettingsRecord& rec) const;
123 
125  void exportSettings(const std::string& fileName);
126 
128  void importSettings(const std::string& fileName);
129 
130  virtual void setAutoSave(bool);
131  virtual bool autoSave() const;
132 
134  virtual void addShowTDLMessagesForForce(int);
135  virtual void removeShowTDLMessagesForForce(int);
136  virtual void setShowTDLMessagesForForce(const std::set<int>&);
137  virtual const std::set<int>& showTDLMessagesForForce() const;
138 
140  virtual bool showTDLMessagesForForce(int) const;
141 
145  virtual void setCanShowNumberOfSymbolDecorations(int);
146  virtual int canShowNumberOfSymbolDecorations() const;
147 
149  virtual void setTimeout(int);
150  virtual int timeout() const;
151 
154  virtual void setFlushDataRate(double);
155  virtual double flushDataRate() const;
156 
158  virtual void setFilterTDLMessagesByForce(bool);
159 
160  virtual bool filterTDLMessagesByForce() const;
161 
164  virtual void addTDLMessageDataVisualHandler(const std::string& s, DtExternalDataVisualHandlerCreatorInterface*);
165 
166  virtual void removeTDLMessageDataVisualHandler(const std::string& s);
167 
168  virtual bool headingIndicatorEnabled() const;
169  virtual void enableHeadingIndicator(bool b);
170 
171  virtual bool timeSinceLastReportEnabled() const;
172  virtual void enableTimeSinceLastTeport(bool b);
173 
174  virtual bool tdlLineEnabled(int) const;
175  virtual void enableTDLLine(int, bool b);
176 
178  virtual void setShowTrackHistories(bool);
179  virtual bool showTrackHistories() const;
180 
182  virtual void setShowTrackHistoriesForSelected(bool);
183  virtual bool showTrackHistoriesForSelected() const;
184 
186  virtual void setNumberOfTrackReports(int);
187  virtual int numberOfTrackReports() const;
188 
189  boost::signal<void (const DtVrfTDLSettingsRecord&)> signal_tdlOptionsChanged;
190  boost::signal<void (const DtVrfTDLSettingsRecord&)> signal_tdlForceOptionsChanged;
191  boost::signal<void (const std::string&)> signal_protocolAdded;
192  boost::signal<void (const std::string&, bool)> signal_protocolShown;
193 
194  boost::signal<void (const std::string&)> signal_domainAdded;
195  boost::signal<void (const std::string&, bool)> signal_domainShown;
196 
199 
201  boost::signal<void (int)> signal_numberOfTrackReportsChanged;
202 
204  boost::signal<void (bool)> signal_keepReportsForTimePeriodChanged;
205 
207  boost::signal<void (int)> signal_keepReportsForTimeChanged;
208 
209 
210  protected:
211 
212  virtual void slot_observerModeAdded(int);
213 
215  virtual void setTrackHistoriesVisible(bool);
216 
218  virtual void enableMessageProcessing();
219  virtual void disableMessageProcessing();
220 
222  virtual void setup();
223 
225  virtual void slot_tdlMessageReceived(const DtTDLGenericNetworkMessage&);
226 
227  virtual void setupVariableTDLSymbolDecorations(int numDec);
228 
229  protected:
234  std::map<std::string, makVrv::DtUnicode> myTranslatedProtocols;
235  std::map<std::string, makVrv::DtUnicode> myTranslatedDomains;
236  std::map<std::string, DtEntityType> myEntityTypeForDomain;
237 
239  };
240 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)