00001
00002
00003
00004
00005
00006
00007
00008
00010
00011 #ifndef header_component_type
00012 #define header_component_type
00013
00014 #include <set>
00015 #include <string>
00016
00017 class CL_ComponentType
00018 {
00019 public:
00020 CL_ComponentType(bool _is_container) : container(_is_container) {;}
00021 virtual ~CL_ComponentType() {;}
00022
00023 virtual bool is_container()
00024 {
00025 return container;
00026 }
00027 virtual bool has_option(const std::string &option_name)
00028 {
00029 return options.find(option_name) != options.end();
00030 }
00031
00032 protected:
00033 bool container;
00034 std::set<std::string> options;
00035 };
00036
00037 #endif