Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 5545 in orxonox.OLD for trunk/src/lib/util


Ignore:
Timestamp:
Nov 11, 2005, 4:32:28 PM (19 years ago)
Author:
bensch
Message:

orxonox/trunk: renaming of BaseLoadParam to LoadParamBase

Location:
trunk/src/lib/util
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/lib/util/multi_type.cc

    r5544 r5545  
    1717
    1818#include "multi_type.h"
    19 #include <stddef.h>
    20 #include <stdlib.h>
    21 #include <string.h>
    22 #include <stdio.h>
     19#include "stdincl.h"
     20// #include <stddef.h>
     21// #include <stdlib.h>
     22// #include <string.h>
     23// #include <stdio.h>
    2324
    2425using namespace std;
    2526
     27/**
     28 * creates a multiType without any stored value at all.
     29 */
    2630MultiType::MultiType()
    2731{
     
    3034}
    3135
    32 
     36/**
     37 * creates a multiType out of a boolean
     38 * @param value the Value of this MulitType
     39 */
    3340MultiType::MultiType(bool value)
    3441{
     
    3744}
    3845
     46/**
     47 * creates a multiType out of an integer
     48 * @param value the Value of this MulitType
     49 */
    3950MultiType::MultiType(int value)
    4051{
     
    4354}
    4455
    45 
     56/**
     57 * creates a multiType out of a float (double)
     58 * @param value the Value of this MulitType
     59 */
    4660MultiType::MultiType(double value)
    4761{
     
    5064}
    5165
    52 
     66/**
     67 * creates a multiType out of a char
     68 * @param value the Value of this MulitType
     69 */
    5370MultiType::MultiType(char value)
    5471{
     
    5774}
    5875
    59 
     76/**
     77 * creates a multiType out of a String
     78 * @param value the Value of this MulitType
     79 */
    6080MultiType::MultiType(const char* value)
    6181{
     
    91111}
    92112
     113/**
     114 * initializes the MultiType
     115 */
    93116void MultiType::init()
    94117{
     
    104127}
    105128
     129/**
     130 * sets a new Value to the MultiType
     131 * @param value the new Value as a bool
     132 */
    106133void MultiType::setBool(bool value)
    107134{
     
    110137}
    111138
    112 
     139/**
     140 * sets a new Value to the MultiType
     141 * @param value the new Value as an int
     142 */
    113143void MultiType::setInt(int value)
    114144{
     
    117147}
    118148
    119 
     149/**
     150 * sets a new Value to the MultiType
     151 * @param value the new Value as a float
     152 */
    120153void MultiType::setFloat(float value)
    121154{
     
    125158}
    126159
    127 
     160/**
     161 * sets a new Value to the MultiType
     162 * @param value the new Value as a char
     163 */
    128164void MultiType::setChar(char value)
    129165{
     
    132168}
    133169
    134 
     170/**
     171 * sets a new Value to the MultiType
     172 * @param value the new Value as a String
     173 */
    135174void MultiType::setString(const char* value)
    136175{
    137176  this->type = MT_STRING;
    138   this->value.String = new char[strlen(value)+1];
    139   strcpy(this->value.String, value);
    140 
    141   this->storedString = this->value.String;
    142 }
    143 
    144 
    145 
    146 
    147 
    148 
     177
     178  if (this->storedString != NULL)
     179    delete[] this->storedString;
     180  this->storedString = new char[strlen(value)+1];
     181  strcpy(storedString, value);
     182
     183  this->value.String = this->storedString;
     184}
     185
     186
     187
     188
     189
     190/**
     191 * @returns the Value of this MultiType as a int
     192 */
    149193bool MultiType::getBool() const
    150194{
     
    161205}
    162206
    163 
     207/**
     208 * @returns the Value of this MultiType as a int
     209 */
    164210int MultiType::getInt() const
    165211{
     
    182228}
    183229
    184 
     230/**
     231 * @returns the Value of this MultiType as a float
     232 */
    185233float MultiType::getFloat() const
    186234{
     
    204252
    205253
     254/**
     255 * @returns the Value of this MultiType as a char
     256 */
    206257char MultiType::getChar() const
    207258{
     
    217268}
    218269
     270/**
     271 * @returns the Value of this MultiType as a String
     272 */
    219273const char* MultiType::getString()
    220274{
     
    253307}
    254308
    255 
     309/**
     310 * prints out some nice debug output
     311 */
    256312void MultiType::debug()
    257313{
     
    268324}
    269325
     326/**
     327 * converts a MT_Type into a String
     328 * @param type: the MT_Type
     329 * @returns: the Type as a constant String (do not delete)
     330 */
    270331const char* MultiType::MultiTypeToString(MT_Type type)
    271332{
     
    287348}
    288349
     350/**
     351 * converts a String into a MT_Type
     352 * @param type: the Type as a String
     353 * @returns: the Type as MT_Type
     354 */
    289355MT_Type MultiType::StringToMultiType(const char* type)
    290356{
  • trunk/src/lib/util/multi_type.h

    r5544 r5545  
    22 * @file multi_type.h
    33 * @brief Definition of ...
    4 */
     4 */
    55
    66#ifndef _MULTI_TYPE_H
     
    2929class MultiType {
    3030
    31  public:
    32    MultiType();
    33    MultiType(bool value);
    34    MultiType(int value);
    35    MultiType(double value);
    36    MultiType(char value);
    37    MultiType(const char* value);
    38    virtual ~MultiType();
    39    void init();
     31  public:
     32    MultiType();
     33    MultiType(bool value);
     34    MultiType(int value);
     35    MultiType(double value);
     36    MultiType(char value);
     37    MultiType(const char* value);
     38    virtual ~MultiType();
    4039
    41    MultiType operator= (const MultiType& mt);
     40    MultiType operator= (const MultiType& mt);
    4241
    43    void setType(MT_Type);
     42    void setType(MT_Type);
    4443
    45    void setBool(bool value);
    46    void setInt(int value);
    47    void setFloat(float value);
    48    void setChar(char value);
    49    void setString(const char* value);
     44    void setBool(bool value);
     45    void setInt(int value);
     46    void setFloat(float value);
     47    void setChar(char value);
     48    void setString(const char* value);
    5049
    51    inline void setValue(bool value) { this->setBool(value); };
    52    inline void setValue(int value) { this->setInt(value); };
    53    inline void setValue(float value) { this->setFloat(value); };
    54    inline void setValue(char value) { this->setChar(value); };
    55    inline void setValue(const char* value) { this->setString(value); };
     50    inline void setValue(bool value) { this->setBool(value); };
     51    inline void setValue(int value) { this->setInt(value); };
     52    inline void setValue(float value) { this->setFloat(value); };
     53    inline void setValue(char value) { this->setChar(value); };
     54    inline void setValue(const char* value) { this->setString(value); };
    5655
    57   /** @returns the Type of the Value stored in this MultiType */
    58   inline MT_Type getType() const { return this->type; };
     56    /** @returns the Type of the Value stored in this MultiType */
     57    inline MT_Type getType() const { return this->type; };
    5958
    60   bool getBool() const;
    61   int getInt() const;
    62   float getFloat() const;
    63   char getChar() const;
    64   const char* getString();
     59    bool getBool() const;
     60    int getInt() const;
     61    float getFloat() const;
     62    char getChar() const;
     63    const char* getString();
    6564
    6665
    67   void debug();
     66    void debug();
    6867
    69   static const char* MultiTypeToString(MT_Type type);
    70   static MT_Type StringToMultiType(const char* type);
     68    static const char* MultiTypeToString(MT_Type type);
     69    static MT_Type StringToMultiType(const char* type);
    7170
    72  private:
    73    MT_Type             type;
    74    union Type
    75    {
    76      bool              Bool;
    77      int               Int;
    78      float             Float;
    79      char              Char;
    80      char*             String;
     71  private:
     72    void init();
    8173
    82    }                   value;
    8374
    84    char*               storedString;
     75  private:
     76    MT_Type             type;
     77    union Type
     78    {
     79      bool              Bool;
     80      int               Int;
     81      float             Float;
     82      char              Char;
     83      char*             String;
     84
     85    }                   value;
     86
     87    char*               storedString;
    8588};
    8689
Note: See TracChangeset for help on using the changeset viewer.