| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iDynamics Struct Reference

This is the interface for the actual plugin. More...

`#include <ivaria/dynamics.h>`

Inheritance diagram for iDynamics:

[legend]
List of all members.

## Public Member Functions
virtual csPtr< iDynamicSystem > | CreateSystem ()=0
| Create a rigid body and add it to the simulation.
virtual iDynamicSystem * | FindSystem (const char *name)=0
| Finds a system by name.
virtual void | RemoveSystem (iDynamicSystem *system)=0
| Remove dynamic system from the simulation.
virtual void | RemoveSystems ()=0
| Remove all dynamic systems from the simulation.
virtual void | Step (float stepsize)=0
| Step the simulation forward by stepsize.

## Detailed Description

This is the interface for the actual plugin.

It is responsible for creating iDynamicSystem.

Main creators of instances implementing this interface:

- ODE Physics plugin (crystalspace.dynamics.ode)

Main ways to get pointers to this interface:

- csQueryRegistry()

Main users of this interface:

- Dynamics loader plugin (crystalspace.dynamics.loader)

Definition at line 61 of file dynamics.h.

## Member Function Documentation

virtual csPtr<iDynamicSystem> iDynamics::CreateSystem | ( |  | ) | `[pure virtual]`

Create a rigid body and add it to the simulation.

virtual iDynamicSystem* iDynamics::FindSystem | ( | const char * | name | ) | `[pure virtual]`

Finds a system by name.

virtual void iDynamics::RemoveSystem | ( | iDynamicSystem * | system | ) | `[pure virtual]`

Remove dynamic system from the simulation.

virtual void iDynamics::RemoveSystems | ( |  | ) | `[pure virtual]`

Remove all dynamic systems from the simulation.

virtual void iDynamics::Step | ( | float | stepsize | ) | `[pure virtual]`

Step the simulation forward by stepsize.

The documentation for this struct was generated from the following file:

- ivaria/dynamics.h