Panda3D
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes
TypeRegistryNode Class Reference

This is a single entry in the TypeRegistry. More...

#include "typeRegistryNode.h"

List of all members.

Classes

class  Inherit

Public Types

typedef vector
< TypeRegistryNode * > 
Classes

Public Member Functions

 TypeRegistryNode (TypeHandle handle, const string &name, TypeHandle &ref)
void clear_subtree ()
 Removes any subtree definition previously set up via define_subtree(), in preparation for rebuilding the subtree data.
void define_subtree ()
 Indicates that this TypeRegistryNode is the top of a subtree within the inheritance graph (typically, this indicates a multiple-inheritance node).

Static Public Member Functions

static TypeHandle get_parent_towards (const TypeRegistryNode *child, const TypeRegistryNode *base)
 Returns the first parent class of child that is a descendant of the indicated base class.
static bool is_derived_from (const TypeRegistryNode *child, const TypeRegistryNode *base)
 Returns true if the child RegistryNode represents a class that inherits directly or indirectly from the class represented by the base RegistryNode.

Public Attributes

Classes _child_classes
TypeHandle _handle
string _name
Classes _parent_classes
TypeHandle_ref

Static Public Attributes

static bool _paranoid_inheritance = false

Detailed Description

This is a single entry in the TypeRegistry.

Normally, user code will never directly access this class; this class is hidden within the TypeRegistry accessors.

Definition at line 33 of file typeRegistryNode.h.


Member Function Documentation

Removes any subtree definition previously set up via define_subtree(), in preparation for rebuilding the subtree data.

Definition at line 191 of file typeRegistryNode.cxx.

Indicates that this TypeRegistryNode is the top of a subtree within the inheritance graph (typically, this indicates a multiple-inheritance node).

Builds all the subtree_mask etc. flags for nodes at this level and below.

Definition at line 207 of file typeRegistryNode.cxx.

TypeHandle TypeRegistryNode::get_parent_towards ( const TypeRegistryNode child,
const TypeRegistryNode base 
) [static]

Returns the first parent class of child that is a descendant of the indicated base class.

Definition at line 165 of file typeRegistryNode.cxx.

References is_derived_from(), and TypeHandle::none().

bool TypeRegistryNode::is_derived_from ( const TypeRegistryNode child,
const TypeRegistryNode base 
) [static]

Returns true if the child RegistryNode represents a class that inherits directly or indirectly from the class represented by the base RegistryNode.

Definition at line 45 of file typeRegistryNode.cxx.

Referenced by get_parent_towards().


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations