VR-Forces 4.0.4 Class Documentation
include/vrfmodel/lclEntSetCtlr.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00008 
00011 
00012 
00013 #pragma once
00014 
00015 #include "vrfobjcore/cntrlCmpnt.h"
00016 #include "vrfobjcore/simRadio.h"
00017 #include "vrfobjcore/lclEntSetCtlrPSR.h"
00018 
00019 class DtSimMessage;
00020 class DtVrfObject;
00021 
00022 
00030 
00031 #include "vrfmodel/vrfmodelDefines.h"
00032 class DT_DLL_vrfmodel DtLocalEntitySetController : public DtControllerComponent
00033 {
00034 
00035 public:
00036 
00039    DtLocalEntitySetController(const DtString& name, 
00040       DtVrfObject* owner,
00041       DtSimManager* simManager, 
00042       DtComponentDescriptor* desc = 0,
00043       DtReaderWriterRegistry* parentRegistry = 0);
00044 
00046    virtual ~DtLocalEntitySetController();
00047 
00049    virtual bool init();
00050 
00053    virtual DtString type() const;
00054 
00055    virtual void processSetForce(DtSimMessage * msg);
00056    virtual void processSetAppearance(DtSimMessage * msg);
00057    virtual void processSetCapabilities(DtSimMessage * msg);
00058    virtual void processSetAltitude(DtSimMessage * msg);
00059    virtual void processSetResource(DtSimMessage * msg);
00060    virtual void processSetSOR(DtSimMessage * msg);
00061    virtual void processSetSpeed(DtSimMessage * msg);
00062    virtual void processSetEngagementRules(DtSimMessage * msg);
00063    virtual void processSetRestore(DtSimMessage * msg);
00064    virtual void processSetConcealed(DtSimMessage * msg);
00065 
00072    virtual void processSetLocation(DtSimMessage * msg);
00073 
00076    virtual void setLocation(DtVector geocentricLocation);
00077    
00084    virtual void processSetHeading(DtSimMessage * msg);
00085 
00087    virtual void setHeading(DtReal heading);
00088       
00090    virtual void enable();
00091 
00093    virtual void disable();
00094 
00097    virtual void tick();
00098 
00106    virtual bool createPSR();
00107 
00108 public:
00109    static void setHeadingCallback(DtSimMessage * msg, void * usrData);
00110    static void setForceCallback(DtSimMessage * msg, void * usrData);
00111    static void setLocationCallback(DtSimMessage * msg, void * usrData);
00112    static void setAppearanceCallback(DtSimMessage * msg, void * usrData);
00113    static void setCapabilitiesCallback(DtSimMessage * msg, void * usrData);
00114    static void setAltitudeCallback(DtSimMessage * msg, void * usrData);
00115    static void setResourceCallback(DtSimMessage * msg, void * usrData);
00116    static void setSORCallback(DtSimMessage * msg, void * usrData);
00117    static void setSpeedCallback(DtSimMessage * msg, void * usrData);
00118    static void setEngagementRulesCallback(DtSimMessage * msg, void * usrData);
00119    static void setRestoreCallback(DtSimMessage * msg, void * usrData);
00120    static void setConcealedCallback(DtSimMessage * msg, void * usrData);
00121 
00125    static DtSimComponent * creator(const DtString& name, 
00126       DtVrfObject* owner,
00127       DtSimManager* simManager, 
00128       DtComponentDescriptor* desc = 0,
00129       DtReaderWriterRegistry* parentRegistry = 0);
00130 
00131 protected:
00134    DtLocalEntitySetController();
00135 
00137    DtLocalEntitySetController(const DtLocalEntitySetController& orig);
00138 
00140    const DtLocalEntitySetController & operator=(const 
00141       DtLocalEntitySetController& orig);
00142 
00143 
00144 protected:
00146    virtual void setRadio(DtSimRadio * radio);
00147 
00150    virtual void addSetDataCallbacks();
00151 
00154    void removeSetDataCallbacks();
00155 
00156 protected:
00158    DtVrfObject* myLocalEntity;
00159    
00162    DtLocalEntitySetControllerPSR* myProcessState;   
00163 };
00164 

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)