VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
remoteComponentAttachmentManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
12 #include <vl/globalObjectDesignator.h>
13 
16 
18 #include <set>
19 
23 #include "vrfutil/rwUUID.h"
24 
25 class DtVrfObjectManager;
26 class DtFilename;
27 class DtVrfObject;
30 
34 {
35 protected:
38 
39 public:
40 
41  typedef std::set<DtUUID> RecentArrivalsMap;
42  typedef RecentArrivalsMap::iterator ArrivalIterator;
43  typedef RecentArrivalsMap::const_iterator const_ArrivalIterator;
44 
46  {
47  Remove = -1,
48  NotReady = 0,
49  Ready
50  };
51 
52 public:
53 
56 
59 
60 public:
61 
63  virtual void addRecentArrival(DtVrfObject *pVrfObj);
64 
66  virtual void attach(const DtRemoteConfigurationMapEntry& entry,
67  DtVrfObject& obj);
68 
70  virtual bool isRemoteComponentAttachment(const DtUUID&) const;
71 
74  virtual DtRemoteConfigurationMapper* attachmentRules();
75  virtual const DtRemoteConfigurationMapper* attachmentRules() const;
77 
81  void setBuilderCreatorFcn(DtRemoteComponentConfigurationBuilder::CreatorFcn fcn);
83 
86  virtual void clear();
87 
93  virtual DtRemoteConfigurationMapper* createAttachmentRules(const char* pReaderWriterName);
94 
96  virtual void clearRecentArrivals();
97 
103  virtual EvaluationReadinessState checkReadinessCriteria(DtVrfObject& obj);
104 
110  virtual bool checkRejectionCriteria(DtVrfObject& obj);
111 
113  virtual void destroyAttachmentRules();
114 
117  virtual void evaluateAndAttach(DtVrfObject& obj);
118 
120  virtual bool initialize(const DtFilename& fromFile);
121 
124  virtual void processRemoveFromArrivals(DtVrfObject* pVrfObj);
125  virtual void processRemoveFromArrivals(const DtUUID&);
127 
129  virtual void resetAllReflectedObjectsToNonVrfSimulated();
130 
132  virtual void resetReflectedObjectToNonVrfSimulated(DtVrfObject *pVrfObj);
133 
135  virtual void tick();
136 
139  DtTime tickRate() const;
140  void setTickRate(DtTime interval);
142 
144  DtVrfObjectManager* vrfObjectManager();
145  const DtVrfObjectManager* vrfObjectManager() const;
146 
147 public:
148 
150  virtual void processVrfObjectToBeRemoved(DtVrfObject* pVrfObject);
151 
154  static void vrfObjectToBeRemovedCallback(DtVrfObject* pVrfObject, void* pUsr);
155 
156 protected:
157 
161  virtual void doWork();
162 
163 protected:
164 
167 
170 
173 
181 
185 
188 
191 
194 
197 
198 
199 private:
203 };
204 
206 {
208 }
209 
211 {
213 }
214 
217 

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)