VR-Forces 4.0.4 Class Documentation
include/vrfmodel/turretAct.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2003 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: turretAct.h,v $ $Revision: 1.30 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00013 
00014 #ifndef DtTurretActuatorComponent_H_
00015 #define DtTurretActuatorComponent_H_
00016 
00017 #include "vrfobjcore/actCmpnt.h"
00018 
00019 class DtString;
00020 class DtSimManager;
00021 
00022 class DtConstrainedAnalogInputPort;
00023 class DtTurretComponentDescriptor;
00024 class DtVrfTurretedBalGunPSR;
00025 
00052 #include "vrfmodel/vrfmodelDefines.h"
00053 class DT_DLL_vrfmodel DtTurretActuatorComponent : public DtActuatorComponent
00054 {
00055 
00056 public:
00057 
00060    DtTurretActuatorComponent(const DtString& name, 
00061       DtVrfObject* owner,
00062       DtSimManager* simManager, 
00063       DtComponentDescriptor* desc = 0,
00064       DtReaderWriterRegistry* parentRegistry = 0);
00065 
00067    virtual ~DtTurretActuatorComponent();
00068 
00070    virtual bool postAddComponentsInit();
00071 
00074    virtual DtString type() const;
00075 
00077    virtual void tick();
00078 
00079    virtual void setTurretArtPart(DtArtPartType turretArtPart);
00080    virtual DtArtPartType turretArtPart() const;
00081 
00082    virtual void setMaxSlewRate(DtReal maxSlewRate);
00083    virtual DtReal maxSlewRate() const;
00084 
00087    virtual void initProcessSR();
00088 
00092    static DtSimComponent * creator(const DtString& name, 
00093       DtVrfObject* owner,
00094       DtSimManager* simManager, 
00095       DtComponentDescriptor* desc = 0,
00096       DtReaderWriterRegistry* parentRegistry = 0);
00097 
00098 protected:
00099    
00101    virtual bool createPorts();
00102 
00110    virtual void lookupAndCacheProcessSR();
00111    
00112 protected:
00113    
00115    DtTurretActuatorComponent();
00116 
00118    DtTurretActuatorComponent(const DtTurretActuatorComponent & orig);
00119 
00121    const DtTurretActuatorComponent & operator=(const 
00122       DtTurretActuatorComponent & orig);
00123 
00124 
00125 protected:
00126 
00129 
00136    DtConstrainedAnalogInputPort* mySlewPort;
00137 
00139 
00140    const DtTurretComponentDescriptor* myTurretComponentDescriptor;
00141 
00147    DtVrfTurretedBalGunPSR*      myProcessState;
00148 
00152    bool myRotation360;
00153 
00156    DtReal myLeftSlewLimit;
00157    DtReal myRightSlewLimit;
00158 };
00159 
00160 #endif

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)