| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #ifndef GXDEVICE_H
- #define GXDEVICE_H
- class gxDevice{
- public:
- float axis_states[32];
- gxDevice();
- virtual ~gxDevice();
- virtual void update(){}
- void reset();
- void downEvent( int key );
- void upEvent( int key );
- void setDownState( int key,bool down );
- private:
- enum{
- QUE_SIZE=32,QUE_MASK=QUE_SIZE-1
- };
- int hit_count[256]; //how many hits of key
- bool down_state[256]; //time key went down
- int que[QUE_SIZE],put,get;
- /***** GX INTERFACE *****/
- public:
- void flush();
- bool keyDown( int key );
- int keyHit( int key );
- int getKey();
- float getAxisState( int axis );
- };
- #endif
|