#ifndef ROBOT_H #define ROBOT_H #include "mobilitygeometry_i.h" #include "mobilityactuator_i.h" #include "mobilityutil.h" #include "mobilityimage_i.h" class Robot { public: Robot(int argc, char *argv[], bool verbose=false); void setVelocity(float v, float w); void forward(float dist, float v=0.1); void turn(float theta); void setMaxVelocity(float v); void setAcceleration(float a); float getMaxVelocity(); float getAcceleration(); void getOdometry(float &x,float &y,float &theta); MobilityGeometry::SegmentData_var getSonar(); MobilityGeometry::SegmentData_var getIR(); void initVision(); unsigned char *getImage(); void copyImage(unsigned char *im); private: float trans_correct; float r_turn_correct; float l_turn_correct; float maxVelocity; float accel; mbyClientHelper *pHelper; MobilityCore::ObjectDescriptor_var pDescriptor; MobilityGeometry::SegmentState_var pIRSeg; MobilityGeometry::SegmentState_var pSonarSeg; MobilityActuator::ActuatorState_var pDriveCommand; MobilityActuator::ActuatorData OurCommand; MobilityGeometry::TransformState_var pOdoTrans; MobilityGeometry::TransformData_var pOdoData; bool visionInitialized; MobilityImage::ImageState_var pImage; MobilityImage::ImageData_var pImageData; }; #endif