VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/balGunPSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2002 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: balGunPSR.h,v $ $Revision: 1.5 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00017 
00018 #ifndef DtVrfBalGunPSR_H_
00019 #define DtVrfBalGunPSR_H_
00020 
00021 #include "vrfobjcore/weaponPSR.h"
00022 #include "vrfobjcore/detDescLst.h"
00023 #include "vlutil/vlTime.h"
00024 
00025 
00026 
00027 enum DtLineOfSightState
00028 {
00029    DtLineOfSightUnknown = 0,
00030    DtLineOfSightBlocked = 1,
00031    DtLineOfSightClear = 2
00032 };
00033 
00039 
00040 
00041 #include "vrfobjcore/vrfobjcoreDefines.h"
00042 class DT_DLL_vrfobjcore DtVrfBalGunPSR : public DtVrfWeaponPSR
00043 {
00044 
00045 protected:
00046 
00047    DtVrfBalGunPSR();
00048 
00049 public:
00050 
00051    DtVrfBalGunPSR(DtVrfObject* vrfObject, 
00052       const DtString& rwName = DtString::nullString(), 
00053       DtReaderWriterRegistry*  parentRegistry = 0);
00054 
00055    DtVrfBalGunPSR(const DtVrfBalGunPSR& orig,
00056       const DtString& rwName = DtString::nullString(), 
00057       DtReaderWriterRegistry*  parentRegistry = 0);
00058 
00059    const DtVrfBalGunPSR& operator=( 
00060       const DtVrfBalGunPSR& orig);
00061 
00062    virtual ~DtVrfBalGunPSR();
00063 
00064    virtual DtVrfProcessStateRepository* clone(
00065       const DtString& rwName = DtString::nullString(), 
00066       DtReaderWriterRegistry*  parentRegistry = 0) const;
00067 
00069    virtual DtString type() const;
00070 
00072    virtual const DtDetonationDescriptorList& pendingDetonations() const;
00073 
00075    virtual void addPendingDetonation(DtDetonationDescriptor* desc);
00076 
00078    virtual void removePendingDetonation(const DtEventId& eventId);
00079 
00081    virtual void setFiringCycleCompleteTime(DtTime completeTime);
00082 
00084    virtual DtTime timeFiringCycleComplete() const;
00085 
00088    virtual void setCommandedToFire();
00089    virtual void setHasFired();
00090    virtual bool isCommandedToFire();
00091    virtual bool hasFired();
00093 
00094    virtual void setDisplayName(const DtString& displayName);
00095    virtual const DtString displayName() const;
00096 
00097 public:
00098 
00099    static DtVrfProcessStateRepository* creator (const DtString& name,
00100       DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
00101 
00102 protected:
00103 
00106    DtDetonationDescriptorList myPendingDetonations;
00107 
00110    enum FireState 
00111    {
00112       CommandedToFire,
00113       HasFired
00114    };
00115 
00122    DtRwInt myFireState;
00123 
00128    DtRwReal myFireCycleCompleteTime;
00129 
00130    DtRwString myDisplayName;
00131 };
00132 
00133 #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)