00001 #include <stdexcept>
00002 #include "Sti/Base/Factory.h"
00003 #include "Sti/Base/EditableParameter.h"
00004 #include "Sti/Base/EditableParameters.h"
00005
00006 EditableParameters::EditableParameters()
00007 : Parameters(),
00008 Subject()
00009 {}
00010
00011 EditableParameters::EditableParameters(const string & name, const string & description)
00012 : Parameters(name, description),
00013 Subject()
00014 {}
00015
00016 EditableParameters::EditableParameters(const EditableParameters & parameter)
00017 : Parameters(parameter.getName(), parameter.getDescription()),
00018 Subject()
00019 {}
00020
00021 EditableParameters::~EditableParameters()
00022 {}
00023
00024 const EditableParameters & EditableParameters::operator=(const EditableParameters & parameter)
00025 {
00026
00027 return *this;
00028 }
00029
00032 void EditableParameters::setDefaults()
00033 {
00034 cout << "EditableParameters::setDefaults() -I- Started" << endl;
00035 ParameterIterator iter;
00036 for (iter=begin();iter!=end();iter++)
00037 {
00038 EditableParameter * ep = static_cast<EditableParameter *>(*iter);
00039 if (ep)
00040 ep->reset();
00041 }
00042 cout << *this;
00043 cout << "EditableParameters::setDefaults() -I- Started" << endl;
00044 }
00045
00046
00047 ostream& operator<<(ostream& os, const EditableParameters&pars)
00048 {
00049 ParameterConstIterator iter;
00050 for (iter=pars.begin();iter!=pars.end();iter++)
00051 {
00052 EditableParameter * ep = static_cast<EditableParameter *>(*iter);
00053 if (ep) os << *ep;
00054 }
00055 return os;
00056 }