Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Feb 13, 2006, 2:59:17 PM (18 years ago)
Author:
bensch
Message:

orxonox/trunk: removed some std::list

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/util/loading/load_param_description.cc

    r5691 r7130  
    1717
    1818#include "multi_type.h"
    19 #include "list.h"
    2019#include <stdarg.h>
    2120#include "stdlibincl.h"
     
    130129 *  A list, that holds all the classes that are loadable (classes not objects!!)
    131130 */
    132 tList<LoadClassDescription>* LoadClassDescription::classList = NULL;
     131std::list<LoadClassDescription*>* LoadClassDescription::classList = NULL;
    133132
    134133/**
     
    146145
    147146  if (LoadClassDescription::classList == NULL)
    148     LoadClassDescription::classList = new tList<LoadClassDescription>;
    149 
    150   LoadClassDescription::classList->add(this);
    151 
    152   this->paramList = new tList<LoadParamDescription>;
     147    LoadClassDescription::classList = new std::list<LoadClassDescription*>;
     148
     149  LoadClassDescription::classList->push_back(this);
    153150}
    154151
     
    158155LoadClassDescription::~LoadClassDescription()
    159156{
    160   tIterator<LoadParamDescription>* iterator = this->paramList->getIterator();
    161   LoadParamDescription* enumParamDesc = iterator->firstElement();
    162   while (enumParamDesc)
    163   {
    164     delete enumParamDesc;
    165     enumParamDesc = iterator->nextElement();
    166   }
    167   delete iterator;
    168   delete this->paramList;
     157  std::list<LoadParamDescription*>::iterator it = this->paramList.begin();
     158  while (!this->paramList.empty())
     159  {
     160    delete this->paramList.front();
     161    this->paramList.pop_front();
     162  }
    169163
    170164  delete[] this->className;
     
    175169  if (LoadClassDescription::classList != NULL)
    176170  {
    177     tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator();
    178     LoadClassDescription* delElem = iterator->firstElement();
    179     while (delElem != NULL)
    180     {
    181       delete delElem;
    182       delElem = iterator->nextElement();
    183     }
    184     delete iterator;
     171    while (!LoadClassDescription::classList->empty())
     172    {
     173      delete LoadClassDescription::classList->front();
     174      LoadClassDescription::classList->pop_front();
     175    }
    185176    delete LoadClassDescription::classList;
    186177  }
     
    200191  if (LoadClassDescription::classList != NULL)
    201192  {
    202     tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator();
    203     LoadClassDescription* enumClassDesc = iterator->firstElement();
    204     while (enumClassDesc)
    205     {
    206       if (!strcmp(enumClassDesc->className, className))
     193    std::list<LoadClassDescription*>::iterator it = LoadClassDescription::classList->begin();
     194    while (it != LoadClassDescription::classList->end())
     195    {
     196      if (!strcmp((*it)->className, className))
    207197      {
    208         delete iterator;
    209         return enumClassDesc;
    210       }
    211       enumClassDesc = iterator->nextElement();
    212     }
    213     delete iterator;
     198        return (*it);
     199      }
     200      it++;
     201    }
    214202  }
    215203  return new LoadClassDescription(className);
     
    222210LoadParamDescription* LoadClassDescription::addParam(const char* paramName)
    223211{
    224   tIterator<LoadParamDescription>* iterator = this->paramList->getIterator();
    225   LoadParamDescription* enumParamDesc = iterator->firstElement();
    226   while (enumParamDesc)
    227   {
    228     if (!strcmp(enumParamDesc->paramName, paramName))
    229     {
    230       delete iterator;
    231           //return enumParamDesc;
     212  std::list<LoadParamDescription*>::iterator it = this->paramList.begin();
     213  while (it != this->paramList.end())
     214  {
     215    if (!strcmp((*it)->paramName, paramName))
     216    {
    232217      return NULL;
    233218    }
    234     enumParamDesc = iterator->nextElement();
    235   }
    236   delete iterator;
     219    it++;
     220  }
    237221
    238222  LoadParamDescription* newParam = new LoadParamDescription(paramName);
    239223
    240   this->paramList->add(newParam);
     224  this->paramList.push_back(newParam);
    241225  return newParam;
    242226}
     
    253237  if (LoadClassDescription::classList != NULL)
    254238  {
    255     tIterator<LoadClassDescription>* classIT = LoadClassDescription::classList->getIterator();
    256     LoadClassDescription* enumClassDesc = classIT->firstElement();
    257     while (enumClassDesc)
    258     {
    259       PRINT(3)("<%s>\n", enumClassDesc->className);
    260       tIterator<LoadParamDescription>* paramIT = enumClassDesc->paramList->getIterator();
    261       LoadParamDescription* enumParamDesc = paramIT->firstElement();
    262       while (enumParamDesc)
     239    std::list<LoadClassDescription*>::iterator classDesc = LoadClassDescription::classList->begin();
     240    while (classDesc != LoadClassDescription::classList->end())
     241    {
     242      PRINT(3)("<%s>\n", (*classDesc)->className);
     243      std::list<LoadParamDescription*>::iterator param = (*classDesc)->paramList.begin();
     244      while (param != (*classDesc)->paramList.end())
    263245      {
    264         enumParamDesc->print();
    265         enumParamDesc = paramIT->nextElement();
    266       }
    267       delete paramIT;
    268 
    269       PRINT(3)("</%s>\n\n", enumClassDesc->className);
    270       enumClassDesc = classIT->nextElement();
    271     }
    272     delete classIT;
     246        (*param)->print();
     247        param++;
     248      }
     249      PRINT(3)("</%s>\n\n", (*classDesc)->className);
     250      classDesc++;
     251    }
    273252  }
    274253  else
     
    283262 * !! The strings MUST NOT be deleted !!
    284263 */
    285 tList<const char>* LoadClassDescription::searchClassWithShort(const char* classNameBegin)
    286 {
    287   unsigned int searchLength = strlen(classNameBegin);
    288   tList<const char>* retVal = new tList<const char>;
     264std::list<const char*> LoadClassDescription::searchClassWithShort(const char* classNameBegin)
     265{
     266  /// FIXME
     267  // NOT USED
     268/*  unsigned int searchLength = strlen(classNameBegin);
     269  std::list<const char*> retVal;
    289270
    290271  tIterator<LoadClassDescription>* iterator = LoadClassDescription::classList->getIterator();
     
    301282  delete iterator;
    302283
    303   return retVal;
    304 }
     284  return retVal;*/
     285}
Note: See TracChangeset for help on using the changeset viewer.