MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ambImpBase.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2010 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
10 
11 #include "rtiMsConfig.h"
12 
13 #include <vlutil/vlTime.h>
14 #include <vlutil/vlSmartPointers.h>
15 
16 #include <vector>
17 
18 class DtRtiAmbassadorObserver;
20 class DtFedAmbWrapper;
21 class DtFederateMgr;
22 class DtConnectionMgr;
23 class DtObjectMgr;
24 class DtInteractionMgr;
25 class DtFomClassMgr;
26 class DtRIDParameters;
28 class DtAssistantPrinter;
29 #ifndef DT_NO_PLUGINS
30 class DtRtiPluginManager;
31 #endif
32 
33 namespace MAKRti
34 {
35  class DtString;
36  class DtFilePrinter;
37 }
38 
46 {
47 protected:
48 
51 
52 public:
53 
56 
57 private:
58 
61 
64 
65 public:
66 
67 
69  virtual void addObserver(MAKRti::DtString const& name, DtRtiAmbassadorObserver* observer);
70  virtual DtRtiAmbassadorObserver* removeObserver(MAKRti::DtString const& name);
71 
73  virtual void addFedAmbWrapper(MAKRti::DtString const& name, DtFedAmbWrapper* wrapper);
74  virtual DtFedAmbWrapper* removeFedAmbWrapper(MAKRti::DtString const& name);
75 
79 
80  virtual DtFederateMgr* validateIsJoined(const char* serviceCallName);
81  virtual const DtFederateMgr* validateIsJoined(const char* serviceCallName) const;
83 
88  virtual bool enterServiceCall(const MAKRti::DtString& serviceCallName);
89 
91  virtual void exitServiceCall(const MAKRti::DtString& serviceCallName);
92 
94  virtual bool isConnected() const;
95 
97  virtual DtRIDParameters* params();
98 
101  virtual DtFederateMgr* validatedFedMgr();
102 
105  virtual DtFederateMgr* nakedFedMgr();
106 
109  virtual DtConnectionMgr* validatedConnectMgr();
110 
113  virtual DtConnectionMgr* nakedConnectMgr();
114 
117  virtual DtObjectMgr* objMgr();
118 
121  virtual DtInteractionMgr* interMgr();
122 
125  virtual DtFomClassMgr* fomMgr();
126 
128  virtual DtRtiAmbObserverList* observers();
129 
131  virtual const DtRtiAmbObserverList* observers() const;
132 
135  virtual void enableLogging();
136 
138  virtual DtBoost::shared_ptr< MAKRti::DtFilePrinter > logPrinter();
139 
140  unsigned long flags() const;
141 
142 protected:
143 
148  DtImmediateCallbacks = 0,
150  DtDefaultModel
151  };
152 
154  virtual void setupConnection(const std::vector<MAKRti::DtString>& rid,
155  DtProcessingModelOverride processingModelOverride = DtDefaultModel);
156 
161  virtual bool completeConnection(MAKRti::DtString& errorMessage);
162 
164  virtual void clearConnection();
165  virtual void clearManagers();
166 
168  virtual void shutdown();
169 
172  virtual bool performMulticastDiscovery();
173 
175  virtual void printDisabledService( const MAKRti::DtString & service );
176 
179  virtual unsigned long incrementServiceCallCount();
180 
182  virtual bool tickOnce();
183 
185  virtual void throwInternalError(const MAKRti::DtString & errorMessage) const = 0;
186 
188  virtual void throwNotConnected(const MAKRti::DtString & errorMessage) const = 0;
189 
191  virtual void throwNotJoined(const MAKRti::DtString & errorMessage) const = 0;
192 
193 protected:
194 
197 
200 
203 
204 #ifndef DT_NO_PLUGINS
205 
207 #endif
208 
211 
214 
216  DtBoost::shared_ptr<DtRtiAssistantLrcClient> myAssistantClient;
217 
219  DtBoost::shared_ptr< MAKRti::DtFilePrinter > myLogPrinter;
220 
222  DtBoost::shared_ptr< DtAssistantPrinter > myAssistantPrinter;
223 
226 
228  MAKRti::DtClock myClock;
229 
230  unsigned long myFlags;
231 
233 };

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)