![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #pragma once 00012 00013 #include "vrfmodel/vrfmodelDefines.h" 00014 00015 #include <vrfmodel/laserGuidedLauncherController.h> 00016 00017 class DtEntityListOutputPort; 00018 class DtWeaponComponentInterface; 00019 class DtIntegratedLaserGuidedLauncherDescriptor; 00020 class DtEntityTargetInformation; 00021 00026 class DT_DLL_vrfmodel DtIntegratedLaserGuidedLauncherController : public DtLaserGuidedLauncherController 00027 { 00028 private: 00030 DtIntegratedLaserGuidedLauncherController(); 00032 DtIntegratedLaserGuidedLauncherController(const DtLaserGuidedLauncherController& orig); 00034 DtIntegratedLaserGuidedLauncherController& operator=(const DtLaserGuidedLauncherController& orig); 00035 00036 public: 00037 00040 DtIntegratedLaserGuidedLauncherController(const DtString &name, DtVrfObject* owner, 00041 DtSimManager* simManager, DtComponentDescriptor* compDesc = 0, 00042 DtReaderWriterRegistry* parentRegistry = 0); 00043 00045 virtual ~DtIntegratedLaserGuidedLauncherController(); 00046 00049 virtual DtString type() const; 00050 00052 //Initialize weapon component interface. 00053 virtual bool init(); 00054 00056 virtual void tick(); 00057 00059 virtual bool fireMunition(DtReflectedDesignator* target); 00060 00064 static DtSimComponent * creator(const DtString& name, 00065 DtVrfObject* owner, 00066 DtSimManager* simManager, 00067 DtComponentDescriptor* desc = 0, 00068 DtReaderWriterRegistry* parentRegistry = 0); 00069 00070 protected: 00071 00072 virtual bool createPorts(); 00073 00074 protected: 00075 00076 DtIntegratedLaserGuidedLauncherDescriptor* myDescriptor; 00077 00078 DtWeaponComponentInterface* myWeaponComponentInterface; 00079 00080 DtEntityListOutputPort* myTargetListOutputPort; 00081 00082 DtEntityTargetInformation* myCurrentMissileTarget; 00083 00084 };