14 #ifndef EGGNAMEUNIQUIFIER_H
15 #define EGGNAMEUNIQUIFIER_H
68 EggNode *get_node(
const std::string &category,
const std::string &name)
const;
69 bool has_name(
const std::string &category,
const std::string &name)
const;
70 bool add_name(
const std::string &category,
const std::string &name,
73 virtual std::string get_category(
EggNode *node)=0;
74 virtual std::string filter_name(
EggNode *node);
75 virtual std::string generate_name(
EggNode *node,
76 const std::string &category,
int index);
90 static void init_type() {
91 EggObject::init_type();
93 EggObject::get_class_type());
96 return get_class_type();
98 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
This is a handy class for guaranteeing unique node names in an egg hierarchy.
A base class for things that may be directly added into the egg hierarchy.
The highest-level base class in the egg directory.
TypeHandle is the identifier used to differentiate C++ class types.
This is our own Panda specialization on the default STL map.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...