00001 #ifndef SCT_IONAME_H
00002 #define SCT_IONAME_H
00003
00004 #include "LogicErrors.h"
00005
00006 namespace Sct {
00007
00008
00009 class IOName {
00010 public:
00011 IOName(const string& nameIO) throw(InvalidArgumentError);
00012 IOName(const string& uniqueID, const string& className) throw();
00013 virtual ~IOName() throw();
00014
00015 string getIOName() const throw();
00016 string getUniqueID() const throw();
00017
00018 protected:
00023 virtual void parse() throw(InvalidArgumentError) = 0;
00024
00028 virtual void construct() throw() = 0;
00029
00030 string uniqueID;
00031 string className;
00032 string nameIO;
00033 };
00034
00035 }
00036
00037 #endif //SCT_IONAME_H