unit_race Class Reference

#include <race.hpp>

Collaboration diagram for unit_race:

Collaboration graph
[legend]

List of all members.

Public Types

enum  GENDER { MALE, FEMALE, NUM_GENDERS }

Public Member Functions

 unit_race ()
 unit_race (const config &cfg)
const std::string & id () const
const t_stringname (GENDER gender=MALE) const
const t_stringplural_name () const
const t_stringdescription () const
std::string generate_name (GENDER gender, simple_rng *rng=0) const
bool uses_global_traits () const
const config::child_listadditional_traits () const
unsigned int num_traits () const

Private Attributes

std::string id_
t_string name_ [NUM_GENDERS]
t_string plural_name_
t_string description_
unsigned int ntraits_
markov_prefix_map next_ [NUM_GENDERS]
int chain_size_
const config::child_listtraits_
bool global_traits_


Detailed Description

Definition at line 29 of file race.hpp.


Member Enumeration Documentation

Enumerator:
MALE 
FEMALE 
NUM_GENDERS 

Definition at line 32 of file race.hpp.


Constructor & Destructor Documentation

unit_race::unit_race (  ) 

Definition at line 133 of file race.cpp.

References FEMALE, MALE, and name_.

unit_race::unit_race ( const config cfg  ) 

Todo:
FIXME remove support after branching 1.4. 2 versions with lg::wml_error VALIDATE after that

Definition at line 146 of file race.cpp.

References chain_size_, t_string::empty(), FEMALE, id_, MALE, markov_prefixes(), name_, next_, plural_name_, and utils::split().


Member Function Documentation

const std::string& unit_race::id (  )  const [inline]

const t_string& unit_race::name ( GENDER  gender = MALE  )  const [inline]

Definition at line 38 of file race.hpp.

References name_.

const t_string& unit_race::plural_name (  )  const [inline]

Definition at line 39 of file race.hpp.

References plural_name_.

const t_string& unit_race::description (  )  const [inline]

Definition at line 40 of file race.hpp.

References description_.

std::string unit_race::generate_name ( unit_race::GENDER  gender,
simple_rng rng = 0 
) const

Definition at line 185 of file race.cpp.

References chain_size_, markov_generate_name(), next_, and utils::wstring_to_string().

Referenced by unit::generate_name(), and generate_name().

bool unit_race::uses_global_traits (  )  const

Definition at line 192 of file race.cpp.

References global_traits_.

Referenced by unit_type::build_full().

const config::child_list & unit_race::additional_traits (  )  const

Definition at line 197 of file race.cpp.

References traits_.

Referenced by unit_type::build_full().

unsigned int unit_race::num_traits (  )  const

Definition at line 202 of file race.cpp.

References ntraits_.

Referenced by unit_type::num_traits().


Member Data Documentation

std::string unit_race::id_ [private]

Definition at line 50 of file race.hpp.

Referenced by id(), and unit_race().

t_string unit_race::name_[NUM_GENDERS] [private]

Definition at line 51 of file race.hpp.

Referenced by name(), and unit_race().

Definition at line 52 of file race.hpp.

Referenced by plural_name(), and unit_race().

Definition at line 53 of file race.hpp.

Referenced by description().

unsigned int unit_race::ntraits_ [private]

Definition at line 54 of file race.hpp.

Referenced by num_traits().

markov_prefix_map unit_race::next_[NUM_GENDERS] [private]

Definition at line 55 of file race.hpp.

Referenced by generate_name(), and unit_race().

int unit_race::chain_size_ [private]

Definition at line 56 of file race.hpp.

Referenced by generate_name(), and unit_race().

Definition at line 58 of file race.hpp.

Referenced by additional_traits().

bool unit_race::global_traits_ [private]

Definition at line 59 of file race.hpp.

Referenced by uses_global_traits().


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

Generated by doxygen 1.5.5 on 23 May 2008 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs