54 #ifndef _GAMS_UTILITY_CONTAINERIZE_H_ 55 #define _GAMS_UTILITY_CONTAINERIZE_H_ 61 #include "madara/knowledge/KnowledgeBase.h" 88 std::string get_name ()
const;
94 void set_name (
const std::string& n);
99 void set_knowledge_base (madara::knowledge::KnowledgeBase* kb);
111 void to_container (
const std::string& name =
"");
118 void to_container (madara::knowledge::KnowledgeBase& kb,
119 const std::string& name =
"");
126 bool from_container (
const std::string& name =
"");
134 bool from_container (
135 madara::knowledge::KnowledgeBase& kb,
136 const std::string& name =
"");
156 REGION_TYPE_ID = 0x00000001,
157 PRIORITIZED_REGION_TYPE_ID = 0x00000002,
158 SEARCH_AREA_TYPE_ID = 0x00000004,
159 INVALID = 0x80000000,
169 bool is_valid_type (madara::knowledge::KnowledgeBase& kb,
170 const std::string& name,
const Class_ID& expected)
const;
178 static Class_ID get_type (madara::knowledge::KnowledgeBase& kb,
179 const std::string& name);
188 virtual bool check_valid_type (
189 madara::knowledge::KnowledgeBase& kb,
190 const std::string& name)
const = 0;
197 virtual void to_container_impl (
198 madara::knowledge::KnowledgeBase& kb,
199 const std::string& name) = 0;
206 virtual bool from_container_impl (
207 madara::knowledge::KnowledgeBase& kb,
208 const std::string& name) = 0;
213 #endif // _GAMS_UTILITY_CONTAINERIZE_H_ static const std::string object_type_suffix_
object type suffix
std::string name_
name of this object
A class meant to assist with retrieving information into GAMS containers.
Contains all GAMS-related tools, classes and code.
madara::knowledge::KnowledgeBase * prev_kb_
previous knowledge base used for sending objects
Class_ID
These are used to check on the type of the object in from_container.