--- trunk/FAS/src/extradata.cpp 2002/08/13 16:02:26 66 +++ trunk/FAS/src/extradata.cpp 2002/08/16 15:30:40 83 @@ -1,7 +1,29 @@ +/********************************************************************** +* Copyright (C) 2002-2003 by Gezelter's Group +*This program is free software; you can redistribute it and/or modify +*it under the terms of the GNU General Public License as published by +*the Free Software Foundation version 2 of the License. +* +*This program is distributed in the hope that it will be useful, +*but WITHOUT ANY WARRANTY; without even the implied warranty of +*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +*GNU General Public License for more details. +* +************************************************************************ +*Author: Teng Lin Email: tlin@nd.edu +*Date: 08/13/2002 Version: 1.0 +* +************************************************************************ +*Description: +* +***********************************************************************/ #include #include "extradata.h" -//member function for TExtraData +/*********************************************************************** +* Class TExtraData +***********************************************************************/ + TExtraData::TExtraData() { _ident = "unknown"; @@ -14,12 +36,12 @@ TExtraData::TExtraData(const TExtraData & extraData) _type = extraData._type; } -TExtraData &TExtraData::operator =(const TExtraData extraData) +TExtraData &TExtraData::operator =(const TExtraData &extraData) { if (this == &extraData) return *this; - _indet = extraData._ident; + _ident = extraData._ident; _type = extraData._type; return *this; } @@ -31,17 +53,60 @@ TEnergyData::TEnergyData() _type = TExtraDataType::ENERGY; } +/*********************************************************************** +* Class TExtraDataList +***********************************************************************/ +void TExtraDataList::AddExtraData(TExtraData *extraData) +{ + if (extraData != NULL) + { + _extraDataList.push_back(extraData); + } + +} + +void TExtraDataList::RemoveExtraData(TExtraData *extraData) +{ + vector::iterator i; + + i = find(_extraDataList.begin(), _extraDataList.end(), extraData); + + if (i != _extraDataList.end()) + { + _extraDataList.erase(i); + } + else + {//warning + + } + +} + +TExtraData *TExtraDataList::GetExtraData(int extraDataType) +{ + +} + +TExtraData *TExtraDataList::GetExtraData(string attr) +{ + +} + +/*********************************************************************** +* Class TEnergyData +***********************************************************************/ + TEnergyData::TEnergyData(const TEnergyData &energyData) : TExtraData(energyData) { _energy = energyData._energy; } -TEnergyData &TEnergyData::operator =(TEnergyData &energyData) +TEnergyData &TEnergyData::operator =(const TEnergyData &energyData) { if (this == &energyData) return *this; - TExtraData::operator =(enrgyData); - _energy = energyDataType._energy; + TExtraData::operator =(energyData); + _energy = energyData._energy; } TEnergyData::~TEnergyData() @@ -51,7 +116,7 @@ map::iterator TEnergyData::FindEnergy(int map::iterator TEnergyData::FindEnergy(int energyType) { - return find(_energy.begin(), _energy.end(), energyType); + return _energy.find(energyType); } void TEnergyData::AddEnergy(int energyType, float value) @@ -66,7 +131,7 @@ void TEnergyData::ReplaceEnergy(int energyType, float if (i != _energy.end()) { - *i = value; + (*i).second = value; } } @@ -89,10 +154,15 @@ float *TEnergyData::GetEnergy(int energyType) if (i != _energy.end()) { - return *i; + return &((*i).second); } else { return NULL; } } + +/*********************************************************************** +* Class TBitVector +***********************************************************************/ +