VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
DtVrvDiGuyCharacterData Class Reference

Stores data representing all the possible appearances, animations, hand items, heads, etc. More...

Inheritance diagram for DtVrvDiGuyCharacterData:
Inheritance graph
[legend]

Public Member Functions

 DtVrvDiGuyCharacterData ()
 DtVrvDiGuyCharacterData (const DtString &name)
 DtVrvDiGuyCharacterData (const DtVrvDiGuyCharacterData &orig)
virtual ~DtVrvDiGuyCharacterData ()
DtVrvDiGuyCharacterDataoperator= (const DtVrvDiGuyCharacterData &orig)
virtual DtDiGuyCharacterDataclone () const
 Returns a newly created clone of this class.
void setDiGuyScenario (makVrv::DtDiGuyScenario *scenario)
virtual void readInAnimationDataFromDiGuyScenario ()
 This is rather slow, because it causes creation of many things inside DI-Guy, so calls should be deferred until it's time to actually display an animation.
- Public Member Functions inherited from DtDiGuyCharacterData
 DtDiGuyCharacterData ()
 DtDiGuyCharacterData (const DtString &name)
 DtDiGuyCharacterData (const DtDiGuyCharacterData &orig)
virtual ~DtDiGuyCharacterData ()
DtDiGuyCharacterDataoperator= (const DtDiGuyCharacterData &orig)
virtual void init ()
virtual void setDeadAnimation (DtDiGuyAnimationSharedPtr deadAnimation)
virtual DtDiGuyAnimationdeadAnimation ()
virtual DtDiGuyAnimationlookupTaskAnimationByName (const DtString &name)
 Look up a particular animation.
virtual const std::vector
< DtString > & 
appearances () const
 The list of possible appearances for this character.
virtual void addAppearance (const DtString &app)
 Add a new possible appearance for the character.
virtual bool containsAppearance (const DtString &app)
virtual void addGesture (const DtString &app)
 Add a new possible gesture for the character.
virtual bool containsGesture (const DtString &app)
virtual const std::vector
< DtString > & 
gestures () const
virtual const std::vector
< DtString > & 
handItems () const
 The list of possible hand items for this character.
virtual void addHandItem (const DtString &app)
 Add a new possible hand item for the character.
virtual const std::vector
< DtString > & 
heads (const DtString &bodyAppearance) const
 The list of possible heads for this character and body appearance.
virtual void addHead (const DtString &bodyAppearance, const DtString &headAppearance)
 Add a new possible head for the character.
virtual void addTypeMapField (const DtString &appearanceName, const DtString &fieldValue)
 Adds the value to the next type map field that hasn't yet been set.
virtual const DtStringgetTypeMapFieldName (int index)
 Gets the name of a type map field (i.e. name of category)
virtual int getTypeMapFieldIndex (const DtString &name)
 Get the index of a type map field name.
virtual AlternateNamesListanimationNames ()
 Returns string list of all the animations and their user friendly display name.
void addAnimation (DtDiGuyAnimationSharedPtr animation)
 readInAnimationDataFromDiGuyScenario() will later classify all added animations into taskable or instrinsic.
virtual DtDiGuyAnimationlookupIntrinsicAnimationByName (const DtString &name)
void setAnimationTable (DtDiGuyCharacterAnimationsTable *table)
DtDiGuyAnimationSharedPtr readInAnimationDataFromTable (const char *actionName, bool isFirstAction)
 Reads in animations from DtDiGuyCharacterAnimationsTable, which was created by reading in character_animations_table.mtl.
void setPrintInfo (bool set_print)
 If set_print is true, calls to debugPrint() will print info to stdout.
void debugPrint (const char *fmt,...)
virtual void setCharacterTypeName (const DtString &name)
 The name of the character type.
virtual const DtStringcharacterTypeName () const
virtual TaskAnimationMaptaskableAnimations ()
 The taskable animations.
virtual AlternateNamesList taskableAnimationNames ()
 Returns string list of all the taskable animations and their user friendly display name.
virtual void addTaskAnimation (const DtString &name, DtDiGuyAnimationSharedPtr animation)
virtual
DtDiGuyIntrinsicAnimationMap
intrinsicAnimations ()
 The intrinsic animations.
virtual void addIntrinsicAnimation (const DtString &name, DtDiGuyAnimationSharedPtr animation)

Protected Attributes

makVrv::DtDiGuyScenariomyDiGuyScenario
 This object must be queried for detailed info about animations.
