TUIOInputModule.h 911 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #pragma once
  2. #include <PolyInputEvent.h>
  3. #include <PolyCore.h>
  4. #include <PolyModule.h>
  5. #include "TuioListener.h"
  6. #include "TuioClient.h"
  7. #include "TuioObject.h"
  8. #include "TuioCursor.h"
  9. #include "TuioPoint.h"
  10. using namespace TUIO;
  11. using namespace Polycode;
  12. class TUIOEvent {
  13. public:
  14. std::vector<TouchInfo> touches;
  15. unsigned int type;
  16. };
  17. class TUIOInputModule : public PolycodeModule, TuioListener {
  18. public:
  19. TUIOInputModule(int port);
  20. virtual ~TUIOInputModule();
  21. void addTuioObject(TuioObject *tobj);
  22. void updateTuioObject(TuioObject *tobj);
  23. void removeTuioObject(TuioObject *tobj);
  24. void addTuioCursor(TuioCursor *tcur);
  25. void updateTuioCursor(TuioCursor *tcur);
  26. void removeTuioCursor(TuioCursor *tcur);
  27. void refresh(TuioTime frameTime);
  28. void Update(Number elapsed);
  29. protected:
  30. CoreMutex *eventMutex;
  31. TuioClient *tuioClient;
  32. std::vector<TUIOEvent> events;
  33. };