VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/indirectFirePSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00008 
00014 
00015 #pragma once
00016 
00017 #include "vrfobjcore/weaponPSR.h"
00018 #include "vrfobjcore/detDescLst.h"
00019 #include "vrfutil/rwVector.h"
00020 #include "vrfutil/rwBoolean.h"
00021 
00027 
00028 #include "vrfobjcore/vrfobjcoreDefines.h"
00029 class DT_DLL_vrfobjcore DtVrfIndirectFirePSR : public DtVrfWeaponPSR
00030 {
00031 
00032 protected:
00033 
00034    DtVrfIndirectFirePSR();
00035 
00036 public:
00037 
00038    DtVrfIndirectFirePSR(DtVrfObject* vrfObject, 
00039       const DtString& rwName = DtString::nullString(), 
00040       DtReaderWriterRegistry*  parentRegistry = 0);
00041 
00042    DtVrfIndirectFirePSR(const DtVrfIndirectFirePSR& orig,
00043       const DtString& rwName = DtString::nullString(), 
00044       DtReaderWriterRegistry*  parentRegistry = 0);
00045 
00046    const DtVrfIndirectFirePSR& operator=( 
00047       const DtVrfIndirectFirePSR& orig);
00048 
00049    virtual ~DtVrfIndirectFirePSR();
00050 
00051    virtual DtVrfProcessStateRepository* clone(
00052       const DtString& rwName = DtString::nullString(), 
00053       DtReaderWriterRegistry*  parentRegistry = 0) const;
00054 
00056    virtual DtString type() const;
00057 
00059    virtual const DtDetonationDescriptorList& pendingDetonations() const;
00060 
00062    virtual void addPendingDetonation(DtDetonationDescriptor* desc);
00063 
00065    virtual void removePendingDetonation(const DtEventId& eventId);
00066 
00068    virtual void setNumberOfRoundsToFire(int number);
00069    virtual int numberOfRoundsToFire() const;
00070 
00072    virtual void setRoundsFiredSoFar(int number);
00073    virtual int roundsFiredSoFar() const;
00074 
00076    virtual void setHeightAboveTerrain(DtReal height);
00078    virtual DtReal heightAboveTerrain();
00079    
00080    virtual void setCurrentTargetLocation(const DtVector& location);
00081    virtual const DtVector& currentTargetLocation();
00082  
00086    virtual void setTaskCurrentlyQueued(bool queued);
00087    virtual bool taskCurrentlyQueued();
00089 
00090 public:
00091 
00092    static DtVrfProcessStateRepository* creator (const DtString& name,
00093       DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
00094 
00095 protected:
00096 
00099    DtDetonationDescriptorList myPendingDetonations;
00100 
00104    DtRwInt myNumberOfRoundsToFire;
00105    DtRwInt myRoundsFiredSoFar;
00106    DtRwReal myHeightAboveTerrain;
00107    DtRwVector myCurrentTargetLocation;
00108 
00110    DtRwBoolean myTaskCurrentlyQueued;
00111 };

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)