VR-Forces 4.0.4 Class Documentation
include/vrfmodel/turretAcqr.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2003 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: turretAcqr.h,v $ $Revision: 1.26 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00014 
00015 #ifndef DtTurretAcquireController_H_
00016 #define DtTurretAcquireController_H_
00017 
00018 #include "vrfmodel/turretCntlr.h"
00019 #include <vl/hostStructs.h>
00020 #include "vrfobjcore/entListIOPort.h"
00021 
00022 #include <vl/fireInter.h>
00023 
00024 class DtString;
00025 class DtSimManager;
00026 class DtSimMessage;
00027 class DtEntityListPort;
00028 class DtSimIndividualLocalEntity;
00029 
00030 class DtEntityListInputPort;
00031 class DtTurretAcquireControllerDescriptor;
00032 
00057 #include "vrfmodel/vrfmodelDefines.h"
00058 class DT_DLL_vrfmodel DtTurretAcquireController : public DtTurretSlewController
00059 {
00060 
00061 public:
00062 
00065    DtTurretAcquireController(const DtString& name, 
00066       DtVrfObject* owner,
00067       DtSimManager* simManager, 
00068       DtComponentDescriptor* desc = 0,
00069       DtReaderWriterRegistry* parentRegistry = 0);
00070 
00072    virtual ~DtTurretAcquireController();
00073 
00076    virtual DtString type() const;
00077 
00079    virtual bool init();
00080 
00082    virtual void tick();
00083 
00085    virtual bool inSector(DtVrfObject* entity) const;
00086 
00088    virtual DtReal findBodyHeadingToTarget(DtVrfObject* entity) const;
00089 
00091    virtual DtVrfObject* chooseTarget(const DtEntityTargetList& targetList,
00092       DtTime currentTime) const;
00093 
00095    virtual DtVrfObject* easier(DtVrfObject* entity1, DtVrfObject* entity2) 
00096       const;
00097 
00101    static DtSimComponent * creator(const DtString& name, 
00102       DtVrfObject* owner,
00103       DtSimManager* simManager, 
00104       DtComponentDescriptor* desc = 0,
00105       DtReaderWriterRegistry* parentRegistry = 0);
00106 
00107 protected:
00108    
00110    virtual bool createPorts();
00111 
00121    virtual bool canTrackTarget(const DtVector& localEyepoint,
00122       DtVrfObject* targetObject) const;
00123 
00124 private:
00125    
00127    DtTurretAcquireController();
00128 
00130    DtTurretAcquireController(const DtTurretAcquireController & 
00131       orig);
00132 
00134    const DtTurretAcquireController & operator=(const 
00135       DtTurretAcquireController & orig);
00136 
00137 protected:
00138 
00141 
00147    DtEntityListInputPort*               myTargetListPort;
00148 
00150 
00151    const DtTurretAcquireControllerDescriptor* myTurretAcquireControllerDescriptor;
00152 
00154    DtEntityIdentifier                   myObjectId;
00155 };
00156 
00157 #endif
00158 
00159 
00160 
00161 

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)