Rocket/CUsbRocket.h

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_ */