Modified for compatibility with Rev.E. hardware
Fork of AkmSensor by
Diff: akmsensormanager.h
- Revision:
- 23:50c98b286e41
- Parent:
- 21:966724730ce6
- Child:
- 24:1d37438f31a9
--- a/akmsensormanager.h Mon Apr 10 23:02:52 2017 +0000 +++ b/akmsensormanager.h Thu Apr 13 22:15:54 2017 +0000 @@ -12,78 +12,106 @@ #define ANALOG_SENSOR_ID P0_4 #define ANALOG_SENSOR_ID_SUB P0_5 +/** + * Unified manager class for all sensors to interact with AkmSensor. + */ class AkmSensorManager { public: - /** Return status enumeration for debugging. + /** + * Return status enumeration for debugging. */ typedef enum { - SUCCESS = 0, - ERROR, + SUCCESS = 0, /**< Successful execution (0) */ + ERROR, /**< Error in execution (1) */ } Status; + /** + * Class constructor with an initial serial connection. + */ AkmSensorManager(SerialNano* com); - /** Initialize sensor manager. - * @param id Primary ID of daughter board device. - * @param subID Secondary ID of daughter board device. - * @return Status type: SUCCESS=0. + /** + * Initialize sensor manager. + * + * @param id Primary ID of daughter board device. + * @param subID Secondary ID of daughter board device. + * @return Status type: SUCCESS=0. */ Status init(uint8_t id, uint8_t subid); - /** Set BLE UART service. - * @param service UART service type + /** + * Set BLE UART service. + * + * @param service UART service type */ void setBleUartService(UARTService* service); - /** Sets eventConnected flag to TRUE. + /** + * Sets eventConnected flag to TRUE. */ void setEventConnected(); - /** Sets eventDisconnected flag to TRUE. + /** + * Sets eventDisconnected flag to TRUE. */ void setEventDisconnected(); - /* Sets eventCommandReceived flag to TRUE. + /** + * Sets eventCommandReceived flag to TRUE. + * * @param buf Command to be parsed and to check the validity. * @return Status type: SUCCESS=0 */ Status commandReceived(char* buf); - /* Checks for an event. + /** + * Checks if an event has occurred. + * * @return Returns SUCCESS(=0) if a sensor event has occurred, or if any of the * eventCommandReceived, eventConnected, or eventDisconnected flags * are set. Returns ERROR otherwise. */ bool isEvent(); - /* Processes eventCommandReceived, eventConnected, eventDisconnected and - * sensor events and clears the appropriate flag. + /** + * Main function that processes input, output, and connection events. + * * @return Status type: SUCCESS=0. */ Status processEvent(); - /* Get the name of the sensor as a string. + /** + * Get the name of the sensor as a string. + * * @return Returns the address of the string containing the name. */ char* getSensorName(); - /* Processes the stored command, parses the arguments, then uses the + /** + * Processes the stored command, parses the arguments, then uses the * command to throw a message. */ void processCommand(); - /* Converts command from characters to ASCII then executes the command. + /** + * Processes command and arguments in message from char to ASCII and + * sends to BLE and/or USB serial device(s). + * * @param msg Message containing command to be processed. + * @return Status type: SUCCESS=0 */ Status throwMessage(const Message *msg); // void releaseTWI(); - /* Get primary or secondary ID from sensor device. - * @param pin Pin number of ID signal. + /** + * Get primary or secondary ID from sensor device. + * + * @param pin Pin number of ID or SubID signal. * @param bits Number of bits of precision of value. + * @return Returns the integer ID or SubID value. */ uint8_t getId(PinName pin, uint8_t bits);