diff options
Diffstat (limited to 'offsetProject/src/buttonChecker.h')
| -rw-r--r-- | offsetProject/src/buttonChecker.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/offsetProject/src/buttonChecker.h b/offsetProject/src/buttonChecker.h new file mode 100644 index 0000000..2de14cb --- /dev/null +++ b/offsetProject/src/buttonChecker.h @@ -0,0 +1,72 @@ +#ifndef _BUTTON_CHECK +#define _BUTTON_CHECK + +#include "ofMain.h" +#include "ofURLFileLoader.h" + +long ofToLong(const string& intString); + +class buttonChecker : public ofThread{ + + public: + + float interval; //time between refreshes in seconds + std::string url; + long last; + float triggerTime; + bool active; + + buttonChecker(){ + url = "http://tycleeson.com/trigger.php"; + interval=0.05; + last=0; + triggerTime=0.0f; + active=false; + } + + void set_interval(float _interval){ + interval=_interval; + } + + void start(){ + startThread(true, false); // blocking, verbose + } + + void stop(){ + stopThread(); + } + + bool action(){ + if(active){ + active=false; + return true; + } + return false; + } + + + //-------------------------- + void threadedFunction(){ + + cout << "Api: " << url<<endl; + + while( isThreadRunning() != 0 ){ + + //cout<<"."<<std::flush; + + long result = ofToLong(ofLoadURL(url).data.getText()); + if (result>last){ + last=result; + active=true; + triggerTime=ofGetElapsedTimef(); + } + + + ofSleepMillis(interval * 1000); + } + } + + +}; + +#endif
\ No newline at end of file |
