#include <cullableObject.h>
Public Member Functions | |
CullableObject (CullableObject *next=NULL) | |
Creates an empty CullableObject whose pointers can be filled in later. | |
CullableObject (const CullTraverserData &data, GeomNode *geom_node, int i, CullableObject *next=NULL) | |
Creates a CullableObject based on the ith Geom from the indicated GeomNode, with the render state from the indicated CullTraverserData. | |
CullableObject (Geom *geom, const RenderState *state, const TransformState *transform, CullableObject *next=NULL) | |
Creates a CullableObject based the indicated geom, with the indicated render state and transform. | |
CullableObject (const CullableObject ©) | |
Copies the CullableObject, but does not copy its children (decals). | |
void | operator= (const CullableObject ©) |
Copies the CullableObject, but does not copy its children (decals). | |
bool | has_decals () const |
Returns true if the object has one or more decals placed on it, false otherwise. | |
~CullableObject () | |
Automatically deletes the whole chain of these things. | |
void * | operator new (size_t size) |
Allocates the memory for a new CullableObject. | |
void | operator delete (void *ptr) |
Frees the memory for a deleted CullableObject. | |
void | output (ostream &out) const |
Static Public Member Functions | |
int | get_num_ever_allocated () |
Returns the number of CullableObject pointers ever simultaneously allocated; these are now either in active use or have been recycled into the deleted CullableObject pool to be used again. | |
TypeHandle | get_class_type () |
void | init_type () |
Public Attributes | |
PointerTo< Geom > | _geom |
ConstPointerTo< RenderState > | _state |
ConstPointerTo< TransformState > | _transform |
CullableObject * | _next |
Static Private Attributes | |
CullableObject * | _deleted_chain = (CullableObject *)NULL |
int | _num_ever_allocated = 0 |
TypeHandle | _type_handle |
This is normally just a Geom and its associated state, but it also represent a number of Geoms to be drawn together, with a number of Geoms decalled onto them.
Definition at line 48 of file cullableObject.h.
|
Creates an empty CullableObject whose pointers can be filled in later.
Definition at line 33 of file cullableObject.I. References INLINE. |
|
Creates a CullableObject based on the ith Geom from the indicated GeomNode, with the render state from the indicated CullTraverserData.
Definition at line 51 of file cullableObject.I. References INLINE. |
|
Creates a CullableObject based the indicated geom, with the indicated render state and transform.
Definition at line 72 of file cullableObject.I. |
|
Copies the CullableObject, but does not copy its children (decals).
Definition at line 94 of file cullableObject.I. |
|
Automatically deletes the whole chain of these things.
Definition at line 38 of file cullableObject.cxx. |
|
Definition at line 88 of file cullableObject.h. |
|
Returns the number of CullableObject pointers ever simultaneously allocated; these are now either in active use or have been recycled into the deleted CullableObject pool to be used again.
Definition at line 197 of file cullableObject.I. |
|
Returns true if the object has one or more decals placed on it, false otherwise.
Definition at line 130 of file cullableObject.I. References _deleted_chain, _next, and INLINE. Referenced by CullResult::add_object(). |
|
Definition at line 91 of file cullableObject.h. |
|
Frees the memory for a deleted CullableObject. This is specialized here to provide for fast allocation of these things (since we may create and destroy thousands of these each frame). Definition at line 176 of file cullableObject.I. |
|
Allocates the memory for a new CullableObject. This is specialized here to provide for fast allocation of these things (since we may create and destroy thousands of these each frame). Definition at line 149 of file cullableObject.I. References _num_ever_allocated, and INLINE. |
|
Copies the CullableObject, but does not copy its children (decals).
Definition at line 113 of file cullableObject.I. References _deleted_chain, _next, _num_ever_allocated, INLINE, NULL, and operator new(). |
|
Definition at line 53 of file cullableObject.cxx. |
|
Definition at line 25 of file cullableObject.cxx. Referenced by has_decals(), and operator=(). |
|
Definition at line 78 of file cullableObject.h. Referenced by CullHandler::draw_with_decals(), ~CullableObject(), and CullHandler::~CullHandler(). |
|
Definition at line 81 of file cullableObject.h. Referenced by CullableObject(), CullHandler::draw_with_decals(), has_decals(), and operator=(). |
|
Definition at line 26 of file cullableObject.cxx. Referenced by operator new(), and operator=(). |
|
Definition at line 79 of file cullableObject.h. Referenced by CullResult::add_object(), CullHandler::draw_with_decals(), and CullHandler::~CullHandler(). |
|
Definition at line 80 of file cullableObject.h. Referenced by CullHandler::draw_with_decals(), and CullHandler::~CullHandler(). |
|
Definition at line 27 of file cullableObject.cxx. |