- Timestamp:
- Dec 28, 2007, 2:41:13 AM (17 years ago)
- Location:
- code/branches/FICN/src/orxonox/core
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/FICN/src/orxonox/core/ConfigValueContainer.cc
r704 r705 45 45 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, int defvalue) 46 46 { 47 this->bAddedDescription_ = false; 47 48 this->classname_ = classname; 48 49 this->varname_ = varname; … … 66 67 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, unsigned int defvalue) 67 68 { 69 this->bAddedDescription_ = false; 68 70 this->classname_ = classname; 69 71 this->varname_ = varname; … … 87 89 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, char defvalue) 88 90 { 91 this->bAddedDescription_ = false; 89 92 this->classname_ = classname; 90 93 this->varname_ = varname; … … 108 111 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, unsigned char defvalue) 109 112 { 113 this->bAddedDescription_ = false; 110 114 this->classname_ = classname; 111 115 this->varname_ = varname; … … 129 133 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, float defvalue) 130 134 { 135 this->bAddedDescription_ = false; 131 136 this->classname_ = classname; 132 137 this->varname_ = varname; … … 150 155 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, double defvalue) 151 156 { 157 this->bAddedDescription_ = false; 152 158 this->classname_ = classname; 153 159 this->varname_ = varname; … … 171 177 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, long double defvalue) 172 178 { 179 this->bAddedDescription_ = false; 173 180 this->classname_ = classname; 174 181 this->varname_ = varname; … … 192 199 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, bool defvalue) 193 200 { 201 this->bAddedDescription_ = false; 194 202 this->classname_ = classname; 195 203 this->varname_ = varname; … … 217 225 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, const std::string& defvalue) 218 226 { 227 this->bAddedDescription_ = false; 219 228 this->classname_ = classname; 220 229 this->varname_ = varname; … … 237 246 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, const char* defvalue) 238 247 { 248 this->bAddedDescription_ = false; 239 249 this->classname_ = classname; 240 250 this->varname_ = varname; … … 257 267 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, Ogre::Vector2 defvalue) 258 268 { 269 this->bAddedDescription_ = false; 259 270 this->classname_ = classname; 260 271 this->varname_ = varname; … … 283 294 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, Ogre::Vector3 defvalue) 284 295 { 296 this->bAddedDescription_ = false; 285 297 this->classname_ = classname; 286 298 this->varname_ = varname; … … 309 321 ConfigValueContainer::ConfigValueContainer(const std::string& classname, const std::string& varname, Ogre::ColourValue defvalue) 310 322 { 323 this->bAddedDescription_ = false; 311 324 this->classname_ = classname; 312 325 this->varname_ = varname; … … 897 910 898 911 /** 899 * @paramWrites the content of the list, containing all lines of the config-file, into the config-file.900 *@param filename The name of the config-file901 912 @brief Writes the content of the list, containing all lines of the config-file, into the config-file. 913 @param filename The name of the config-file 914 */ 902 915 void ConfigValueContainer::writeConfigFile(const std::string& filename) 903 916 { … … 925 938 file.close(); 926 939 } 940 941 /** 942 @brief Adds a description to the config-value. 943 @param description The description 944 */ 945 void ConfigValueContainer::description(const std::string& description) 946 { 947 if (!this->bAddedDescription_) 948 { 949 this->description_ = std::string("ConfigValueDescription::" + this->classname_ + "::" + this->varname_); 950 Language::getLanguage().addEntry(description_, description); 951 this->bAddedDescription_ = true; 952 } 953 } 927 954 } -
code/branches/FICN/src/orxonox/core/ConfigValueContainer.h
r704 r705 51 51 #include "OgreVector3.h" 52 52 #include "OgreColourValue.h" 53 #include "Language.h" 53 54 54 55 namespace orxonox … … 105 106 106 107 /** @returns the value. @param value This is only needed to determine the right type. */ 107 inline int getValue(int value) { return this->value_.value_int_; }108 inline ConfigValueContainer& getValue(int& value) { value = this->value_.value_int_; return *this; } 108 109 /** @returns the value. @param value This is only needed to determine the right type. */ 109 inline unsigned int getValue(unsigned int value) { return this->value_.value_uint_; }110 inline ConfigValueContainer& getValue(unsigned int& value) { value = this->value_.value_uint_; return *this; } 110 111 /** @returns the value. @param value This is only needed to determine the right type. */ 111 inline char getValue(char value) { return this->value_.value_char_; }112 inline ConfigValueContainer& getValue(char& value) { value = this->value_.value_char_; return *this; } 112 113 /** @returns the value. @param value This is only needed to determine the right type. */ 113 inline unsigned char getValue(unsigned char value) { return this->value_.value_uchar_; }114 inline ConfigValueContainer& getValue(unsigned char& value) { value = this->value_.value_uchar_; return *this; } 114 115 /** @returns the value. @param value This is only needed to determine the right type. */ 115 inline float getValue(float value) { return this->value_.value_float_; }116 inline ConfigValueContainer& getValue(float& value) { value = this->value_.value_float_; return *this; } 116 117 /** @returns the value. @param value This is only needed to determine the right type. */ 117 inline double getValue(double value) { return this->value_.value_double_; }118 inline ConfigValueContainer& getValue(double& value) { value = this->value_.value_double_; return *this; } 118 119 /** @returns the value. @param value This is only needed to determine the right type. */ 119 inline double getValue(long double value) { return this->value_.value_long_double_; }120 inline ConfigValueContainer& getValue(long double& value) { value = this->value_.value_long_double_; return *this; } 120 121 /** @returns the value. @param value This is only needed to determine the right type. */ 121 inline bool getValue(bool value) { return this->value_.value_bool_; }122 inline ConfigValueContainer& getValue(bool& value) { value = this->value_.value_bool_; return *this; } 122 123 /** @returns the value. @param value This is only needed to determine the right type. */ 123 inline const std::string& getValue(const std::string& value) { return this->value_string_; }124 inline ConfigValueContainer& getValue(std::string& value) { value = this->value_string_; return *this; } 124 125 /** @returns the value. @param value This is only needed to determine the right type. */ 125 inline const char* getValue(const char* value) { return this->value_string_.c_str(); }126 inline ConfigValueContainer& getValue(const char* value) { value = this->value_string_.c_str(); return *this; } 126 127 /** @returns the value. @param value This is only needed to determine the right type. */ 127 inline Ogre::Vector2 getValue(const Ogre::Vector2& value) { return this->value_vector2_; }128 inline ConfigValueContainer& getValue(Ogre::Vector2& value) { value = this->value_vector2_; return *this; } 128 129 /** @returns the value. @param value This is only needed to determine the right type. */ 129 inline Ogre::Vector3 getValue(const Ogre::Vector3& value) { return this->value_vector3_; }130 inline ConfigValueContainer& getValue(Ogre::Vector3& value) { value = this->value_vector3_; return *this; } 130 131 /** @returns the value. @param value This is only needed to determine the right type. */ 131 inline Ogre::ColourValue getValue(const Ogre::ColourValue& value) { return this->value_colourvalue_; } 132 inline ConfigValueContainer& getValue(Ogre::ColourValue& value) { value = this->value_colourvalue_; return *this; } 133 134 void description(const std::string& description); 132 135 133 136 bool parseSting(const std::string& input); … … 186 189 187 190 VariableType type_; //!< The type of the variable 191 bool bAddedDescription_; //!< True if a description was added 192 LanguageEntryName description_; //!< The description 188 193 }; 189 194 } -
code/branches/FICN/src/orxonox/core/CoreIncludes.h
r704 r705 141 141 this->getIdentifier()->setConfigValueContainer(#varname, container##varname); \ 142 142 } \ 143 varname =container##varname->getValue(varname)143 container##varname->getValue(varname) 144 144 145 145 /** … … 152 152 { \ 153 153 container##varname##reset->resetConfigValue(); \ 154 varname =container##varname##reset->getValue(varname); \154 container##varname##reset->getValue(varname); \ 155 155 } \ 156 156 else \ -
code/branches/FICN/src/orxonox/core/CorePrereqs.h
r684 r705 79 79 template <class T> 80 80 class Iterator; 81 class Language; 82 class LanguageEntry; 81 83 class MetaObjectList; 82 84 template <class T>
Note: See TracChangeset
for help on using the changeset viewer.