Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

BoundedObject Class Reference

#include <boundedObject.h>

Inheritance diagram for BoundedObject:

CollisionSolid dDrawable PandaNode CollisionPlane CollisionRay CollisionSegment CollisionSphere Geom AnimBundleNode CollisionNode DataNode Fog ForceNode GeomNode LensNode LightNode ModelNode ParametricCurve PartBundleNode PGItem PGTop PhysicalNode PlaneNode ProjectionScreen RopeNode SelectiveChildNode TextNode List of all members.

Public Member Functions

INLINE BoundedObject ()
INLINE BoundedObject (const BoundedObject &copy)
INLINE void operator= (const BoundedObject &copy)
virtual ~BoundedObject ()
INLINE void set_bound (BoundingVolumeType type)
INLINE void set_bound (const BoundingVolume &volume)
const BoundingVolumeget_bound () const
INLINE bool mark_bound_stale ()
INLINE void force_bound_stale ()
INLINE bool is_bound_stale () const
INLINE void set_final (bool flag)
INLINE bool is_final () const

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Public Attributes

PUBLISHED __pad0__: enum BoundingVolumeType { BVT_static
PUBLISHED BVT_dynamic_sphere

Protected Member Functions

virtual void propagate_stale_bound ()
virtual BoundingVolumerecompute_bound ()
INLINE const BoundingVolumeget_bound_ptr () const
INLINE BoundingVolumeset_bound_ptr (BoundingVolume *bound)

Private Types

typedef CycleDataReader< CDataCDReader
typedef CycleDataWriter< CDataCDWriter
enum  Flags { F_bound_stale = 0x0001, F_final = 0x0002 }

Private Attributes

PipelineCycler< CData_cycler

Static Private Attributes

TypeHandle _type_handle

Friends

class PandaNode
class CData

Member Typedef Documentation

typedef CycleDataReader<CData> BoundedObject::CDReader [private]
 

Reimplemented in RopeNode, DirectionalLight, GeomNode, LODNode, PandaNode, PlaneNode, PointLight, SequenceNode, Spotlight, and SwitchNode.

Definition at line 92 of file boundedObject.h.

typedef CycleDataWriter<CData> BoundedObject::CDWriter [private]
 

Reimplemented in RopeNode, DirectionalLight, GeomNode, LODNode, PandaNode, PlaneNode, PointLight, SequenceNode, Spotlight, and SwitchNode.

Definition at line 93 of file boundedObject.h.


Member Enumeration Documentation

enum BoundedObject::Flags [private]
 

Enumeration values:
F_bound_stale 
F_final 

Reimplemented in CollisionNode, PGItem, and TextNode.

Definition at line 72 of file boundedObject.h.


Constructor & Destructor Documentation

INLINE BoundedObject::BoundedObject  ) 
 

INLINE BoundedObject::BoundedObject const BoundedObject &  copy  ) 
 

BoundedObject::~BoundedObject  )  [virtual]
 

Definition at line 32 of file boundedObject.cxx.


Member Function Documentation

INLINE void BoundedObject::force_bound_stale  ) 
 

Referenced by PandaNode::add_child(), PandaNode::remove_all_children(), PandaNode::remove_child(), PandaNode::remove_stashed(), PandaNode::reparent(), PandaNode::replace_child(), PandaNode::stash_child(), and PandaNode::unstash_child().

const BoundingVolume & BoundedObject::get_bound  )  const
 

Reimplemented in PandaNode.

Definition at line 46 of file boundedObject.cxx.

References _cycler, F_bound_stale, is_bound_stale(), and NULL.

Referenced by CollisionTraverser::compare_collider_to_geom_node(), and CollisionLevelState::prepare_collider().

INLINE const BoundingVolume* BoundedObject::get_bound_ptr  )  const [protected]
 

TypeHandle BoundedObject::get_class_type void   )  [inline, static]
 

Reimplemented in AnimBundleNode, PartBundleNode, Character, CollisionNode, CollisionPlane, CollisionPolygon, CollisionRay, CollisionSegment, CollisionSolid, CollisionSphere, AnalogNode, ButtonNode, DialNode, MouseAndKeyboard, TrackerNode, VirtualMouse, DataNode, ProjectionScreen, Geom, ClassicNurbsCurve, CubicCurveseg, HermiteCurve, NurbsPPCurve, ParametricCurve, PiecewiseCurve, RopeNode, AmbientLight, Camera, DirectionalLight, Fog, GeomNode, LensNode, LightLensNode, LightNode, LODNode, ModelNode, ModelRoot, PandaNode, PlaneNode, PointLight, SelectiveChildNode, SequenceNode, Spotlight, SwitchNode, PGButton, PGEntry, PGItem, PGTop, PGWaitBar, ActorNode, ForceNode, PhysicalNode, TextNode, ButtonThrower, DriveInterface, MouseWatcher, Trackball, and Transform2SG.

Definition at line 96 of file boundedObject.h.

Referenced by dDrawable::force_init_type(), CollisionSolid::force_init_type(), dDrawable::get_type(), CollisionSolid::get_type(), PandaNode::init_type(), dDrawable::init_type(), and CollisionSolid::init_type().

void BoundedObject::init_type void   )  [inline, static]
 

Reimplemented in AnimBundleNode, PartBundleNode, Character, CollisionNode, CollisionPlane, CollisionPolygon, CollisionRay, CollisionSegment, CollisionSolid, CollisionSphere, AnalogNode, ButtonNode, DialNode, MouseAndKeyboard, TrackerNode, VirtualMouse, DataNode, ProjectionScreen, dDrawable, Geom, GeomLine, GeomLinestrip, GeomPoint, GeomPolygon, GeomQuad, GeomSphere, GeomSprite, GeomTri, GeomTrifan, GeomTristrip, ClassicNurbsCurve, CubicCurveseg, HermiteCurve, NurbsPPCurve, ParametricCurve, PiecewiseCurve, RopeNode, AmbientLight, Camera, DirectionalLight, Fog, GeomNode, LensNode, LightLensNode, LightNode, LODNode, ModelNode, ModelRoot, PandaNode, PlaneNode, PointLight, SelectiveChildNode, SequenceNode, Spotlight, SwitchNode, PGButton, PGEntry, PGItem, PGTop, PGWaitBar, ActorNode, ForceNode, PhysicalNode, TextNode, ButtonThrower, DriveInterface, MouseWatcher, Trackball, and Transform2SG.

Definition at line 99 of file boundedObject.h.

References register_type().

Referenced by ConfigureFn(), dDrawable::force_init_type(), CollisionSolid::force_init_type(), PandaNode::init_type(), dDrawable::init_type(), and CollisionSolid::init_type().

INLINE bool BoundedObject::is_bound_stale  )  const
 

Referenced by get_bound().

INLINE bool BoundedObject::is_final  )  const
 

Referenced by CullTraverserData::is_in_view_impl().

INLINE bool BoundedObject::mark_bound_stale  ) 
 

Referenced by GeomNode::add_geoms_from(), PGItem::clear_state_def(), CollisionNode::combine_with(), PGItem::instance_to_state_def(), PGItem::mark_frames_stale(), Geom::operator=(), PandaNode::propagate_stale_bound(), NodePath::r_force_recompute_bounds(), SpriteParticleRenderer::render(), SparkleParticleRenderer::render(), PointParticleRenderer::render(), LineParticleRenderer::render(), Geom::set_coords(), PGItem::set_frame_style(), CollisionSegment::set_from_lens(), CollisionRay::set_from_lens(), PGItem::xform(), CollisionSphere::xform(), CollisionSegment::xform(), CollisionRay::xform(), CollisionPolygon::xform(), CollisionPlane::xform(), and CollisionNode::xform().

INLINE void BoundedObject::operator= const BoundedObject &  copy  ) 
 

void BoundedObject::propagate_stale_bound  )  [protected, virtual]
 

Reimplemented in dDrawable, and PandaNode.

Definition at line 88 of file boundedObject.cxx.

BoundingVolume * BoundedObject::recompute_bound  )  [protected, virtual]
 

Reimplemented in CollisionNode, CollisionPlane, CollisionPolygon, CollisionRay, CollisionSegment, CollisionSphere, Geom, and PandaNode.

Definition at line 104 of file boundedObject.cxx.

References _cycler, BVT_dynamic_sphere, and F_bound_stale.

Referenced by PandaNode::recompute_bound(), Geom::recompute_bound(), CollisionSphere::recompute_bound(), CollisionSegment::recompute_bound(), CollisionRay::recompute_bound(), CollisionPolygon::recompute_bound(), CollisionPlane::recompute_bound(), and PandaNode::recompute_internal_bound().

INLINE void BoundedObject::set_bound const BoundingVolume volume  ) 
 

Reimplemented in PandaNode.

INLINE void BoundedObject::set_bound BoundingVolumeType  type  ) 
 

Reimplemented in PandaNode.

INLINE BoundingVolume* BoundedObject::set_bound_ptr BoundingVolume bound  )  [protected]
 

Referenced by CollisionRay::recompute_bound(), and CollisionPlane::recompute_bound().

INLINE void BoundedObject::set_final bool  flag  ) 
 


Friends And Related Function Documentation

friend class CData [friend]
 

Definition at line 107 of file boundedObject.h.

friend class PandaNode [friend]
 

Definition at line 106 of file boundedObject.h.


Member Data Documentation

PUBLISHED BoundedObject::__pad0__
 

Reimplemented in AnimBundleNode, PartBundleNode, Character, CollisionNode, CollisionPlane, CollisionPolygon, CollisionRay, CollisionSegment, CollisionSolid, CollisionSphere, AnalogNode, ButtonNode, DialNode, MouseAndKeyboard, TrackerNode, VirtualMouse, DataNode, ProjectionScreen, dDrawable, Geom, GeomLine, GeomLinestrip, GeomPoint, GeomPolygon, GeomQuad, GeomSphere, GeomSprite, GeomTri, GeomTrifan, GeomTristrip, ClassicNurbsCurve, CubicCurveseg, HermiteCurve, NurbsPPCurve, ParametricCurve, PiecewiseCurve, RopeNode, AmbientLight, Camera, DirectionalLight, Fog, GeomNode, LensNode, LightLensNode, LightNode, LODNode, ModelNode, ModelRoot, PandaNode, PlaneNode, PointLight, SelectiveChildNode, SequenceNode, Spotlight, SwitchNode, PGButton, PGEntry, PGItem, PGTop, PGWaitBar, ForceNode, PhysicalNode, TextNode, ButtonThrower, DriveInterface, MouseWatcher, Trackball, and Transform2SG.

Definition at line 49 of file boundedObject.h.

PipelineCycler<CData> BoundedObject::_cycler [private]
 

Reimplemented in RopeNode, DirectionalLight, GeomNode, LODNode, PandaNode, PlaneNode, PointLight, SequenceNode, Spotlight, and SwitchNode.

Definition at line 91 of file boundedObject.h.

Referenced by get_bound(), and recompute_bound().

TypeHandle BoundedObject::_type_handle [static, private]
 

Reimplemented in AnimBundleNode, PartBundleNode, Character, CollisionNode, CollisionPlane, CollisionPolygon, CollisionRay, CollisionSegment, CollisionSolid, CollisionSphere, AnalogNode, ButtonNode, DialNode, MouseAndKeyboard, TrackerNode, VirtualMouse, DataNode, ProjectionScreen, dDrawable, Geom, GeomLine, GeomLinestrip, GeomPoint, GeomPolygon, GeomQuad, GeomSphere, GeomSprite, GeomTri, GeomTrifan, GeomTristrip, ClassicNurbsCurve, CubicCurveseg, HermiteCurve, NurbsPPCurve, ParametricCurve, PiecewiseCurve, RopeNode, AmbientLight, Camera, DirectionalLight, Fog, GeomNode, LensNode, LightLensNode, LightNode, LODNode, ModelNode, ModelRoot, PandaNode, PlaneNode, PointLight, SelectiveChildNode, SequenceNode, Spotlight, SwitchNode, PGButton, PGEntry, PGItem, PGTop, PGWaitBar, ActorNode, ForceNode, PhysicalNode, TextNode, ButtonThrower, DriveInterface, MouseWatcher, Trackball, and Transform2SG.

Definition at line 24 of file boundedObject.cxx.

PUBLISHED BoundedObject::BVT_dynamic_sphere
 

Definition at line 49 of file boundedObject.h.

Referenced by recompute_bound().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:11:24 2003 for Panda by doxygen1.3