VR-Exchange 2.4 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
tenaBroker.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2015 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <tenaBroker/dllExport.h>
13 
14 #include <broker/broker.h>
16 
18 #include <tenaBroker/throttle.h>
19 
20 #include <vlutil/vlStringUtil.h>
21 #include <vlutil/vlString.h>
22 #include <vlutil/vlTime.h>
23 
24 #include <list>
25 #include <map>
26 
27 namespace MAKVrExchange
28 {
29 
30  class DtBrokerObject;
31  class DtPortalReflectedObject;
32 
33  namespace DtTenaBroker
34  {
35 
36  class DtExerciseConn;
37  class DtEntityIdMapper;
38  class DtGenericUserInterface;
39  class DtTenaBrokerInitializer;
40 
44  };
45 
52  {
53  public:
54 
57  static DtBroker* create( DtBrokerInitializer* init );
58 
60  virtual ~DtTenaBroker();
61 
62  protected:
63 
65  DtTenaBroker();
66 
67  public:
68 
72  virtual void tick();
73 
76  virtual void reloadBrokerSettings();
77 
79  virtual DtTenaBrokerInitializer* tenaInitializer();
80 
82  virtual bool fillOutgoingIds() const;
83 
85  virtual bool usePersistentIds() const;
86 
88  virtual bool forceUpdateFlag() const;
89 
91  virtual bool guiseIsEntityType() const;
92 
95  virtual bool useTenaObjectIdForMarkingText() const;
96 
100  virtual bool useMarkingTextForTenaObjectId() const;
101 
104  virtual bool generateFirePduForIndirectFire() const;
105 
113  virtual bool dumpGuiToText() const;
114 
122  virtual bool debugGlobalIdMapping() const;
123 
124  virtual DtGlobalIdMapper* globalIdMapper();
125  virtual const DtGlobalIdMapper* globalIdMapper() const;
126 
127  virtual DtEntityIdMapper* entityIdMapper();
128 
129  virtual DtThrottle* throttle();
130 
137  virtual DtTime simTime() const;
138 
142  virtual DtString portalNameFind( const DtString& name ) const;
143 
145  virtual DtExerciseConn* connection() const;
146 
150  static void setGlobalIdMapperCreator( DtGlobalIdMapperCreator func );
151 
154  static DtGlobalIdMapperCreator globalIdMapperCreator();
155 
156  protected:
157 
164  virtual void initialize( DtTenaBrokerInitializer* init );
165 
167  virtual void setupTranslators( DtTenaBrokerInitializer* init );
168 
170  virtual void logBrokerSettings( DtTenaBrokerInitializer* init );
171 
173  virtual void shutdownBroker();
174 
176  virtual void initTenaConnection( const DtTenaBrokerInitializer& init );
177 
179  virtual void initializeTenaBroker();
180 
182  virtual void initPortalNameMapper( const DtFilename& mapFile );
183 
184  private:
185 
187  DtTenaBroker( const DtTenaBroker& other );
188 
190  DtTenaBroker& operator = ( const DtTenaBroker& other );
191 
192  protected:
193 
195 
197 
201 
202  std::map<DtString,DtString> myPortalNameMapper;
203  DtExerciseConn* myExConn;
204 
205  };
206 
207 
209  {
210  return myGlobalIdMapper;
211  }
212 
214  {
215  return myGlobalIdMapper;
216  }
217 
219  {
220  return myEntityIdMapper;
221  }
222 
224  {
225  return &myThrottle;
226  }
227 
228  inline DtExerciseConn* DtTenaBroker::connection() const
229  {
230  return myExConn;
231  }
232 
233  }
234 }

Document ID: Generated on Thu Jul 23 10:25:22 EDT 2015 from SVN revision 155065
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)