IO is an event based input manager which permit to select which composents are manged on your system

Dependencies:   C12832 FXOS8700Q LM75B MMA7660

Committer:
co838_app56
Date:
Thu Feb 25 15:12:32 2016 +0000
Revision:
4:50e2aefe516b
Parent:
3:1ab88130bb9d
Fixing precision issue;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
co838_app56 0:2ac59c564ab0 1 #pragma once
co838_app56 0:2ac59c564ab0 2
co838_app56 0:2ac59c564ab0 3 #include <queue>
co838_app56 0:2ac59c564ab0 4
co838_app56 0:2ac59c564ab0 5 #include "mbed.h"
co838_app56 0:2ac59c564ab0 6
co838_app56 3:1ab88130bb9d 7 #include "Vector.h"
co838_app56 0:2ac59c564ab0 8 #include "Event.h"
co838_app56 0:2ac59c564ab0 9
co838_app56 0:2ac59c564ab0 10 class Input
co838_app56 0:2ac59c564ab0 11 {
co838_app56 3:1ab88130bb9d 12 Ticker _tickerAnalog;
co838_app56 3:1ab88130bb9d 13 Ticker _tickerVector;
co838_app56 0:2ac59c564ab0 14
co838_app56 0:2ac59c564ab0 15 protected:
co838_app56 0:2ac59c564ab0 16 // List of queued events
co838_app56 0:2ac59c564ab0 17 std::queue<Event> _events;
co838_app56 0:2ac59c564ab0 18
co838_app56 0:2ac59c564ab0 19 public:
co838_app56 0:2ac59c564ab0 20 Input(void);
co838_app56 0:2ac59c564ab0 21
co838_app56 0:2ac59c564ab0 22 operator bool(void); // Return if there is an event
co838_app56 3:1ab88130bb9d 23 Event pull(void); // Return the event
co838_app56 0:2ac59c564ab0 24
co838_app56 3:1ab88130bb9d 25 void setAnalogSampleSpeed(float); // Sample speed for analog sensors (potentiometer, temperature, ...)
co838_app56 3:1ab88130bb9d 26 void setVectorSampleSpeed(float); // Sample speed for vector sensors (accelerometer, magnetometer, ...)
co838_app56 3:1ab88130bb9d 27
co838_app56 3:1ab88130bb9d 28 // For inheritance purpose (doesn't do anything)
co838_app56 3:1ab88130bb9d 29 void setEnable(void);
co838_app56 3:1ab88130bb9d 30 void setPrecision(void);
co838_app56 3:1ab88130bb9d 31 virtual void checkAnalog(void);
co838_app56 3:1ab88130bb9d 32 virtual void checkVector(void);
co838_app56 0:2ac59c564ab0 33 };