Panda3D
angularIntegrator.h
Go to the documentation of this file.
1 /**
2  * PANDA 3D SOFTWARE
3  * Copyright (c) Carnegie Mellon University. All rights reserved.
4  *
5  * All use of this software is subject to the terms of the revised BSD
6  * license. You should have received a copy of this license along
7  * with this source code in a file named "LICENSE."
8  *
9  * @file angularIntegrator.h
10  * @author charles
11  * @date 2000-08-09
12  */
13 
14 #ifndef ANGULARINTEGRATOR_H
15 #define ANGULARINTEGRATOR_H
16 
17 #include "baseIntegrator.h"
18 #include "angularForce.h"
19 #include "configVariableDouble.h"
20 
21 /**
22  * Pure virtual base class for physical modeling. Takes physically modelable
23  * objects and applies forces to them.
24  */
25 class EXPCL_PANDA_PHYSICS AngularIntegrator : public BaseIntegrator {
26 PUBLISHED:
27  virtual ~AngularIntegrator();
28 public:
29 
30  void integrate(Physical *physical, AngularForceVector &forces,
31  PN_stdfloat dt);
32 
33 PUBLISHED:
34  virtual void output(std::ostream &out) const;
35  virtual void write(std::ostream &out, int indent=0) const;
36 
37 protected:
39 
40 private:
41  static ConfigVariableDouble _max_angular_dt;
42 
43  // this allows baseAngularIntegrator to censormodify data that the actual
44  // integration function receives.
45  virtual void child_integrate(Physical *physical, AngularForceVector &forces,
46  PN_stdfloat dt) = 0;
47 };
48 
49 #endif // ANGULARINTEGRATOR_H
virtual void output(std::ostream &out) const
Write a string representation of this instance to <out>.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
pure virtual integrator class that holds cached matrix information that really should be common to an...
This is a convenience class to specialize ConfigVariable as a floating- point type.
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
Definition: indent.cxx:20
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Defines a set of physically modeled attributes.
Definition: physical.h:37
virtual void write(std::ostream &out, int indent=0) const
Write a string representation of this instance to <out>.
Pure virtual base class for physical modeling.