VR-Link API Documentation for HLA 1.3
amoSR.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef amoSR_H_
7 #define amoSR_H_
8 
13 
14 #if DtTENA
15 
16 #include "stateRep.h"
17 #include <vlpi/entityIdentifier.h>
18 #include <vlutil/vlString.h>
19 #include <vector>
20 
21 
23 enum DtAmoApplicationStatus
24 {
25  DtAppStatusUnknown,
26  DtAppStatusInitializing,
27  DtAppStatusNormalRunning,
28  DtAppStatusWarning,
29  DtAppStatusCritical,
30  DtAppStatusFailure,
31  DtAppStatusPaused,
32  DtAppStatusStopped,
33  DtAppStatusShuttingDown
34 };
35 
36 
41 class DT_DLL_VL DtClassStatusRecord
42 {
43 public:
45  DtClassStatusRecord();
46 
48  virtual ~DtClassStatusRecord();
49 
51  DtClassStatusRecord(const DtClassStatusRecord& orig);
52 
54  DtClassStatusRecord& operator=(const DtClassStatusRecord& orig);
55 
57  virtual bool operator==(const DtClassStatusRecord& rhs) const;
58 
60  virtual bool operator!=(const DtClassStatusRecord& rhs) const;
61 
64  virtual void setObjectType(unsigned int objType);
65 
67  virtual unsigned int objectType() const;
68 
70  virtual void setCount(unsigned int count);
71 
73  virtual unsigned int count() const;
74 protected:
75  unsigned int myObjectType;
76  unsigned int myCount;
77 };
78 
83 class DT_DLL_VL DtAmoStateRepository : public DtStateRepository
84 {
85 public:
87  DtAmoStateRepository();
88 
90  virtual ~DtAmoStateRepository();
91 
93  DtAmoStateRepository(const DtAmoStateRepository& orig);
94 
96  DtAmoStateRepository& operator=(const DtAmoStateRepository& orig);
97 
99  virtual void setAmoId(const DtEntityIdentifier& id);
100 
102  virtual const DtEntityIdentifier& amoId() const;
103 
105  virtual void setName(const DtString& name);
106 
108  virtual const DtString& name() const;
109 
111  virtual void setVersion(const DtString& version);
112 
114  virtual const DtString& version() const;
115 
117  virtual void setHostName(const DtString& name);
118 
120  virtual const DtString& hostName() const;
121 
123  virtual void setHostIpAddress(unsigned long ip);
124 
126  virtual unsigned long hostIpAddress() const;
127 
129  virtual void setOperatorName(const DtString& name);
130 
132  virtual const DtString& operatorName() const;
133 
135  virtual void setOperatorTelephoneNumber(const DtString number);
136 
138  virtual const DtString& operatorTelephoneNumber() const;
139 
141  virtual void setNumberOfObjectsServed(unsigned long number);
142 
144  virtual unsigned long numberOfObjectsServed() const;
145 
147  virtual void setNumberOfProxies(unsigned long number);
148 
150  virtual unsigned long numberOfProxies() const;
151 
153  virtual void setStatus(DtAmoApplicationStatus status);
154 
156  virtual DtAmoApplicationStatus status() const;
157 
159  virtual void setNumberOfSubscribedClasses(int number);
160 
162  virtual int numberOfSubscribedClasses() const;
163 
165  virtual void setNumberOfPublishedClasses(int number);
166 
168  virtual int numberOfPublishedClasses() const;
169 
171  virtual void setSubscribedClass(unsigned int index, const DtClassStatusRecord& classRecord);
172 
175  virtual const DtClassStatusRecord& subscribedClass(unsigned int index) const;
176 
178  virtual void setPublishedClass(unsigned int index, const DtClassStatusRecord& classRecord);
179 
182  virtual const DtClassStatusRecord& publishedClass(unsigned int index) const;
183 
186  virtual void setUpdatePeriod(double period);
187 
189  virtual double updatePeriod() const;
190 
192  virtual void printData() const;
193 
195  virtual void printDataToStream(std::ostream& stream) const;
196 
198  virtual DtStateRepository* clone(bool copy) const;
199 
200 public:
201  static DtAmoStateRepository* create();
202 
203 
204 protected:
205  DtEntityIdentifier myAmoId;
206  DtString myName;
207  DtString myVersion;
208  DtString myHostName;
209  unsigned long myHostIpAddress;
210  DtString myOperatorName;
211  DtString myOperatorTelephoneNumber;
212  unsigned long myNumberOfObjectsServed;
213  unsigned long myNumberOfProxies;
214  DtAmoApplicationStatus myStatus;
215  std::vector<DtClassStatusRecord> mySubscribedClasses;
216  std::vector<DtClassStatusRecord> myPublishedClasses;
217  double myUpdatePeriod;
218 };
219 
220 
221 
222 #endif
223 #endif
224 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)