56 lines
762 B
C++
56 lines
762 B
C++
#ifndef _CUSB_ROCKET_H_
|
|
#define _CUSB_ROCKET_H_
|
|
|
|
#include <usb.h>
|
|
|
|
#define VID 0x2123
|
|
#define PID 0x1010
|
|
|
|
class CUsbRocket
|
|
{
|
|
public:
|
|
CUsbRocket();
|
|
~CUsbRocket();
|
|
int InitUsbRocket();
|
|
void CloseUsbRocket();
|
|
|
|
enum MOVESPEED
|
|
{
|
|
SPEED_SLOW, SPEED_MEDIUM, SPEED_FASTEST
|
|
};
|
|
enum MOVESTATE
|
|
{
|
|
MOVE_STOP,
|
|
MOVE_UP,
|
|
MOVE_DOWN,
|
|
MOVE_LEFT,
|
|
MOVE_RIGHT,
|
|
MOVE_FIRE,
|
|
MOVE_EXIT
|
|
};
|
|
|
|
void SetMoveDirection(MOVESTATE iDir);
|
|
void SetMoveSpeed(MOVESPEED iSpeed);
|
|
int StartMovement();
|
|
|
|
private:
|
|
|
|
static void* MoveThread( void *ptr );
|
|
|
|
void MoveUp();
|
|
void MoveDown();
|
|
void MoveLeft();
|
|
void MoveRight();
|
|
void Fire();
|
|
void MoveStop();
|
|
|
|
|
|
int m_iMoveState;
|
|
int m_iSpeed;
|
|
pthread_t m_thread;
|
|
usb_dev_handle* m_hdlRock;
|
|
|
|
};
|
|
|
|
#endif /* _CUSB_ROCKET_H_ */
|