VR-Exchange 2.2 API Documentation
brokerInitializer.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2013 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <namespace.h>
13 #include <mtl/lispEnv.h>
14 #include <mtl/configVar.h>
15 #include <mtl/appSettings.h>
16 #include <vlutil/vlStringUtil.h>
17 #include <broker/objectFilter.h>
18 #include <mtl/multiVar.h>
19 #include <map>
20 
21 namespace MAKVrExchange
22 {
23 
27  //
38  class DT_DLL_BROKER DtBrokerInitializer
39  {
40  public:
41 
44  DtBrokerInitializer( int argc, char** argv, const char *version );
45 
47  virtual ~DtBrokerInitializer();
48 
50  DtBrokerInitializer& operator = ( const DtBrokerInitializer &other );
51 
52  private:
53 
56 
57  public:
58 
60  //
66  virtual void parseCmdLine();
67 
69  virtual void loadFile();
70  virtual void loadFile(const DtString& fileName );
71 
73  virtual void saveFile();
74  virtual void saveFile(const DtString& fileName );
75 
77  virtual DtString brokerName() const;
78 
80  virtual int notifyLevel() const;
81  virtual void setNotifyLevel(int nl);
82 
85  DtString logFileName() const;
86  virtual void setLogFileName( const DtString& lfn );
87 
90  DtString pluginDirectory() const;
91  virtual void setPluginDirectory( const DtString& lfn );
92 
94  virtual int maxControlMessages() const;
95  virtual void setMaxControlMessages(int mcm);
96 
98  virtual int maxInteractionMessages() const;
99  virtual void setMaxInteractionMessages(int mim);
100 
102  virtual int maxObjectMessages() const;
103  virtual void setMaxObjectMessages(int mom);
104 
107  virtual int pollingInterval() const;
108  virtual void setPollingInterval( int pi );
109 
111  virtual DtTime statisticsReportingInterval() const;
112  virtual void setStatisticsReportingInterval( DtTime si );
113 
115  virtual bool printStatistics() const;
116  virtual void setPrintStatistics( bool val );
117 
121  virtual int tcpPort() const;
122  virtual void setTcpPort(int port);
123 
126  virtual bool dumpEnvironment() const;
127  virtual void setDumpEnvironment(bool shouldDumpEnv);
128 
131  virtual DtString controlQueueName() const;
132  virtual DtString interactionQueueName() const;
133  virtual DtString objectQueueName() const;
134 
136  virtual bool oneToOneMapping() const;
137  virtual void setOneToOneMapping(bool val);
138 
145  virtual const std::vector<DtString>& debuggedTranslators() const;
146  virtual void addDebuggedTranslator(const DtString&);
147  virtual void removeDebuggedTranslator(const DtString&);
148  virtual void setDebuggedTranslators( const std::set<DtString>& debuggedSet );
149 
150 
157  virtual const std::vector<DtString>& disabledTranslatorSet() const;
158  virtual void addDisabledTranslator(const DtString&);
159  virtual void removeDisabledTranslator(const DtString&);
160  virtual void setDisabledTranslators( const std::set<DtString>& disabledSet );
161 
164  bool useGui() const;
165 
168  bool showConnectionInfoDialog() const;
169 
171  int& argc();
172 
174  char** argv();
175 
177  DtCmdLine::CmdLine& cmdLine();
178 
180  const std::vector<DtObjectFilter>& objectFilters() const;
181  virtual void setObjectFilters( const std::vector<DtObjectFilter>& filters );
182  virtual void addObjectFilter( const DtObjectFilter& filter );
183  virtual void removeObjectFilter( const DtObjectFilter& filter );
184 
186  DtString fileName() const;
187 
188  protected:
189 
190  DtConfigVariable<bool>* myShowInfoDialogFlag;
191 
192  DtConfigVariable<DtString>* myMtlFileName;
193  DtConfigVariable<DtString>* myCmdLineBrokerName;
194  DtConfigVariable<int>* myCmdLineTcpPort;
195  DtConfigVariable<int>* myCmdLineNotifyLevel;
196  DtConfigVariable<bool>* myCmdLineDumpEnvFlag;
197 
198  DtConfigVariable<bool>* myUseGuiFlag;
199  DtConfigVariable<DtString>* myLogFileName;
200  DtConfigVariable<DtString>* myPluginDirectory;
201  DtConfigVariable<DtString>* myControlQueueName;
202  DtConfigVariable<DtString>* myInteractionQueueName;
203  DtConfigVariable<DtString>* myObjectQueueName;
204  DtConfigVariable<bool>* myOneToOneTranslation;
205  DtConfigVariable<int>* myMaxControlMessages;
206  DtConfigVariable<int>* myMaxInterMessages;
207  DtConfigVariable<int>* myMaxObjectMessages;
208  DtConfigVariable<int>* myPollingInterval;
209  DtConfigVariable<DtTime>* myStatisticsReportingInterval;
210  DtConfigVariable<bool>* myPrintStatisticsFlag;
211  DtMultiConfigVariable<DtString>* myDebuggedTranslators;
212  DtMultiConfigVariable<DtString>* myDisabledTranslators;
213  DtMultiConfigVariable<DtObjectFilter>* myFilterManagerConfig;
214 
215  int myArgc;
216  char** myArgv;
219 
220  DtApplicationSettings mySettings;
221 
224  }; //end DtBrokerInitializer
225 
226 
227  inline const std::vector<DtObjectFilter>& DtBrokerInitializer::objectFilters() const
228  {
229  return myFilterManagerConfig->values();
230  }
231 
233  {
234  return myMtlFileName->value();
235  }
236 
237 }

Document ID: Generated on Mon Apr 15 17:15:50 EDT 2013 from SVN revision 126154
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)