- Protected Attributes inherited from DtDiGuyCharacterData
DtString myCharacterTypeName
std::vector< DtStringmyCharacterAppearances
std::map< DtString, DtStringmyCharacterAppearancesMap
std::vector< DtStringmyCharacterHandItems
std::vector< DtStringmyCharacterGestures
std::map< DtString, DtStringmyCharacterGesturesMap
HeadAppearanceMap myCharacterHeads
AppearanceToTypeFieldsMap myTypeMaps
UnprocessedAnimationList myUnprocessedAnimations
 Will hold animation references until they can be classified as taskable or intrinsic.
TaskAnimationMap myTaskAnimationsMap
 Holds refs to taskable animations.
DtDiGuyIntrinsicAnimationMapmyIntrinsicAnimationsMap
 Holds refs to intrinsic animations.
DtFilename myIntrinsicAnimationsFilename
AlternateNamesList myAnimationNames
 List of names of all animations available.
DtDiGuyAnimationSharedPtr myDeadAnimation
 Keep death animation separate 1) don't need to loop thru the lists to match– dead is dead 2) prevents matching death as closest animation to people in prone posture even though they are alive.
DtDiGuyCharacterAnimationsTablemyAnimationTable
 This will be generated from the data in character_animations_table.mtl Its main importance is holding user-readable names and info about whether an animation is taskable or instrinsic.
bool myDataReadFromDiGuyScenario
 flag to indicate that animation data has been gathered from DIGuy
bool myPrintInfo

Additional Inherited Members

- Public Types inherited from DtDiGuyCharacterData
typedef std::map< DtString,
DtDiGuyAnimationSharedPtr
TaskAnimationMap
typedef TaskAnimationMap::iterator TaskAnimationMapIterator
typedef
TaskAnimationMap::const_iterator 
const_TaskAnimationMapIterator
typedef std::list
< DtDiGuyAnimationSharedPtr
UnprocessedAnimationList
typedef
UnprocessedAnimationList::iterator 
UnprocessedAnimationListIterator
typedef
UnprocessedAnimationList::const_iterator 
const_UnprocessedAnimationListIterator
- Static Public Member Functions inherited from DtDiGuyCharacterData
static void setCreatorFcn (const DtDiGuyIntrinsicAnimationMapCreatorFcn &fcn)
 By default, this class creates a DtDiGuyIntrinsicAnimationMap data member, used in determining the appropriate animation for a given posture, speed, and demeanor.
- Protected Member Functions inherited from DtDiGuyCharacterData
void setUpTypeFieldToIntMap ()
- Static Protected Attributes inherited from DtDiGuyCharacterData
static std::map< DtString, intmyTypeFieldNameToIntMap
static std::vector< DtStringmyTypeFieldNameVect
static
DtDiGuyIntrinsicAnimationMapCreatorFcn 
theDiGuyIntrinsicAnimationMapCreatorFcn

Detailed Description

Stores data representing all the possible appearances, animations, hand items, heads, etc.

that are available to a particular character type. It is used by the sim engine at runtime. Populated from both DI-Guy instance and character_animations_table.mtl file.

Constructor & Destructor Documentation

DtVrvDiGuyCharacterData::DtVrvDiGuyCharacterData ( )
DtVrvDiGuyCharacterData::DtVrvDiGuyCharacterData ( const DtString name)
DtVrvDiGuyCharacterData::DtVrvDiGuyCharacterData ( const DtVrvDiGuyCharacterData orig)
virtual DtVrvDiGuyCharacterData::~DtVrvDiGuyCharacterData ( )
virtual

Member Function Documentation

DtVrvDiGuyCharacterData& DtVrvDiGuyCharacterData::operator= ( const DtVrvDiGuyCharacterData orig)
virtual DtDiGuyCharacterData* DtVrvDiGuyCharacterData::clone ( ) const
virtual

Returns a newly created clone of this class.

Reimplemented from DtDiGuyCharacterData.

void DtVrvDiGuyCharacterData::setDiGuyScenario ( makVrv::DtDiGuyScenario scenario)
virtual void DtVrvDiGuyCharacterData::readInAnimationDataFromDiGuyScenario ( )
virtual

This is rather slow, because it causes creation of many things inside DI-Guy, so calls should be deferred until it's time to actually display an animation.

Reimplemented from DtDiGuyCharacterData.

Member Data Documentation

makVrv::DtDiGuyScenario* DtVrvDiGuyCharacterData::myDiGuyScenario
protected

This object must be queried for detailed info about animations.


The documentation for this class was generated from the following file:

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)