Various small changes
[dasher.git] / Src / DasherCore / DasherInput.h
blobea11d2d1e326f5bce2c059d4c397316e602881a5
1 // DasherInput.h
2 //
3 // Copyright (c) 2005 Phil Cowans
5 #ifndef __DasherInput_h__
6 #define __DasherInput_h__
8 #include "DasherTypes.h"
9 #include "DasherModule.h"
11 namespace Dasher {
12 class CDasherInput;
15 class Dasher::CDasherInput : public CDasherModule {
17 public:
19 CDasherInput(Dasher::CEventHandler * pEventHandler, CSettingsStore * pSettingsStore, long long int iID, int iType, const char *szName)
20 : CDasherModule(pEventHandler, pSettingsStore, iID, iType, szName) {};
22 /// Set the maximum values for each of the coordinates. Minimum
23 /// values are assumed to be zero for now
24 virtual void SetMaxCoordinates(int iN, myint * iDasherMax) {};
26 /// Fill pCoordinates with iN coordinate values, return 0 if the
27 /// values were in screen coordinates or 1 if the values were in
28 /// Dasher coordinates.
29 virtual int GetCoordinates(int iN, myint * pCoordinates) = 0;
31 /// Get the number of co-ordinates that this device supplies
32 ///
33 virtual int GetCoordinateCount() = 0;
35 /// Activate the device. If a helper thread needs to be started in
36 /// order to listen for input then do it here.
37 virtual void Activate() {};
39 /// Deactivate the device. Please don't hold on to any significant
40 /// resources (eg helper threads) after deactivation.
41 virtual void Deactivate() {};
44 #endif