#ifndef MASTER_H #define MASTER_H #include #include #include #include #include #include "btBulletDynamicsCommon.h" #include "MPIChannel.h" #include "SensorProvider.h" #include "ActuatorProvider.h" #include "CommChannelProvider.h" #include "Sensor.h" #include "Actuator.h" #include "SimpleAgent.h" #include "CommChannel.h" #include "Environment.h" #include "constants.h" #include "Gui.h" using namespace std; typedef struct { btScalar m[16]; btMatrix3x3 rot; btVector3 aabbMin,aabbMax; btCollisionShape *shape; } WorldObject; class Master { private: WorldObject data; pair x; vector xList; map > positionID; int m_nprocs; Environment *m_bullet; Gui *m_gui; bool m_running; public: Master(Environment *bullet, int nprocs); ~Master(); int sendAll(); void run(); void stop(); int getID(int i, int j); void discoverAgents(); void createProviders(); void sendHello(int id); }; #endif //MASTER_H