This is a specialization of EggNameUniquifier to generate unique names for EggGroup nodes.
More...
#include "eggGroupUniquifier.h"
List of all members.
Public Member Functions |
| | EggGroupUniquifier (bool filter_names=true) |
| | If filter_names is true, then the group names will be coerced into a fairly safe, standard convention that uses no characters other than a-z, A-Z, 0-9, and underscore.
|
| virtual string | filter_name (EggNode *node) |
| | Returns the name of the given node, or at least the name it should be.
|
|
virtual TypeHandle | force_init_type () |
| virtual string | generate_name (EggNode *node, const string &category, int index) |
| | Generates a new name for the given node when its existing name clashes with some other node.
|
| virtual string | get_category (EggNode *node) |
| | Returns the category name into which the given node should be collected, or the empty string if the node's name should be left alone.
|
|
virtual TypeHandle | get_type () const |
Static Public Member Functions |
|
static TypeHandle | get_class_type () |
| static void | init_type () |
| | This function is declared non-inline to work around a compiler bug in g++ 2.96.
|
Detailed Description
This is a specialization of EggNameUniquifier to generate unique names for EggGroup nodes.
It's not called automatically; you must invoke it yourself if you want it.
Definition at line 29 of file eggGroupUniquifier.h.
Constructor & Destructor Documentation
| EggGroupUniquifier::EggGroupUniquifier |
( |
bool |
filter_names = true | ) |
|
If filter_names is true, then the group names will be coerced into a fairly safe, standard convention that uses no characters other than a-z, A-Z, 0-9, and underscore.
If filter_names is false, the group names will be left unchanged.
Definition at line 35 of file eggGroupUniquifier.cxx.
Member Function Documentation
| string EggGroupUniquifier::filter_name |
( |
EggNode * |
node | ) |
[virtual] |
Returns the name of the given node, or at least the name it should be.
This provides a hook to adjust the name before attempting to uniquify it, if desired, for instance to remove invalid characters.
Reimplemented from EggNameUniquifier.
Definition at line 65 of file eggGroupUniquifier.cxx.
| string EggGroupUniquifier::generate_name |
( |
EggNode * |
node, |
|
|
const string & |
category, |
|
|
int |
index |
|
) |
| [virtual] |
Generates a new name for the given node when its existing name clashes with some other node.
This function will be called repeatedly, if necessary, until it returns a name that actually is unique.
The category is the string returned by get_category(), and index is a uniquely-generated number that may be useful for synthesizing the name.
Reimplemented from EggNameUniquifier.
Definition at line 111 of file eggGroupUniquifier.cxx.
| string EggGroupUniquifier::get_category |
( |
EggNode * |
node | ) |
[virtual] |
| static void EggGroupUniquifier::init_type |
( |
| ) |
[inline, static] |
The documentation for this class was generated from the following files: