VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/indLifeFormSR.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2006 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00006 #pragma once
00007 
00011 
00014 
00015 #include "vrfobjcore/gndVehSR.h"
00016 #include "vrfobjparam/indLifeFormParams.h"
00017 #include "vrfutil/rwIndLifeFormStateType.h"
00018 #include "vrfutil/rwIndLifeFormWeaponStateType.h"
00019 
00024 #include "vrfobjcore/vrfobjcoreDefines.h"
00025 class DT_DLL_vrfobjcore DtIndividualLifeFormStateRepository : public DtGroundVehicleStateRepository
00026 {
00027   public:
00028 
00030     DtIndividualLifeFormStateRepository();
00031 
00033     DtIndividualLifeFormStateRepository (DtVrfObject* vrfObject,
00034       const DtObjectType& objectType, DtVrfObjectParameters* parameters,
00035       const DtString& rwName = DtString::nullString(),
00036       DtReaderWriterRegistry* parentRegistry = 0);
00037 
00039     DtIndividualLifeFormStateRepository (const DtIndividualLifeFormStateRepository& orig, 
00040        const DtString& rwName = DtString::nullString(), 
00041        DtReaderWriterRegistry* parentRegistry = 0);
00042 
00044     const DtIndividualLifeFormStateRepository& operator= (
00045        const DtIndividualLifeFormStateRepository& orig);
00046 
00048     virtual ~DtIndividualLifeFormStateRepository();
00049 
00050     virtual DtSimObjectStateRepository* clone(
00051        const DtString& rwName = DtString::nullString(),  
00052        DtReaderWriterRegistry*  parentRegistry = 0) const;
00053 
00054     virtual bool init();
00055 
00057     virtual DtString type() const;
00058 
00059     virtual bool createParameters();
00060     virtual void initializeFromParameters();
00061     virtual const DtIndividualLifeFormParameters* individualLifeFormParameters() const;
00062 
00064     virtual void setAssignedPosture(DtLifeformState newPosture);
00065     virtual DtLifeformState assignedPosture() const;
00066 
00068     virtual DtLifeformState currentPosture() const;
00069     virtual void setCurrentPosture (DtLifeformState newPosture);
00070 
00072     virtual void setAssignedWeaponState(DtWeaponState newWeaponState);
00073     virtual DtWeaponState assignedWeaponState() const;
00074 
00076     virtual DtWeaponState currentWeaponState() const;
00077     virtual void setCurrentWeaponState (DtWeaponState newWeaponState);
00078 
00079     static DtVrfObjectStateRepository* creator (const DtString& name,
00080                                                  DtVrfObject* vrfObject,const DtObjectType& objectType,
00081                                                  DtVrfObjectParameters* parameters,
00082                                                  DtReaderWriterRegistry* parentRegistry);
00083 
00086    static DtIndividualLifeFormStateRepository*
00087       isIndividualLifeFormStateRepository(
00088       DtSimObjectStateRepository* repository);
00089 
00090    static const DtIndividualLifeFormStateRepository*
00091       isIndividualLifeFormStateRepository( 
00092       const DtSimObjectStateRepository* repository);
00093 
00101    virtual void clampToGround (const DtVector& location, const DtReal heading,
00102       bool* dataAvailable = 0);
00103 
00105     virtual void setDestroyed(bool isDestroyed);
00106 
00108     virtual void calculateBodyEyepointOffset(DtLifeformState posture, 
00109        DtVector& bodyEyepointOffset) const;
00110 
00113     virtual bool uprightPosture(DtLifeformState posture) const;
00114 
00117     virtual bool staticPosture(DtLifeformState posture) const;
00118 
00121     virtual bool movingPosture(DtLifeformState posture) const;
00122 
00123   protected:
00124     DtRwIndividualLifeFormStateType                myAssignedPosture;
00125     DtRwIndividualLifeFormStateType                myCurrentPosture;
00126 
00127     DtRwIndividualLifeFormWeaponStateType          myAssignedWeaponState;
00128     DtRwIndividualLifeFormWeaponStateType          myCurrentWeaponState;
00129 };
00130 

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)