
|
|
This file was automatically generated from diguyCharacterTypeMap.h. Do not edit this file directly; the changes will be lost.Includes: diguy_constants.h | declspec_diguy.h
Contents:
enumeration diguyCharacterTypeMapField
|
Description:typedef enum { /*l ** As string: "unknown" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_UNKNOWN = -1, /*l ** As string: "character_class" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_CHARACTER_CLASS = 0, /*l ** As string: "category" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_CATEGORY, /*l ** As string: "subcategory" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_SUBCATEGORY, /*l ** As string: "sex" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_SEX, /*l ** As string: "age" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_AGE, /*l ** As string: "race" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_RACE, /*l ** As string: "country" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_COUNTRY, /*l ** As string: "military_branch" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_MILITARY_BRANCH, /*l ** As string: "carried_object" */ DIGUY_CHARACTER_TYPE_MAP_FIELD_CARRIED_OBJECT, /*l ** How many fields there are. */ DIGUY_CHARACTER_TYPE_MAP_FIELD_COUNT } diguyCharacterTypeMapField;
This enumeration allows type map fields to be queried using a numerical value rather than a string name of the field.
See the top-level description of the diguyCharacterTypeMap for information about what each field means.
function diguy_character_type_map_field_to_string |
Prototype:
const char* diguy_character_type_map_field_to_string(diguyCharacterTypeMapField field);
function diguy_character_type_map_field_from_string |
Prototype:
diguyCharacterTypeMapField diguy_character_type_map_field_from_string(const char* string);
The character type map provides extra information about DI-Guy character types and appearances. This information allows users and DI-Guy Scenario to query DI-Guy about the best match character type and appearance based on certain criteria.
Type maps are broken down into fields, described below.
For example, the function diguyScenario::get_nearest_character_type_map() will return a diguyCharacterTypeMap that best matches the specified class, category, subcategory, sex, age, etc.
The Appearance Wizard in DI-Guy Scenario, provides a graphical user interface for finding the best character types and appearances based on the same information.
| Type Map Fields |
Each type map is identified by a number of fields. The value in each field is a string.
The available fields are:
Refer to the online documentation page "Character Type and Appearance Map Info" for information on exactly what values are available for each field.
Certain field values have special meanings. A "*" is a "wildcard", meaning that in match operations it will match any value. If a type map doesn't specify a value for a field, that field value is by convention set to "-". For example, a human with no weapon would have its carried_object field set to "-".
When calling functions, fields can be specified numerically using the diguyCharacterTypeMapField enumeration, or each field has a string name, as well.
| Character Type Fields |
These fields tend to specify the "what it can do" part of a type map. These fields tend to be set by the character type, as the selection of actions provided with different character types tend to be what limits what a DI-Guy character can do.
Sometimes the selected appearance of a character will override the category and subcategory fields. For example, the soldier_07 character type is most often categorysubcategory militarysoldier. A police officer appearance can be selected for a soldier character, however, which will change the categorysubcategory to emergencypolice.
character_class
The high-level "class" of a character type. This list may grow as more character types are added to DI-Guy. Examples:
category
- human
- object
- vehicle
- animal
A category of a character class. Different classes tend to have different categories. This list may grow as more character types are added to DI-Guy. Human class examples:
subcategory
- military
- civilian
- emergency
- (more)
A further breakdown of categories. Different categories tend to have different subcategories. This list may grow as more character types are added to DI-Guy. Human/emergency subclass examples:
- fire
- medical
- police
- (more)
| Appearance Fields |
These fields tend to specify the "what does it look like" part of a type map. These fields tend to be set by the appearance of a character, for obvious reasons.
sex
The gender of the appearance. Humans and animals and "male" or "female", while other classes usually have sex "none".
age
- male
- female
- none
The age of the appearance. This is a an age description rather than a specific age in years.
race
- baby
- toddler
- child
- teenager
- adult
- elderly
The race of the appearance. (Note that these race classifications are not meant to offend. Please excuse any unintentional offense or omission.) Generally for human class only. Examples:
country
- white
- black
- hispanic
- asian
- native_american
- middle_eastern
- none
- (more in the future)
The country of the appearance, if any. This list will grow as more appearances are added to DI-Guy. Examples:
military_branch
- usa
- uk
- france
- japan
- iraq
- afghanistan
- chile
- russia
- none
- (more in the future)
The military branch of the appearance, if any. This list may grow as more appearances are added to DI-Guy. Examples:
carried_object
- army
- navy
- air_force
- marines
- coast_guard
- irregular
- none
- (more in the future)
The object carried by the appearance, if any. Examples:
- m16
- m203
- 2x4
- hammer
- (more)
| Type Map Ids |
Some functions take or return a "type map id". This is a string in which the values of the type map's fields are concatenated in the form:
character_classcategorysubcategorysexageracecountrymilitary_branchcarried_object
For example, the string "humanmilitarysoldiermaleadultblackusaarmym16" is a valid type map id.
All public functions in this class are callable from:
- C++
- Script
class diguyCharacterTypeMap
|
class BDI_DECLSPEC_diguy diguyCharacterTypeMap { public: const char* get_type_map_id(); const char* get_mapped_character_type(); const char* get_mapped_appearance(); const char* get_field_value(diguyCharacterTypeMapField field); const char* get_field_value_using_field_string(const char* field); int get_most_recent_match_passed(); int get_most_recent_match_level(); int get_most_recent_exact_value_matches(); int get_most_recent_alternate_value_matches(); int get_most_recent_wildcard_value_matches(); int get_num_wildcards();
function diguyCharacterTypeMap::get_type_map_id |
Prototype:
Description:const char* get_type_map_id();
This function returns the type map id of this type map object, in which the current value of all fields are concatenated together, separated by slashes.
An example return value is "humanmilitarysoldiermaleadultblackusaarmym16".Returns:
type map id string; will never be NULL
function diguyCharacterTypeMap::get_mapped_character_type |
Prototype:
Description:const char* get_mapped_character_type();
This function returns the character type this type map maps to. This is important for match results.
The returned character type can be used, for example, in a call to diguyScenario::create_character().Returns:
character type string; will never be NULL
function diguyCharacterTypeMap::get_mapped_appearance |
Prototype:
Description:const char* get_mapped_appearance();
This function returns the appearance this type map maps to. This is important for match results.
The returned appearance can be used, for example, in a call to diguyCharacter::set_appearance().Returns:
appearance string; will never be NULL
function diguyCharacterTypeMap::get_field_value |
Prototype:
Returns:const char* get_field_value(diguyCharacterTypeMapField field);
the value of the specified field
function diguyCharacterTypeMap::get_field_value_using_field_string |
Prototype:
Returns:const char* get_field_value_using_field_string(const char* field);
the value of the specified field
| Type Map Query Result Functions |
Some functions query DI-Guy for the closest match of character type and appearance to specified type map field selections. The result of such a query is returned in a diguyCharacterTypeMap object.
These functions return information from the returned object about whether there was actually a match, how many exact field matches there were, etc.
function diguyCharacterTypeMap::get_most_recent_match_passed |
Prototype:
Returns:int get_most_recent_match_passed();
whether the most recent match call passed or not; 1 if so, 0 if not
function diguyCharacterTypeMap::get_most_recent_match_level |
Prototype:
Returns:int get_most_recent_match_level();
total match value from most recent match operation; higher number means better match
function diguyCharacterTypeMap::get_most_recent_exact_value_matches |
Prototype:
Returns:int get_most_recent_exact_value_matches();
number of exact value matches in most recent match operation
function diguyCharacterTypeMap::get_most_recent_alternate_value_matches |
Prototype:
Returns:int get_most_recent_alternate_value_matches();
number of alternate value matches in most recent match operation
function diguyCharacterTypeMap::get_most_recent_wildcard_value_matches |
Prototype:
Returns:int get_most_recent_wildcard_value_matches();
number of wildcard value matches in most recent match operation
function diguyCharacterTypeMap::get_num_wildcards |
Prototype:
Returns:int get_num_wildcards();
number of fields that have wildcard values
ALL RIGHTS RESERVED.
These coded instructions, statements, and computer programs contain unpublished proprietary information of Boston Dynamics and are protected by Copyright Laws of the United States. They may not be used, duplicated, or disclosed in any form, in whole or in part, without the prior written consent from Boston Dynamics.
RESTRICTED RIGHTS LEGEND
Use, duplication, or disclosure by the government is subject to restrictions as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Sofware clause at DFARS 252.227-7013 and/or in similar or successor clauses in the FAR, or the DOD or NASA FAR Supplement, or to subparagraphs (c)(1) and (c)(2) of the Commercial Computer Software--Restricted Rights at 48 CFR 52.227-19, as applicable. Unpublished-rights reserved under the Copyright Laws of the United States.
Contractor/Manufacturer is:
Boston Dynamics/78 Fourth Avenue/Waltham MA 02451.