00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
#ifndef _CATTRIBUTELIST
00024
#define _CATTRIBUTELIST
00025
#include "libMRML/include/uses-declarations.h"
00026
#include <map>
00027
#include <list>
00028
#include <string>
00029
#include "libMRML/include/CMagic.h"
00030
00031
00034 class CAttributeList:
public map<string,pair<char*,char*> >,
public CMagic{
00035
public:
00037
void check()
const;
00039 list<string>
getKeys()
const;
00041
typedef map<string,pair<char*,char*> > CBase;
00043
CAttributeList(
const char*
const *
const inAttributeList);
00045
CAttributeList(
const list<pair <string,string> >& inAttributes);
00047
CAttributeList(
const CAttributeList& inList);
00049 const_iterator
find(string inString)
const;
00051
void add(
const string& inFirst,
00052
const string& inSecond);
00054
void add(
const string& inAttribute,
long inValue);
00056
void add(
const string& inAttribute,
double inValue);
00063 pair<bool,bool>
boolReadAttribute(
const string& inAttribute)
const;
00065 pair<bool,long>
longReadAttribute(
const string& inAttribute)
const;
00067 pair<bool,double>
doubleReadAttribute(
const string& inAttribute)
const;
00077
virtual pair<bool,string>
stringReadAttribute(
const string& inAttribute)
const;
00080
void CAttributeList::toXML(string& outString)
const;
00084
~CAttributeList();
00085 };
00086
#endif