Panda3D
Classes | Public Member Functions | Static Public Member Functions | Friends
ConfigDeclaration Class Reference

A single declaration of a config variable, typically defined as one line in a .prc file, e.g. More...

#include "configDeclaration.h"

Inheritance diagram for ConfigDeclaration:
ConfigFlags

List of all members.

Classes

class  Word

Public Member Functions

bool get_bool_word (int n) const
 Returns the boolean value of the nth word of the declaration's value, or false if there is no nth value.
int get_decl_seq () const
 Returns the sequence number of the declaration within the page.
double get_double_word (int n) const
 Returns the integer value of the nth word of the declaration's value, or 0 if there is no nth value.
PN_int64 get_int64_word (int n) const
 Returns the int64 value of the nth word of the declaration's value, or 0 if there is no nth value.
int get_int_word (int n) const
 Returns the integer value of the nth word of the declaration's value, or 0 if there is no nth value.
int get_num_words () const
 Returns the number of words in the declaration's value.
ConfigPageget_page () const
 Returns the page on which this declaration can be found.
const string & get_string_value () const
 Returns the value assigned to this variable.
string get_string_word (int n) const
 Returns the string value of the nth word of the declaration's value, or empty string if there is no nth value.
ConfigVariableCoreget_variable () const
 Returns the variable that this declaration names.
bool has_bool_word (int n) const
 Returns true if the declaration's value has a valid boolean value for the nth word.
bool has_double_word (int n) const
 Returns true if the declaration's value has a valid integer value for the nth word.
bool has_int64_word (int n) const
 Returns true if the declaration's value has a valid int64 value for the nth word.
bool has_int_word (int n) const
 Returns true if the declaration's value has a valid integer value for the nth word.
bool has_string_word (int n) const
 Returns true if the declaration's value has a valid string value for the nth word.
bool operator< (const ConfigDeclaration &other) const
 Sorts two declarations in order based on the order in which their respective pages were loaded, and the order in which they appear within the same page.
void output (ostream &out) const
void set_bool_word (int n, bool value)
 Changes the nth word to the indicated value without affecting the other words.
void set_double_word (int n, double value)
 Changes the nth word to the indicated value without affecting the other words.
void set_int64_word (int n, PN_int64 value)
 Changes the nth word to the indicated value without affecting the other words.
void set_int_word (int n, int value)
 Changes the nth word to the indicated value without affecting the other words.
void set_string_value (const string &value)
 Changes the value assigned to this variable.
void set_string_word (int n, const string &value)
 Changes the nth word to the indicated value without affecting the other words.
void write (ostream &out) const

Static Public Member Functions

static string downcase (const string &s)
 Returns the input string with all uppercase letters converted to lowercase.
static int extract_words (const string &str, vector_string &words)
 Divides the string into a number of words according to whitespace.

Friends

class ConfigPage

Detailed Description

A single declaration of a config variable, typically defined as one line in a .prc file, e.g.

"show-frame-rate-meter 1". This is really just a pairing of a string name (actually, a ConfigVariableCore pointer) to a string value.

Definition at line 36 of file configDeclaration.h.


Member Function Documentation

string ConfigDeclaration::downcase ( const string &  s) [static]

Returns the input string with all uppercase letters converted to lowercase.

Definition at line 446 of file configDeclaration.cxx.

int ConfigDeclaration::extract_words ( const string &  str,
vector_string &  words 
) [static]

Divides the string into a number of words according to whitespace.

The words vector should be cleared by the user before calling; otherwise, the list of words in the string will be appended to the end of whatever was there before.

The return value is the number of words extracted.

Definition at line 416 of file configDeclaration.cxx.

Referenced by ConfigPageManager::reload_implicit_pages().

bool ConfigDeclaration::get_bool_word ( int  n) const [inline]

Returns the boolean value of the nth word of the declaration's value, or false if there is no nth value.

See also has_bool_word().

Definition at line 196 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::get_bool_word(), and ConfigVariableBool::get_default_value().

int ConfigDeclaration::get_decl_seq ( ) const [inline]

Returns the sequence number of the declaration within the page.

Sequence numbers are assigned as each declaration is created; each declaration is given a higher sequence number than all the declarations created in the page before it.

Definition at line 271 of file configDeclaration.I.

Referenced by operator<().

double ConfigDeclaration::get_double_word ( int  n) const [inline]

Returns the integer value of the nth word of the declaration's value, or 0 if there is no nth value.

See also has_double_word().

Definition at line 250 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariableDouble::get_default_value(), and ConfigVariable::get_double_word().

PN_int64 ConfigDeclaration::get_int64_word ( int  n) const [inline]

Returns the int64 value of the nth word of the declaration's value, or 0 if there is no nth value.

