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 | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
DtDiGuyCharacterDataManager Class Reference

Contains data describing the available attributes and animations of every DI-Guy character type that can be used at runtime by the sim engine. More...

Public Member Functions

 DtDiGuyCharacterDataManager (const DtFilename &appDataDir, const DtFilename &dataDir)
 Constructor.
 DtDiGuyCharacterDataManager (const DtFilename &appDataDir, const DtFilename &dataDir, makVrv::DtDiGuyScenario *)
virtual ~DtDiGuyCharacterDataManager ()
 Destructor.
 DtDiGuyCharacterDataManager (const DtDiGuyCharacterDataManager &orig)
 copy constructor
DtDiGuyCharacterDataManageroperator= (const DtDiGuyCharacterDataManager &orig)
 assignment operator
virtual bool init ()
 Initialization. Must be called before any other functions are called.
virtual void setAnimationsConfigurationFilename (const DtFilename &config)
virtual bool loadCharacterAnimationsFile (const DtFilename &mtlName)
 Load the additional animation file.
virtual bool loadDataFromDIGuy ()
 Construct character data by instantiating DI-Guy and querying the instance for character types, appearances, actions, etc.
virtual DtDiGuyCharacterDatalookupCharacterByName (const DtString &characterName)
 Returns DtDiGuyCharacterData object associated with named DI-Guy character type or NULL.
virtual AlternateNamesListavailableCharactersList ()
 Returns the list of all the DI-Guy characters available.
virtual void getAppearancesMatchingDiGuyTypeMap (const DtString &characterType, std::vector< DtString > &fields, std::vector< DtString > &retAppearances)
 Given a DI-Guy character type and a complete set of type map field values, any of which can be a wildcard ("*"), return all matching character appearances.
virtual void getAppearancesMatchingPartialDiGuyTypeMap (const DtString &characterType, std::vector< DtString > &partialFields, std::vector< int > &fieldIndices, std::vector< DtString > &retAppearances)
 Similar to above, but only some fields are specified.
virtual void getTypeMapFieldOptions (const DtString &characterType, std::vector< DtString > &fields, std::vector< std::list< DtString > > &retValues)
 Given a DI-Guy character type and a complete set of type map field values, any of which can be a wildcard ("*"), return the possible choices for each type map field.
virtual void getTypeMapPartialFieldOptions (const DtString &characterType, std::vector< DtString > &partialFields, std::vector< int > &fieldIndices, std::vector< std::list< DtString > > &retValues)
 Uses the same idea as getAppearancesMatchingPartialDiGuyTypeMap(). retValues only contains a set of lists for the fields passed in.
DtDiGuyCharacterAnimationsTableanimationTable () const
DtVrvDiGuyCharacterDatamasterDiGuyCharacterData () const
virtual makVrv::DtDiGuyScenariolightweightInstance ()
 Gets the lightweight instance used for diguy scenario information.

Static Public Member Functions

static
DtDiGuyCharacterDataManager
characterManager ()
 Returns singleton instance of DtDiGuyCharacterDataManager.
static
DtDiGuyCharacterDataManager
creator (const DtFilename &appDataDir, const DtFilename &dataDir)
 Creates new singleton of DtDiGuyCharacterDataManager.
static
DtDiGuyCharacterDataManager
creator (const DtFilename &appDataDir, const DtFilename &dataDir, makVrv::DtDiGuyScenario *)
static int numberOfDiGuyTypeMapFields ()
 Number of type fields currently supported by di-guy.

Protected Member Functions

virtual void addCharacterData (DtDiGuyCharacterData *data)
void findListIntersection (std::list< DtString > &orig, std::list< DtString > &second)
 only orig is modified
void debugPrint (const char *fmt,...)
 If myPrintInfo is true, then call printf()

Protected Attributes

DtFilename myAnimationsConfigurationFilename
DtDiGuyCharacterAnimationsTablemyAnimationsConfigurationFile
std::map< DtString,
DtDiGuyCharacterData * > 
myCharacterMap
std::list< DtStringmyCharactersList
bool myPrintInfo
DtVrvDiGuyCharacterDatamyMasterDiGuyCharacterData
DtFilename myDataDir
makVrv::DtDiGuyScenariomyLightweightInstance

Static Protected Attributes

static
DtDiGuyCharacterDataManager
theCharacterDataManager
 So everyone can get at this class when they need to.
static double theCharacterManagerVersion

Detailed Description

Contains data describing the available attributes and animations of every DI-Guy character type that can be used at runtime by the sim engine.

Constructor & Destructor Documentation

DtDiGuyCharacterDataManager::DtDiGuyCharacterDataManager ( const DtFilename &  appDataDir,
const DtFilename &  dataDir 
)

Constructor.

DtDiGuyCharacterDataManager::DtDiGuyCharacterDataManager ( const DtFilename &  appDataDir,
const DtFilename &  dataDir,
makVrv::DtDiGuyScenario  
)
virtual DtDiGuyCharacterDataManager::~DtDiGuyCharacterDataManager ( )
virtual

Destructor.

DtDiGuyCharacterDataManager::DtDiGuyCharacterDataManager ( const DtDiGuyCharacterDataManager orig)

copy constructor

Member Function Documentation

static DtDiGuyCharacterDataManager* DtDiGuyCharacterDataManager::characterManager ( )
static

Returns singleton instance of DtDiGuyCharacterDataManager.

