15 #include "deferredNodeProperty.h" 17 #include "collisionNode.h" 18 #include "pandaNode.h" 26 DeferredNodeProperty::
27 DeferredNodeProperty() {
36 DeferredNodeProperty::
39 _from_collide_mask(copy._from_collide_mask),
40 _into_collide_mask(copy._into_collide_mask)
49 void DeferredNodeProperty::
52 _from_collide_mask = copy._from_collide_mask;
53 _into_collide_mask = copy._into_collide_mask;
64 _flags |= other._flags;
66 if ((other._flags & F_has_from_collide_mask) != 0) {
67 _from_collide_mask = other._from_collide_mask;
70 if ((other._flags & F_has_into_collide_mask) != 0) {
71 _into_collide_mask = other._into_collide_mask;
82 if (node->
is_of_type(CollisionNode::get_class_type())) {
84 if ((_flags & F_has_from_collide_mask) != 0) {
87 if ((_flags & F_has_into_collide_mask) != 0) {
A basic node of the scene graph or data graph.
This class keeps track of all the state we must make note of during the graph traversal, but cannot apply immediately.
void apply_to_node(PandaNode *node)
Applies whatever state is appropriate to the node.
void compose(const DeferredNodeProperty &other)
Composes this state with the next one encountered on a lower node during the apply traversal...
void set_into_collide_mask(CollideMask mask)
Sets the "into" CollideMask.
A node in the scene graph that can hold any number of CollisionSolids.
bool is_of_type(TypeHandle handle) const
Returns true if the current object is or derives from the indicated type.
void set_from_collide_mask(CollideMask mask)
Sets the "from" CollideMask.