14 #ifndef __INCLUDED_SCOPIRA_CORE_OBJECTTYPE_H__ 15 #define __INCLUDED_SCOPIRA_CORE_OBJECTTYPE_H__ 19 #include <scopira/tool/object.h> 20 #include <scopira/tool/objflowloader.h> 21 #include <scopira/tool/iterator.h> 22 #include <scopira/tool/export.h> 23 #include <scopira/core/register.h> 41 typedef std::vector<objecttype*> parents_t;
42 typedef std::vector<scopira::tool::count_ptr<objecttype> > childs_t;
51 copyfunc_t dm_copyfunc;
55 SCOPIRA_EXPORT
objecttype(
const std::string &name, copyfunc_t cp);
62 const std::string &
get_name(
void)
const {
return dm_name; }
75 SCOPIRA_EXPORT
void add_child(objecttype *d);
95 SCOPIRA_EXPORT objecttype *
find(
const std::string & _name);
103 SCOPIRA_EXPORT
bool is_base(
const objecttype *d)
const;
110 SCOPIRA_EXPORT
int base_depth(
const objecttype *d)
const;
117 SCOPIRA_EXPORT
void print_tree(
int indent = 0);
Definition: objecttype.h:38
Definition: archiveflow.h:20
objecttype_iterator get_child_iterator(void)
void add_child(objecttype *d)
bool is_base(const objecttype *d) const
objecttype_iterator get_parent_iterator(void)
objecttype(const std::string &name, copyfunc_t cp)
ctor
bool has_copyfunc(void) const
Definition: objecttype.h:69
int base_depth(const objecttype *d) const
CT * load_copy(const scopira::tool::object *src) const
internal
Definition: objecttype.h:121
virtual void print_tree_this(int indent)
internal
objecttype * find(const std::string &_name)
void print_tree(int indent=0)
const std::string & get_name(void) const
Definition: objecttype.h:62