Panda3D
Public Member Functions | List of all members
LinearIntegrator Class Referenceabstract

Pure virtual base class for physical modeling. More...

#include "linearIntegrator.h"

Inheritance diagram for LinearIntegrator:
BaseIntegrator ReferenceCount MemoryBase LinearEulerIntegrator

Public Member Functions

virtual ~LinearIntegrator ()
 destructor More...
 
void integrate (Physical *physical, LinearForceVector &forces, PN_stdfloat dt)
 parent integration routine, hands off to child virtual. More...
 
virtual void output (std::ostream &out) const
 Write a string representation of this instance to <out>. More...
 
virtual void write (std::ostream &out, int indent=0) const
 Write a string representation of this instance to <out>. More...
 
- Public Member Functions inherited from BaseIntegrator
virtual ~BaseIntegrator ()
 destructor More...
 
virtual void write_precomputed_angular_matrices (std::ostream &out, int indent=0) const
 Write a string representation of this instance to <out>. More...
 
virtual void write_precomputed_linear_matrices (std::ostream &out, int indent=0) const
 Write a string representation of this instance to <out>. More...
 
- Public Member Functions inherited from ReferenceCount
int get_ref_count () const
 
WeakReferenceListget_weak_list () const
 Returns the WeakReferenceList associated with this ReferenceCount object. More...
 
bool has_weak_list () const
 Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More...
 
void local_object ()
 This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More...
 
void ref () const
 Explicitly increments the reference count. More...
 
bool ref_if_nonzero () const
 Atomically increases the reference count of this object if it is not zero. More...
 
bool test_ref_count_integrity () const
 Does some easy checks to make sure that the reference count isn't completely bogus. More...
 
bool test_ref_count_nonzero () const
 Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
 
virtual bool unref () const
 Explicitly decrements the reference count. More...
 
WeakReferenceListweak_ref ()
 Adds the indicated PointerToVoid as a weak reference to this object. More...
 
void weak_unref ()
 Removes the indicated PointerToVoid as a weak reference to this object. More...
 

Additional Inherited Members

- Public Types inherited from BaseIntegrator
typedef pvector< PT(AngularForce)> AngularForceVector
 
typedef pvector< PT(LinearForce)> LinearForceVector
 
typedef epvector< LMatrix4 > MatrixVector
 
- Static Public Member Functions inherited from ReferenceCount
static TypeHandle get_class_type ()
 
static void init_type ()
 
- Public Attributes inherited from ReferenceCount
 get_ref_count
 Returns the current reference count. More...
 

Detailed Description

Pure virtual base class for physical modeling.

Takes physically modelable objects and applies forces to them.

Definition at line 26 of file linearIntegrator.h.

Constructor & Destructor Documentation

◆ ~LinearIntegrator()

LinearIntegrator::~LinearIntegrator ( )
virtual

destructor

Definition at line 34 of file linearIntegrator.cxx.

Member Function Documentation

◆ integrate()

void LinearIntegrator::integrate ( Physical physical,
LinearForceVector forces,
PN_stdfloat  dt 
)

parent integration routine, hands off to child virtual.

Definition at line 41 of file linearIntegrator.cxx.

References PhysicsObject::get_position(), and PhysicsObject::set_last_position().

◆ output()

void LinearIntegrator::output ( std::ostream &  out) const
virtual

Write a string representation of this instance to <out>.

Reimplemented from BaseIntegrator.

Reimplemented in LinearEulerIntegrator.

Definition at line 71 of file linearIntegrator.cxx.

◆ write()

void LinearIntegrator::write ( std::ostream &  out,
int  indent = 0 
) const
virtual

Write a string representation of this instance to <out>.

Reimplemented from BaseIntegrator.

Reimplemented in LinearEulerIntegrator.

Definition at line 81 of file linearIntegrator.cxx.

References indent(), and BaseIntegrator::write().

Referenced by LinearEulerIntegrator::write().


The documentation for this class was generated from the following files: