First Release
Out_PS3USB/Out_PS3USB.h
- Committer:
- sankichi
- Date:
- 2013-07-27
- Revision:
- 1:6c392ebcd4d4
- Parent:
- 0:e1265f6b3565
File content as of revision 1:6c392ebcd4d4:
/** Class: Out_PS3USB * * Output class for PlayStation3 USB Joystick * */ #include "mbed.h" #include "InputStatus.h" #include "USBJoystick.h" class Out_PS3USB { public: /** Constructor: Out_PS3USB * * Parameters: * inputStatus - Input status */ Out_PS3USB(InputStatus *inputStatus); private: // Private constants static const int USBUPDATEINTERVAL__MSEC = 10; // mbed pins // Variable InputStatus *_InputStatus; USBJoystick *_MyJS; Ticker _USBUpdateTicker; // Private Method void Initialize(void); void USBUpdate(void); // void InitInterruptPriority(void); // for InputControll public: void SetupInputControll(void (*startInputFunction)(void), void (*stopInputFunction)(void)); class CDummy; template<class T> void SetupInputControll(T* inputInstance, void (T::*startInputMethod)(void), void (T::*stopInputMethod)(void)) { _InputInstance = (CDummy*) inputInstance; StartInputMethod = (void (CDummy::*)(void)) startInputMethod; StopInputMethod = (void (CDummy::*)(void)) stopInputMethod; } private: CDummy* _InputInstance; void (CDummy::*StartInputMethod)(void); void (CDummy::*StopInputMethod)(void); void (*StartInputFunction)(void); void (*StopInputFunction)(void); void EnableInput(void); void DisableInput(void); };