22 #ifndef CENS_SERIALIZED_ENGINE_H 
   23 #define CENS_SERIALIZED_ENGINE_H 
   27 #include <BulletWorldImporter/btBulletWorldImporter.h> 
   41     template <
class Key, 
class Value>
 
   47                 return (btHashMap<Key, Value>::m_keyArray)[index]; 
 
   62                 : btBulletWorldImporter(world) 
 
   75                 return m_allocatedNames;
 
   92                 return m_nameConstraintMap;
 
  136             max_motor_impulse(50),
 
  145             enable_collision(
"FALSE")
 
  161         typedef std::map<std::string, CENSHingeData> 
Hinges;
 
  163         typedef std::map<std::string, btRigidBody *> 
Bodies;
 
  211                 btTypedConstraint *_constraint );
 
  217         void addBody( std::string bodyName, btRigidBody *_body );
 
  223         void addTransform( std::string transformName, btTransform _transform );
 
  248         void move(
const std::string hingeName, 
double target_angle, 
 
  256     typedef std::map<std::string, btRigidBody *> 
Bodies;
 
  260     typedef std::map<const std::string, CENSSerializedRobot *> 
Robots;
 
  262     typedef std::map<const std::string, CENSTouchSensor *> 
Sensors;
 
  264     typedef std::map<const std::string, int > 
Cameras;
 
  271             virtual void step(
int timestep);
 
  278                     const std::string &robotName, 
 
  279                     const std::string &file);
 
  297                     std::string cameraName,         
 
  299                     btTransform local_transform,    
 
  300                     std::string screenTitle,        
 
  312                 int index = 
attachCamera( body, local_transform, screenTitle,     
 
  313                         screenWidth, screenHeight, screenXGap,    
 
  314                         screenYGap, up, target, foV, near,far );
 
  353 #endif // CENS_SERIALIZED_ENGINE_H 
A custom HingeConstraint Class. 
Initializing and manipulating physics objects. 
std::map< const std::string, CENSSerializedRobot * > Robots
Computational Embodied Neuroscience Simulator library. 
std::map< std::string, btRigidBody * > Bodies
btHashMap< btHashString, btRigidBody * > & getBodyMap()
const std::string CENS_DEFAULT_CONTROL
void addBody(std::string bodyName, btRigidBody *_body)
GenericConstraints constraints
std::map< const std::string, int > Cameras
CENSSerializedRobot(const std::string robotName, CENSEngine *en)
virtual void step(int timestep)
const Key & getKeyAtIndex(int index)
std::map< std::string, btTransform > Transforms
CENSHingeConstraint * hinge
std::string enable_collision
virtual CENSTouchSensor * addTouchSensor(btRigidBody *body, std::string name)
void addHinge(std::string hingeName, CENSHingeConstraint *_hinge)
void addTransform(std::string transformName, btTransform _transform)
virtual CENSTouchSensor * addTouchSensor(btRigidBody *body)
Manager of parameters' initializarion. 
virtual CENSSerializedRobot * loadBulletFile(const std::string &robotName, const std::string &file)
btHashMap< btHashString, btTypedConstraint * > & getConstraintMap()
std::map< std::string, btTypedConstraint * > GenericConstraints
std::map< const std::string, CENSTouchSensor * > Sensors
std::map< std::string, btRigidBody * > Bodies
Constraints m_eConstraints
void addGenericConstraint(std::string constraintName, btTypedConstraint *_constraint)
void move(const std::string hingeName, double target_angle, double impulse=0)
CENSImporter(btDynamicsWorld *world=0)
virtual int addCamera(std::string cameraName, btRigidBody *body, btTransform local_transform, std::string screenTitle, int screenWidth, int screenHeight, int screenXGap, int screenYGap, btVector3 up, float target, float foV=70.0, float near=1.0, float far=10000)
std::map< std::string, CENSHingeData > Hinges
btAlignedObjectArray< char * > & getAllocatedNames()
std::map< std::string, btTypedConstraint * > Constraints
virtual int attachCamera(btRigidBody *body, btTransform local_transform, std::string screenTitle, int screenWidth, int screenHeight, int screenXGap, int screenYGap, btVector3 up, float target, float foV=70.0, float near=1.0, float far=10000)