sl@4: #ifndef HID_REPORT_H sl@4: #define HID_REPORT_H sl@4: sl@4: #include sl@4: sl@4: /** sl@4: Define an HID report. sl@4: Can be used as input and output. sl@4: */ sl@4: template sl@4: class HidReport sl@4: { sl@4: public: sl@4: HidReport(){Reset();} sl@4: void Reset(); sl@4: inline unsigned char& operator[](int aIndex){return iBuffer[aIndex];} sl@4: const unsigned char* Buffer() const {return iBuffer;} sl@4: unsigned char* Buffer() {return iBuffer;} sl@4: int Size() {return S;} sl@4: protected: sl@4: unsigned char iBuffer[S]; sl@4: }; sl@4: sl@4: template sl@4: void HidReport::Reset() sl@4: { sl@4: memset(iBuffer,0,sizeof(iBuffer)); sl@4: } sl@4: sl@4: sl@4: #endif