inc/HidReport.h
author sl
Thu, 22 May 2014 07:50:02 +0200
changeset 14 4a5538e0ccbf
child 17 63972dc16350
permissions -rw-r--r--
Moving base HID classes into separate files.
sl@14
     1
#ifndef HID_REPORT_H
sl@14
     2
#define HID_REPORT_H
sl@14
     3
sl@14
     4
#include <string.h>
sl@14
     5
sl@14
     6
/**
sl@14
     7
Define an HID report.
sl@14
     8
Can be used as input and output.
sl@14
     9
*/
sl@14
    10
template <int S>
sl@14
    11
class HidReport
sl@14
    12
    {
sl@14
    13
public:
sl@14
    14
    HidReport(){Reset();};
sl@14
    15
    void Reset();
sl@14
    16
    inline unsigned char& operator[](int aIndex){return iBuffer[aIndex];}
sl@14
    17
    const unsigned char* Buffer() const {return iBuffer;};
sl@14
    18
    unsigned char* Buffer() {return iBuffer;};
sl@14
    19
protected:
sl@14
    20
    unsigned char iBuffer[S];
sl@14
    21
    };
sl@14
    22
sl@14
    23
template <int S>
sl@14
    24
void HidReport<S>::Reset()
sl@14
    25
    {
sl@14
    26
    memset(iBuffer,0,sizeof(iBuffer));
sl@14
    27
    }
sl@14
    28
sl@14
    29
sl@14
    30
#endif