static DtDiGuyCharacterDataManager* DtDiGuyCharacterDataManager::creator ( const DtFilename &  appDataDir,
const DtFilename &  dataDir 
)
static

Creates new singleton of DtDiGuyCharacterDataManager.

static DtDiGuyCharacterDataManager* DtDiGuyCharacterDataManager::creator ( const DtFilename &  appDataDir,
const DtFilename &  dataDir,
makVrv::DtDiGuyScenario  
)
static
DtDiGuyCharacterDataManager& DtDiGuyCharacterDataManager::operator= ( const DtDiGuyCharacterDataManager orig)

assignment operator

virtual bool DtDiGuyCharacterDataManager::init ( )
virtual

Initialization. Must be called before any other functions are called.

virtual void DtDiGuyCharacterDataManager::setAnimationsConfigurationFilename ( const DtFilename &  config)
virtual
virtual bool DtDiGuyCharacterDataManager::loadCharacterAnimationsFile ( const DtFilename &  mtlName)
virtual

Load the additional animation file.

virtual bool DtDiGuyCharacterDataManager::loadDataFromDIGuy ( )
virtual

Construct character data by instantiating DI-Guy and querying the instance for character types, appearances, actions, etc.

virtual DtDiGuyCharacterData* DtDiGuyCharacterDataManager::lookupCharacterByName ( const DtString characterName)
virtual

Returns DtDiGuyCharacterData object associated with named DI-Guy character type or NULL.

virtual AlternateNamesList* DtDiGuyCharacterDataManager::availableCharactersList ( )
virtual

Returns the list of all the DI-Guy characters available.

virtual void DtDiGuyCharacterDataManager::getAppearancesMatchingDiGuyTypeMap ( const DtString characterType,
std::vector< DtString > &  fields,
std::vector< DtString > &  retAppearances 
)
virtual

Given a DI-Guy character type and a complete set of type map field values, any of which can be a wildcard ("*"), return all matching character appearances.

virtual void DtDiGuyCharacterDataManager::getAppearancesMatchingPartialDiGuyTypeMap ( const DtString characterType,
std::vector< DtString > &  partialFields,
std::vector< int > &  fieldIndices,
std::vector< DtString > &  retAppearances 
)
virtual

Similar to above, but only some fields are specified.

The entries in fieldIndices correspond to the entries in partialFields, and each is the index of a type map field. partialFields contains the values of those particular fields; all others are assumed to be wildcards.

virtual void DtDiGuyCharacterDataManager::getTypeMapFieldOptions ( const DtString characterType,
std::vector< DtString > &  fields,
std::vector< std::list< DtString > > &  retValues 
)
virtual

Given a DI-Guy character type and a complete set of type map field values, any of which can be a wildcard ("*"), return the possible choices for each type map field.

The idea is that choices made in a more significant field narrow down the available choices in less significant fields. Each vector entry in retValues contains a list of choices corresponding to that type map field index.

virtual void DtDiGuyCharacterDataManager::getTypeMapPartialFieldOptions ( const DtString characterType,
std::vector< DtString > &  partialFields,
std::vector< int > &  fieldIndices,
std::vector< std::list< DtString > > &  retValues 
)
virtual

Uses the same idea as getAppearancesMatchingPartialDiGuyTypeMap(). retValues only contains a set of lists for the fields passed in.

DtDiGuyCharacterAnimationsTable* DtDiGuyCharacterDataManager::animationTable ( ) const
inline
static int DtDiGuyCharacterDataManager::numberOfDiGuyTypeMapFields ( )
static

Number of type fields currently supported by di-guy.

DtVrvDiGuyCharacterData* DtDiGuyCharacterDataManager::masterDiGuyCharacterData ( ) const
inline
virtual makVrv::DtDiGuyScenario* DtDiGuyCharacterDataManager::lightweightInstance ( )
virtual

Gets the lightweight instance used for diguy scenario information.

virtual void DtDiGuyCharacterDataManager::addCharacterData ( DtDiGuyCharacterData data)
protectedvirtual
void DtDiGuyCharacterDataManager::findListIntersection ( std::list< DtString > &  orig,
std::list< DtString > &  second 
)
protected

only orig is modified

void DtDiGuyCharacterDataManager::debugPrint ( const char fmt,
  ... 
)
protected

If myPrintInfo is true, then call printf()

Member Data Documentation

DtFilename DtDiGuyCharacterDataManager::myAnimationsConfigurationFilename
protected
DtDiGuyCharacterAnimationsTable* DtDiGuyCharacterDataManager::myAnimationsConfigurationFile
protected
std::map<DtString,DtDiGuyCharacterData *> DtDiGuyCharacterDataManager::myCharacterMap
protected
std::list<DtString> DtDiGuyCharacterDataManager::myCharactersList
protected
bool DtDiGuyCharacterDataManager::myPrintInfo
protected
DtVrvDiGuyCharacterData* DtDiGuyCharacterDataManager::myMasterDiGuyCharacterData
protected
DtFilename DtDiGuyCharacterDataManager::myDataDir
protected
makVrv::DtDiGuyScenario* DtDiGuyCharacterDataManager::myLightweightInstance
protected
DtDiGuyCharacterDataManager* DtDiGuyCharacterDataManager::theCharacterDataManager
staticprotected

So everyone can get at this class when they need to.

double DtDiGuyCharacterDataManager::theCharacterManagerVersion
staticprotected

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)