See also has_int64_word().

Definition at line 232 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariableInt64::get_default_value(), and ConfigVariable::get_int64_word().

int ConfigDeclaration::get_int_word ( int  n) const [inline]

Returns the integer value of the nth word of the declaration's value, or 0 if there is no nth value.

See also has_int_word().

Definition at line 214 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariableInt::get_default_value(), and ConfigVariable::get_int_word().

int ConfigDeclaration::get_num_words ( ) const [inline]

Returns the number of words in the declaration's value.

A word is defined as a sequence of non-whitespace characters delimited by whitespace.

Definition at line 90 of file configDeclaration.I.

Referenced by ConfigVariable::get_num_words().

Returns the page on which this declaration can be found.

Definition at line 41 of file configDeclaration.I.

Referenced by ConfigVariableManager::list_unused_variables(), and operator<().

const string & ConfigDeclaration::get_string_value ( ) const [inline]
string ConfigDeclaration::get_string_word ( int  n) const [inline]

Returns the string value of the nth word of the declaration's value, or empty string if there is no nth value.

See also has_string_word().

Definition at line 181 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::get_string_word().

Returns the variable that this declaration names.

This variable may or may not have been defined by the time the declaration is read.

Definition at line 53 of file configDeclaration.I.

bool ConfigDeclaration::has_bool_word ( int  n) const [inline]

Returns true if the declaration's value has a valid boolean value for the nth word.

Definition at line 120 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::has_bool_word().

bool ConfigDeclaration::has_double_word ( int  n) const [inline]

Returns true if the declaration's value has a valid integer value for the nth word.

Definition at line 165 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::has_double_word().

bool ConfigDeclaration::has_int64_word ( int  n) const [inline]

Returns true if the declaration's value has a valid int64 value for the nth word.

Definition at line 150 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::has_int64_word().

bool ConfigDeclaration::has_int_word ( int  n) const [inline]

Returns true if the declaration's value has a valid integer value for the nth word.

Definition at line 135 of file configDeclaration.I.

References has_string_word().

Referenced by ConfigVariable::has_int_word().

bool ConfigDeclaration::has_string_word ( int  n) const [inline]

Returns true if the declaration's value has a valid string value for the nth word.

This is really the same thing as asking if there are at least n words in the value.

Definition at line 106 of file configDeclaration.I.

Referenced by get_bool_word(), get_double_word(), get_int64_word(), get_int_word(), get_string_word(), has_bool_word(), has_double_word(), has_int64_word(), has_int_word(), and ConfigVariable::has_string_word().

bool ConfigDeclaration::operator< ( const ConfigDeclaration other) const [inline]

Sorts two declarations in order based on the order in which their respective pages were loaded, and the order in which they appear within the same page.

Definition at line 24 of file configDeclaration.I.

References get_decl_seq(), and get_page().

void ConfigDeclaration::set_bool_word ( int  n,
bool  value 
)

Changes the nth word to the indicated value without affecting the other words.

Definition at line 94 of file configDeclaration.cxx.

References ConfigFlags::invalidate_cache(), and set_string_word().

Referenced by ConfigVariable::set_bool_word().

void ConfigDeclaration::set_double_word ( int  n,
double  value 
)

Changes the nth word to the indicated value without affecting the other words.

Definition at line 147 of file configDeclaration.cxx.

References ConfigFlags::invalidate_cache(), and set_string_word().

Referenced by ConfigVariable::set_double_word().

void ConfigDeclaration::set_int64_word ( int  n,
PN_int64  value 
)

Changes the nth word to the indicated value without affecting the other words.

Definition at line 130 of file configDeclaration.cxx.

References ConfigFlags::invalidate_cache(), and set_string_word().

void ConfigDeclaration::set_int_word ( int  n,
int  value 
)

Changes the nth word to the indicated value without affecting the other words.

Definition at line 113 of file configDeclaration.cxx.

References ConfigFlags::invalidate_cache(), and set_string_word().

Referenced by ConfigVariable::set_int64_word(), and ConfigVariable::set_int_word().

void ConfigDeclaration::set_string_value ( const string &  value) [inline]

Changes the value assigned to this variable.

Definition at line 76 of file configDeclaration.I.

References ConfigFlags::invalidate_cache().

Referenced by ConfigVariableCore::set_default_value(), and ConfigVariable::set_string_value().

void ConfigDeclaration::set_string_word ( int  n,
const string &  value 
)

Changes the nth word to the indicated value without affecting the other words.

Definition at line 60 of file configDeclaration.cxx.

References ConfigFlags::invalidate_cache().

Referenced by set_bool_word(), set_double_word(), set_int64_word(), set_int_word(), and ConfigVariable::set_string_word().


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations