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

CollisionEntry Class Reference

#include <collisionEntry.h>

Inheritance diagram for CollisionEntry:

TypedReferenceCount TypedObject ReferenceCount List of all members.

Public Member Functions

INLINE CollisionEntry ()
 CollisionEntry (const CollisionEntry &copy)
void operator= (const CollisionEntry &copy)
INLINE bool has_into () const
INLINE const CollisionSolidget_into () const
INLINE CollisionNodeget_from_node () const
INLINE PandaNodeget_into_node () const
INLINE const NodePathget_into_node_path () const
INLINE const LMatrix4f & get_from_space () const
INLINE const LMatrix4f & get_into_space () const
INLINE const LMatrix4f & get_wrt_space () const
INLINE const LMatrix4f & get_inv_wrt_space () const
INLINE void set_from_velocity (const LVector3f &vel)
INLINE bool has_from_velocity () const
INLINE const LVector3f & get_from_velocity () const
INLINE void set_into_intersection_point (const LPoint3f &point)
INLINE bool has_into_intersection_point () const
INLINE const LPoint3f & get_into_intersection_point () const
INLINE bool has_from_intersection_point () const
INLINE LPoint3f get_from_intersection_point () const
INLINE void set_into_surface_normal (const LVector3f &normal)
INLINE bool has_into_surface_normal () const
INLINE const LVector3f & get_into_surface_normal () const
INLINE void set_from_surface_normal (const LVector3f &normal)
INLINE bool has_from_surface_normal () const
INLINE const LVector3f & get_from_surface_normal () const
INLINE void set_into_depth (float depth)
INLINE bool has_into_depth () const
INLINE float get_into_depth () const
INLINE void set_from_depth (float depth)
INLINE bool has_from_depth () const
INLINE float get_from_depth () const
virtual TypeHandle get_type () const
virtual TypeHandle force_init_type ()

Static Public Member Functions

TypeHandle get_class_type ()
void init_type ()

Public Attributes

PUBLISHED __pad0__: INLINE const CollisionSolid *get_from() const

Private Types

enum  Flags {
  F_has_into_intersection_point = 0x0001, F_has_into_surface_normal = 0x0002, F_has_from_surface_normal = 0x0004, F_has_into_depth = 0x0008,
  F_has_from_depth = 0x0010, F_has_from_velocity = 0x0020
}

Private Member Functions

INLINE void test_intersection (CollisionHandler *record, const CollisionTraverser *trav) const
void compute_from_surface_normal ()
 CPT (CollisionSolid) _from
 CPT (CollisionSolid) _into
 PT (CollisionNode) _from_node
 PT (PandaNode) _into_node

Private Attributes

NodePath _into_node_path
LMatrix4f _from_space
LMatrix4f _into_space
LMatrix4f _wrt_space
LMatrix4f _inv_wrt_space
int _flags
LVector3f _from_velocity
LPoint3f _into_intersection_point
LVector3f _into_surface_normal
LVector3f _from_surface_normal
float _into_depth
float _from_depth

Static Private Attributes

TypeHandle _type_handle

Friends

class CollisionTraverser

Member Enumeration Documentation

enum CollisionEntry::Flags [private]
 

Enumeration values:
F_has_into_intersection_point 
F_has_into_surface_normal 
F_has_from_surface_normal 
F_has_into_depth 
F_has_from_depth 
F_has_from_velocity 

Definition at line 111 of file collisionEntry.h.


Constructor & Destructor Documentation

INLINE CollisionEntry::CollisionEntry  ) 
 

CollisionEntry::CollisionEntry const CollisionEntry &  copy  ) 
 

Definition at line 29 of file collisionEntry.cxx.


Member Function Documentation

void CollisionEntry::compute_from_surface_normal  )  [private]
 

Definition at line 76 of file collisionEntry.cxx.

References _flags, _from_surface_normal, F_has_from_surface_normal, get_into_surface_normal(), and get_inv_wrt_space().

CollisionEntry::CPT CollisionSolid   )  [private]
 

CollisionEntry::CPT CollisionSolid   )  [private]
 

virtual TypeHandle CollisionEntry::force_init_type void   )  [inline, virtual]
 

Reimplemented from TypedReferenceCount.

Definition at line 141 of file collisionEntry.h.

References ReferenceCount::get_class_type(), and TypedReferenceCount::init_type().

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

Reimplemented from ReferenceCount.

Definition at line 130 of file collisionEntry.h.

INLINE float CollisionEntry::get_from_depth  )  const
 

Referenced by CollisionHandlerPusher::handle_entries().

INLINE LPoint3f CollisionEntry::get_from_intersection_point  )  const
 

Referenced by CollisionEntrySorter::CollisionEntrySorter(), and CollisionHandlerFloor::handle_entries().

INLINE CollisionNode* CollisionEntry::get_from_node  )  const
 

Referenced by CollisionHandlerPhysical::add_entry(), CollisionHandlerEvent::add_entry(), CollisionTraverser::compare_collider_to_geom(), CollisionTraverser::compare_collider_to_solid(), CollisionHandlerPusher::handle_entries(), CollisionHandlerFloor::handle_entries(), PT(), and CollisionHandlerEvent::throw_event_pattern().

INLINE const LMatrix4f& CollisionEntry::get_from_space  )  const
 

INLINE const LVector3f& CollisionEntry::get_from_surface_normal  )  const
 

Referenced by CollisionHandlerPusher::handle_entries().

INLINE const LVector3f& CollisionEntry::get_from_velocity  )  const
 

Referenced by PT().

INLINE const CollisionSolid* CollisionEntry::get_into  )  const
 

Referenced by CollisionHandlerPhysical::add_entry(), CollisionHandlerPusher::handle_entries(), PT(), and CollisionHandlerEvent::throw_event_pattern().

INLINE float CollisionEntry::get_into_depth  )  const
 

INLINE const LPoint3f& CollisionEntry::get_into_intersection_point  )  const
 

INLINE PandaNode* CollisionEntry::get_into_node  )  const
 

Referenced by CollisionHandlerEvent::add_entry(), CollisionHandlerPusher::handle_entries(), and CollisionHandlerEvent::throw_event_pattern().

INLINE const NodePath& CollisionEntry::get_into_node_path  )  const
 

Referenced by CollisionHandlerPusher::handle_entries(), and PT().

INLINE const LMatrix4f& CollisionEntry::get_into_space  )  const
 

INLINE const LVector3f& CollisionEntry::get_into_surface_normal  )  const
 

Referenced by compute_from_surface_normal().

INLINE const LMatrix4f& CollisionEntry::get_inv_wrt_space  )  const
 

Referenced by compute_from_surface_normal(), and PT().

virtual TypeHandle CollisionEntry::get_type void   )  const [inline, virtual]
 

Reimplemented from TypedReferenceCount.

Definition at line 138 of file collisionEntry.h.

References ReferenceCount::get_class_type().

INLINE const LMatrix4f& CollisionEntry::get_wrt_space  )  const
 

Referenced by PT().

INLINE bool CollisionEntry::has_from_depth  )  const
 

Referenced by CollisionHandlerPusher::handle_entries().

INLINE bool CollisionEntry::has_from_intersection_point  )  const
 

Referenced by CollisionHandlerFloor::handle_entries().

INLINE bool CollisionEntry::has_from_surface_normal  )  const
 

Referenced by CollisionHandlerPusher::handle_entries().

INLINE bool CollisionEntry::has_from_velocity  )  const
 

Referenced by PT().

INLINE bool CollisionEntry::has_into  )  const
 

Referenced by CollisionHandlerPhysical::add_entry(), and CollisionHandlerEvent::throw_event_pattern().

INLINE bool CollisionEntry::has_into_depth  )  const
 

INLINE bool CollisionEntry::has_into_intersection_point  )  const
 

