#ifndef GYRO_SENSOR #define GYRO_SENSOR #include "Sensor.h" #include "connection.h" using namespace std; /** * Class for HiTechnic Gyro sensor */ class Gyro : public Sensor{ public: /** * Constructor for the Gyro sensor (default offset is set to zero) * @param port [which sensor port to use] * @param *connection [attach a connection] * @param offset [set the offset] */ Gyro(Sensor_port port, Connection* connection, int offset=0): Sensor(port, connection, CUSTOM, RAW_MODE){ this->offset=offset; } ~Gyro(){}; /** * Read the sensor value () * (init method will be called if the sensor has not been initialized) * @return change in angle pr second (deg/sec) */ int read(){ return Sensor::read_raw()-offset; } /** * Get the sensor reading as a string * (init method will be called if the sensor has not been initialized) * @return sensor reading as a string + " deg/sec" */ string print(){ return Sensor::print() + " deg/sec"; } /** * Get the sensor type * @return GYRO */ Sensor_type get_type(){ return GYRO; } protected: int offset; }; #endif