VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/pseudoMovePSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2003 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: pseudoMovePSR.h,v $ $Revision: 1.11 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00013 
00014 #ifndef DtPseudoAggregateMovementPSR_H_
00015 #define DtPseudoAggregateMovementPSR_H_
00016 
00017 #include "vrfobjcore/processSR.h"
00018 #include "vrfutil/rwString.h"
00019 #include "vrfobjcore/promoteEntryList.h"
00020 #include <vlpi/disEnums.h>
00021 #include "vrfutil/rwInt.h"
00022 #include "vrfutil/rwReal.h"
00023 #include <vl/hostStructs.h>
00024 
00056 
00060 
00061 #include "vrfobjcore/vrfobjcoreDefines.h"
00062 class DT_DLL_vrfobjcore DtPseudoAggregateMovementPSR : public DtVrfProcessStateRepository
00063 {
00064 public:
00065 
00067    DtPseudoAggregateMovementPSR(DtVrfObject* vrfObject, 
00068       const DtString& rwName = DtString::nullString(), 
00069       DtReaderWriterRegistry*  parentRegistry = 0);
00070 
00072    virtual ~DtPseudoAggregateMovementPSR();
00073 
00075    DtPseudoAggregateMovementPSR(const DtPseudoAggregateMovementPSR& orig,
00076       const DtString& rwName = DtString::nullString(), 
00077       DtReaderWriterRegistry*  parentRegistry = 0);
00078 
00080    DtPseudoAggregateMovementPSR& operator=(const DtPseudoAggregateMovementPSR& orig);
00081 
00083    virtual DtVrfProcessStateRepository* clone(
00084       const DtString& rwName = DtString::nullString(), 
00085       DtReaderWriterRegistry*  parentRegistry = 0) const;
00086 
00089    virtual DtString type() const;
00090 
00095    virtual void setCurrentlyTaskedLeaderId(const DtEntityIdentifier& objectId);
00096    virtual const DtEntityIdentifier& currentlyTaskedLeaderId() const;
00097 
00100    virtual DtVrfObject* currentlyTaskedLeader() const;
00101 
00104    virtual DtPromotionEntryList* promotionList() const;
00105 
00107    virtual DtAggregateFormation formation() const;
00108    virtual void setFormation(DtAggregateFormation formation);
00109 
00110    virtual void setLeaderOrderedSpeed(DtReal speed);
00111    virtual DtReal leaderOrderedSpeed() const;
00112 
00115    virtual void putSelf(FILE *fp, int indentLevel = 0, 
00116       bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
00117    virtual void getSelf(DtlObjPtr args, const DtFilename& searchPath,
00118       const DtVariableBindingsList& variableBindings);  
00119 
00120 public:
00121 
00123    static DtVrfProcessStateRepository* creator (const DtString& rwName,
00124       DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
00125 
00126    static void objectAddedCallback(DtVrfObject* object, void* usr);
00127 
00128 protected:
00132    virtual void processObjectAdded(DtVrfObject* object);
00133 
00134 protected:
00135 
00142    DtRwString myCurrentlyTaskedLeader;
00143 
00144    DtEntityIdentifier myCurrentlyTaskedLeaderId;
00145 
00147    DtRwReal myLeaderOrderedSpeed;
00148 
00153    DtRwInt myFormation;
00154 
00159    DtPromotionEntryList myPromotionList;
00160 };
00161 
00162 #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)