26 void NodeCullCallbackData::
27 output(std::ostream &out)
const {
28 out << get_type() <<
"(" << (
void *)_trav <<
", " << (
void *)&_data <<
")";
43 if (node->
is_of_type(CallbackNode::get_class_type())) {
50 if (cbobj !=
nullptr) {
53 _data.get_internal_transform(_trav));
54 object->set_draw_callback(cbobj);
64 for (
int i = 0; i < num_children; ++i) {
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A special node that can issue arbitrary callbacks to user code, either during the cull or draw traver...
get_draw_callback
Returns the CallbackObject set by set_draw_callback().
This is a generic object that can be assigned to a callback at various points in the rendering proces...
virtual void record_object(CullableObject *object, const CullTraverser *traverser)
This callback function is intended to be overridden by a derived class.
This collects together the pieces of data that are accumulated for each node while walking the scene ...
PandaNode * node() const
Returns the node traversed to so far.
PandaNodePipelineReader * node_reader()
Returns the PipelineReader for the node traversed to so far.
CullHandler * get_cull_handler() const
Returns the object that will receive the culled Geoms.
void traverse(const NodePath &root)
Begins the traversal from the indicated node.
The smallest atom of cull.
virtual void upcall()
You should make this call during the callback if you want to continue the normal rendering function t...
Encapsulates the data from a PandaNode, pre-fetched for one stage of the pipeline.
void release()
Releases the lock on this object.
PandaNode::Children get_children() const
Returns an object that can be used to walk through the list of children of the node.
PandaNode * get_child(size_t n) const
Returns the nth child of the node.
size_t get_num_children() const
Returns the number of children of the node.
A basic node of the scene graph or data graph.
TypeHandle is the identifier used to differentiate C++ class types.
bool is_of_type(TypeHandle handle) const
Returns true if the current object is or derives from the indicated type.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.