VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
componentSystem.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2007 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: compSystem.h,v $ $Revision: 1.5 $ $State: Exp $
7 *******************************************************************************/
8 
11 
13 
14 #ifndef compSystem_h
15 #define compSystem_h
16 
18 #include <list>
19 #include <map>
20 #include <string>
21 
22 #include <matrix/vlVector.h>
23 
24 class DtVrfObject;
25 class DtSimManager;
28 class DtString;
29 class DtSimComponent;
33 class DtReaderWriter;
34 class DtCriticalSection;
35 
36 typedef DtReaderWriter* (*genericAttributeProviderFunctionType)(void*);
38 
44 {
45 private:
47 
50  DtComponentSystem& operator=(const DtComponentSystem& orig);
52 
53 public:
55  DtSimManager* simManager,
56  const DtComponentSystemDescriptor* desc,
57  DtComponentSystem* parentSystem);
58 
59  virtual ~DtComponentSystem();
60 
61  virtual bool init();
62 
69  virtual bool initializeFromDescriptor(int& priority, bool remoteOnly);
70 
72  virtual bool postAddComponentsInit();
73 
75  virtual void tick();
76 
79  virtual DtString name() const;
80 
84  virtual DtString fullName() const;
85 
88  virtual DtString printName() const;
89 
95  virtual void setPrintName(const DtString& name);
96 
98 
99  virtual DtSimComponentNetwork* componentNetwork();
100  virtual const DtSimComponentNetwork* componentNetwork() const;
102 
107  virtual DtComponentSystem* lookupSystem(const DtString& printName);
108 
115  virtual DtComponentSystem* lookupSystemFromRwName(const DtString& rwName);
116 
119  virtual void getSystemNames(std::list<std::string>& nameList) const;
120 
123 
126  virtual DtVrfProcessStateRepositoryManager* processStateRepositoryManager();
127 
130 
131  virtual DtSimResourceManager& resourceManager();
132  virtual const DtSimResourceManager& resourceManager() const;
134 
137  virtual void restoreResources();
138 
139  typedef std::list< std::pair<DtSimComponent*, DtString> > DtComponentPortList;
140 
141 
150 
151  virtual void resolveSystemOutput(const DtString& outputName, DtComponentPortList& componentOutputs);
152 
153  virtual void resolveSystemInput(const DtString& inputName, DtComponentPortList& componentInputs);
155 
156 
157 
159 
160  virtual void enable();
161  virtual void disable();
163 
167  virtual bool isEnabled();
168  virtual void setIsEnabled(bool yesNo);
170 
196  virtual bool addAttributeProviderFunction(DtString & attributeName,
197  genericAttributeProviderFunctionType attributeFunction,
198  void* controller);
199 
204  virtual bool addAttributeSetFunction(DtString& attributeName,
205  genericAttributeSetterFunctionType attributeFunction,
206  void* controller);
207 
216  virtual DtReaderWriter* getAttribute(const DtString& attributeName,
217  bool& error) const;
218 
226  virtual bool setAttribute(const DtString& attributeName,
227  DtReaderWriter* value);
228 
231  virtual std::list<std::string> getAllAttributeNames() const;
233 
234 protected:
236  virtual bool createPsr();
237 
239  void removeCompatibilityPsrs();
240 
241 protected:
248 
252 
254  std::map<DtString, std::pair<genericAttributeProviderFunctionType, void*> >
256  std::map<DtString, std::pair<genericAttributeSetterFunctionType, void*> >
258 
260  std::list< std::pair<DtString, DtVrfProcessStateRepositoryManager*> >
262 };
263 
264 typedef std::list<DtComponentSystem*> DtComponentSystemList;
265 
266 #endif

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)