INLINE bool CollisionEntry::has_into_surface_normal  )  const
 

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

Reimplemented from TypedReferenceCount.

Definition at line 133 of file collisionEntry.h.

References TypedObject::get_class_type(), TypedReferenceCount::init_type(), and register_type().

Referenced by init_libcollide().

void CollisionEntry::operator= const CollisionEntry &  copy  ) 
 

Definition at line 52 of file collisionEntry.cxx.

References _flags, _from_space, _into_depth, _into_intersection_point, _into_node_path, _into_space, _into_surface_normal, _inv_wrt_space, and _wrt_space.

CollisionEntry::PT PandaNode   )  [private]
 

CollisionEntry::PT CollisionNode   )  [private]
 

INLINE void CollisionEntry::set_from_depth float  depth  ) 
 

INLINE void CollisionEntry::set_from_surface_normal const LVector3f &  normal  ) 
 

INLINE void CollisionEntry::set_from_velocity const LVector3f &  vel  ) 
 

Referenced by CollisionTraverser::r_traverse().

INLINE void CollisionEntry::set_into_depth float  depth  ) 
 

INLINE void CollisionEntry::set_into_intersection_point const LPoint3f &  point  ) 
 

INLINE void CollisionEntry::set_into_surface_normal const LVector3f &  normal  ) 
 

INLINE void CollisionEntry::test_intersection CollisionHandler record,
const CollisionTraverser trav
const [private]
 

Referenced by CollisionTraverser::compare_collider_to_geom(), and CollisionTraverser::compare_collider_to_solid().


Friends And Related Function Documentation

friend class CollisionTraverser [friend]
 

Definition at line 146 of file collisionEntry.h.


Member Data Documentation

PUBLISHED CollisionEntry::__pad0__
 

Reimplemented from TypedReferenceCount.

Definition at line 55 of file collisionEntry.h.

int CollisionEntry::_flags [private]
 

Definition at line 120 of file collisionEntry.h.

Referenced by compute_from_surface_normal(), and operator=().

float CollisionEntry::_from_depth [private]
 

Definition at line 127 of file collisionEntry.h.

LMatrix4f CollisionEntry::_from_space [private]
 

Definition at line 106 of file collisionEntry.h.

Referenced by operator=(), and CollisionTraverser::r_traverse().

LVector3f CollisionEntry::_from_surface_normal [private]
 

Definition at line 125 of file collisionEntry.h.

Referenced by compute_from_surface_normal().

LVector3f CollisionEntry::_from_velocity [private]
 

Definition at line 122 of file collisionEntry.h.

float CollisionEntry::_into_depth [private]
 

Definition at line 126 of file collisionEntry.h.

Referenced by operator=().

LPoint3f CollisionEntry::_into_intersection_point [private]
 

Definition at line 123 of file collisionEntry.h.

Referenced by operator=().

NodePath CollisionEntry::_into_node_path [private]
 

Definition at line 105 of file collisionEntry.h.

Referenced by operator=(), and CollisionTraverser::r_traverse().

LMatrix4f CollisionEntry::_into_space [private]
 

Definition at line 107 of file collisionEntry.h.

Referenced by operator=(), and CollisionTraverser::r_traverse().

LVector3f CollisionEntry::_into_surface_normal [private]
 

Definition at line 124 of file collisionEntry.h.

Referenced by operator=().

LMatrix4f CollisionEntry::_inv_wrt_space [private]
 

Definition at line 109 of file collisionEntry.h.

Referenced by operator=(), and CollisionTraverser::r_traverse().

TypeHandle CollisionEntry::_type_handle [static, private]
 

Reimplemented from TypedReferenceCount.

Definition at line 21 of file collisionEntry.cxx.

LMatrix4f CollisionEntry::_wrt_space [private]
 

Definition at line 108 of file collisionEntry.h.

Referenced by operator=(), and CollisionTraverser::r_traverse().


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