MAK RTIspy API Documentation for HLA Evolved
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 MAKRti::DtString& serviceCallName);
81  virtual const DtFederateMgr* validateIsJoined(const MAKRti::DtString& 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 
167  virtual void shutdown();
168 
171  virtual bool performMulticastDiscovery();
172 
174  virtual void printDisabledService( const MAKRti::DtString & service );
175 
178  virtual unsigned long incrementServiceCallCount();
179 
181  virtual bool tickOnce();
182 
184  virtual void throwInternalError(const MAKRti::DtString & errorMessage) const = 0;
185 
187  virtual void throwNotConnected(const MAKRti::DtString & errorMessage) const = 0;
188 
190  virtual void throwNotJoined(const MAKRti::DtString & errorMessage) const = 0;
191 
192 protected:
193 
196 
199 
202 
203 #ifndef DT_NO_PLUGINS
204 
206 #endif
207 
210 
213 
215  DtBoost::shared_ptr<DtRtiAssistantLrcClient> myAssistantClient;
216 
218  DtBoost::shared_ptr< MAKRti::DtFilePrinter > myLogPrinter;
219 
221  DtBoost::shared_ptr< DtAssistantPrinter > myAssistantPrinter;
222 
225 
227  MAKRti::DtClock myClock;
228 
229  unsigned long myFlags;
230 
232 };

Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)