VR-Forces 4.0.4 Class Documentation
include/vrfcgf/vrfStatusPub.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2001 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: vrfStatusPub.h,v $ $Revision: 1.21 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00012 #ifndef DtVrfStatusPublisher_H_
00013 #define DtVrfStatusPublisher_H_
00014 
00015 #include <vlutil/vlList.h>
00016 #include <vlutil/vlTime.h>
00017 #include <vl/hostStructs.h>
00018 #include <vlutil/vlInetSocket.h>
00019 #include <vlutil/vlInetAddr.h>
00020 #include "vrfcgf/vrfcgfDefines.h"
00021 
00022 class DtSimMessage;
00023 class DtSimulationAddress;
00024 class DtVrfMessageInterface;
00025 class DtIfStatus;
00026 class DtStealthRemoteController;
00027 
00031 class DT_DLL_vrfcgf DtVrfStatusPublisher
00032 {
00033 public:
00034 
00036    DtVrfStatusPublisher(DtVrfMessageInterface* messageIf);
00037 
00039    virtual ~DtVrfStatusPublisher();
00040 
00041    virtual const DtSimulationAddress& address();
00042    virtual void setAddress(const DtSimulationAddress& address);
00043 
00044    virtual const DtTime& lastResponseTime();
00045    virtual void setLastResponseTime(const DtTime& time);
00046 
00047    virtual void sendStatus(const DtSimulationAddress& address);
00048    virtual void sendFinalStatus();
00049    virtual void sendStatusToAll();
00050 
00052    virtual void setHeartbeatInterval(int heartbeatInterval);
00053    virtual int heartbeatInterval();
00054 
00056    virtual DtInetAddr ipAddress() const;
00057    virtual void setIpAddress(const DtInetAddr& addr);
00058 
00060    virtual unsigned int port() const;
00061    virtual void setPort(unsigned int p);
00062 
00064    virtual int controlState() const;
00065    virtual void setControlState(int state);
00066 
00068    virtual void tick();
00069 
00071    virtual void processStatusRequestMessage(DtSimMessage * msg);
00072 
00074    static void statusRequestCallback(DtSimMessage * msg, void * usr);
00075 
00077    virtual bool isLoaded() const;
00078    virtual void setIsLoaded(bool loaded);
00079 
00081    virtual bool isActive() const;
00082    virtual void setIsActive(bool active);
00083 
00084    virtual bool canSimulate() const;
00085    virtual void setCanSimulate(bool canSimulate);
00086 
00088    virtual DtTime exerciseStartTime() const;
00089    virtual void setExerciseStartTime(DtTime time);
00090 
00093    virtual DtTime simTime() const;
00094    virtual void setSimTime(DtTime time);
00095 
00097    virtual DtTime simStartSimTime() const;
00098    virtual void setSimStartSimTime(DtTime time);
00099  
00102    virtual double timeMultiplier() const;
00103    virtual void setTimeMultiplier(double timeMultiplier);
00104 
00107    virtual void setLoadedNewScenario(bool);
00108    virtual bool loadedNewScenario() const;
00109 
00111    //virtual bool isOldParameterDb() const;
00112    //virtual void setIsOldParameterDb(bool isOldParameterDb);
00113 
00115    virtual bool isCurrentParameterDb() const;
00116    virtual void setIsCurrentParameterDb(bool isCurrentParameterDb);
00117 
00120    virtual bool isResourceMonitorEnabled() const;
00121    virtual void setIsResourceMonitorEnabled(bool isEnabled);
00122 
00124    virtual void setStealthRemoteController(DtStealthRemoteController* c);
00125    virtual DtStealthRemoteController* stealthRemoteController() const;
00126 
00129    virtual void setPublishSimulationTimeForStealth(bool b);
00130    virtual bool publishSimulationTimeForStealth() const;
00131 
00132    virtual void setIsTimeManaged(bool yesNo);
00133    virtual bool isTimeManaged() const;
00134 
00136 
00137    virtual void setTerrainName(const DtString& name);
00138    virtual DtString terrainName() const;
00140 
00141    virtual void setGuiTerrainName(const DtString& name);
00142    virtual DtString guiTerrainName() const;
00143 
00145 
00146    virtual void setScenarioName(const DtString& name);
00147    virtual DtString scenarioName() const;
00149 
00153    virtual void setSendStatusOnChange(bool);
00154    virtual bool sendStatusOnChange() const;
00155 
00156 protected:
00157 
00159    virtual void publishStealthSimulationTime();
00160 
00162    DtVrfStatusPublisher(const DtVrfStatusPublisher& orig);
00163 
00165    DtVrfStatusPublisher& operator=(const DtVrfStatusPublisher& orig);
00166 
00167 protected:
00169    DtVrfMessageInterface* myMessageIf;
00170    int myHeartbeatInterval;   
00171 
00172    DtSimulationAddress  myAddress;
00173    bool                 myIsActive;
00174    bool                 myCanSimulate;
00175    DtTime               myLastResponseTime;
00176    bool                 myIsOldParameterDb;
00177    DtStealthRemoteController* myStealthRemoteController;
00178    bool                 myPublishSimulationTimeForStealth;
00179    bool                 myHasBeenModified;
00180    bool                 mySendStatusOnChange;
00181    bool                 myLoadedNewScenario;
00182 
00183    DtIfStatus* myStatus;
00184 };
00185 
00186 #endif
00187 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)