VR-Link API Documentation for HLA 1.3
amoSR.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 #ifndef amoSR_H_
00007 #define amoSR_H_
00008 
00013 
00014 #if DtTENA
00015 
00016 #include "stateRep.h"
00017 #include <vlpi/entityIdentifier.h>
00018 #include <vlutil/vlString.h>
00019 #include <vector>
00020 
00021 
00023 enum DtAmoApplicationStatus
00024 {
00025    DtAppStatusUnknown,
00026    DtAppStatusInitializing,
00027    DtAppStatusNormalRunning,
00028    DtAppStatusWarning,
00029    DtAppStatusCritical,
00030    DtAppStatusFailure,
00031    DtAppStatusPaused,
00032    DtAppStatusStopped,
00033    DtAppStatusShuttingDown
00034 };
00035 
00036 
00041 class DT_DLL_VL DtClassStatusRecord
00042 {
00043 public:
00045    DtClassStatusRecord();
00046 
00048    virtual ~DtClassStatusRecord();
00049 
00051    DtClassStatusRecord(const DtClassStatusRecord& orig);
00052 
00054    DtClassStatusRecord& operator=(const DtClassStatusRecord& orig);
00055 
00057    virtual bool operator==(const DtClassStatusRecord& rhs) const;
00058 
00060    virtual bool operator!=(const DtClassStatusRecord& rhs) const;
00061 
00064    virtual void setObjectType(unsigned int objType);
00065 
00067    virtual unsigned int objectType() const;
00068 
00070    virtual void setCount(unsigned int count);
00071 
00073    virtual unsigned int count() const;
00074 protected:
00075    unsigned int myObjectType;
00076    unsigned int myCount;
00077 };
00078 
00083 class DT_DLL_VL DtAmoStateRepository : public DtStateRepository
00084 {
00085 public:
00087    DtAmoStateRepository();
00088 
00090    virtual ~DtAmoStateRepository();
00091 
00093    DtAmoStateRepository(const DtAmoStateRepository& orig);
00094 
00096    DtAmoStateRepository& operator=(const DtAmoStateRepository& orig);
00097 
00099    virtual void setAmoId(const DtEntityIdentifier& id);
00100 
00102    virtual const DtEntityIdentifier& amoId() const;
00103 
00105    virtual void setName(const DtString& name);
00106 
00108    virtual const DtString& name() const;
00109 
00111    virtual void setVersion(const DtString& version);
00112 
00114    virtual const DtString& version() const;
00115 
00117    virtual void setHostName(const DtString& name);
00118 
00120    virtual const DtString& hostName() const;
00121 
00123    virtual void setHostIpAddress(unsigned long ip);
00124 
00126    virtual unsigned long hostIpAddress() const;
00127 
00129    virtual void setOperatorName(const DtString& name);
00130 
00132    virtual const DtString& operatorName() const;
00133 
00135    virtual void setOperatorTelephoneNumber(const DtString number);
00136 
00138    virtual const DtString& operatorTelephoneNumber() const;
00139 
00141    virtual void setNumberOfObjectsServed(unsigned long number);
00142 
00144    virtual unsigned long numberOfObjectsServed() const;
00145 
00147    virtual void setNumberOfProxies(unsigned long number);
00148 
00150    virtual unsigned long numberOfProxies() const;
00151 
00153    virtual void setStatus(DtAmoApplicationStatus status);
00154 
00156    virtual DtAmoApplicationStatus status() const;
00157 
00159    virtual void setNumberOfSubscribedClasses(int number);
00160 
00162    virtual int numberOfSubscribedClasses() const;
00163 
00165    virtual void setNumberOfPublishedClasses(int number);
00166 
00168    virtual int numberOfPublishedClasses() const;
00169 
00171    virtual void setSubscribedClass(unsigned int index, const DtClassStatusRecord& classRecord);
00172 
00175    virtual const DtClassStatusRecord& subscribedClass(unsigned int index) const;
00176 
00178    virtual void setPublishedClass(unsigned int index, const DtClassStatusRecord& classRecord);
00179 
00182    virtual const DtClassStatusRecord& publishedClass(unsigned int index) const;
00183 
00186    virtual void setUpdatePeriod(double period);
00187 
00189    virtual double updatePeriod() const;
00190 
00192    virtual void printData() const;
00193 
00195    virtual void printDataToStream(std::ostream& stream) const;
00196 
00198    virtual DtStateRepository* clone(bool copy) const; 
00199 
00200 public:
00201    static DtAmoStateRepository* create();
00202 
00203 
00204 protected:
00205    DtEntityIdentifier myAmoId;
00206    DtString myName;
00207    DtString myVersion;
00208    DtString myHostName;
00209    unsigned long myHostIpAddress;
00210    DtString myOperatorName;
00211    DtString myOperatorTelephoneNumber;
00212    unsigned long myNumberOfObjectsServed;
00213    unsigned long myNumberOfProxies;
00214    DtAmoApplicationStatus myStatus;
00215    std::vector<DtClassStatusRecord> mySubscribedClasses;
00216    std::vector<DtClassStatusRecord> myPublishedClasses;
00217    double myUpdatePeriod;
00218 };
00219 
00220 
00221 
00222 #endif //! DtTENA
00223 #endif //! amoSR_H_
00224 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)