USB Host Shield 2.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
ReportDescParserBase Class Reference

#include <hidescriptorparser.h>

Inheritance diagram for ReportDescParserBase:
Inheritance graph
[legend]
Collaboration diagram for ReportDescParserBase:
Collaboration graph
[legend]

Public Types

enum  { enErrorSuccess = 0, enErrorIncomplete, enErrorBufferTooSmall }
 
typedef void(* UsagePageFunc )(uint16_t usage)
 

Public Member Functions

 ReportDescParserBase ()
 
virtual void Parse (const uint16_t len, const uint8_t *pbuf, const uint16_t &offset)
 

Static Public Member Functions

static void PrintGenericDesktopPageUsage (uint16_t usage)
 
static void PrintSimulationControlsPageUsage (uint16_t usage)
 
static void PrintVRControlsPageUsage (uint16_t usage)
 
static void PrintSportsControlsPageUsage (uint16_t usage)
 
static void PrintGameControlsPageUsage (uint16_t usage)
 
static void PrintGenericDeviceControlsPageUsage (uint16_t usage)
 
static void PrintLEDPageUsage (uint16_t usage)
 
static void PrintButtonPageUsage (uint16_t usage)
 
static void PrintOrdinalPageUsage (uint16_t usage)
 
static void PrintTelephonyPageUsage (uint16_t usage)
 
static void PrintConsumerPageUsage (uint16_t usage)
 
static void PrintDigitizerPageUsage (uint16_t usage)
 
static void PrintAlphanumDisplayPageUsage (uint16_t usage)
 
static void PrintMedicalInstrumentPageUsage (uint16_t usage)
 
static void PrintValue (uint8_t *p, uint8_t len)
 
static void PrintByteValue (uint8_t data)
 
static void PrintItemTitle (uint8_t prefix)
 

Static Public Attributes

static const char *const usagePageTitles0 []
 
static const char *const usagePageTitles1 []
 
static const char *const genDesktopTitles0 []
 
static const char *const genDesktopTitles1 []
 
static const char *const genDesktopTitles2 []
 
static const char *const genDesktopTitles3 []
 
static const char *const genDesktopTitles4 []
 
static const char *const simuTitles0 []
 
static const char *const simuTitles1 []
 
static const char *const simuTitles2 []
 
static const char *const vrTitles0 []
 
static const char *const vrTitles1 []
 
static const char *const sportsCtrlTitles0 []
 
static const char *const sportsCtrlTitles1 []
 
static const char *const sportsCtrlTitles2 []
 
static const char *const gameTitles0 []
 
static const char *const gameTitles1 []
 
static const char *const genDevCtrlTitles []
 
static const char *const ledTitles []
 
static const char *const telTitles0 []
 
static const char *const telTitles1 []
 
static const char *const telTitles2 []
 
static const char *const telTitles3 []
 
static const char *const telTitles4 []
 
static const char *const telTitles5 []
 
static const char *const consTitles0 []
 
static const char *const consTitles1 []
 
static const char *const consTitles2 []
 
static const char *const consTitles3 []
 
static const char *const consTitles4 []
 
static const char *const consTitles5 []
 
static const char *const consTitles6 []
 
static const char *const consTitles7 []
 
static const char *const consTitles8 []
 
static const char *const consTitles9 []
 
static const char *const consTitlesA []
 
static const char *const consTitlesB []
 
static const char *const consTitlesC []
 
static const char *const consTitlesD []
 
static const char *const consTitlesE []
 
static const char *const digitTitles0 []
 
static const char *const digitTitles1 []
 
static const char *const digitTitles2 []
 
static const char *const aplphanumTitles0 []
 
static const char *const aplphanumTitles1 []
 
static const char *const aplphanumTitles2 []
 
static const char *const medInstrTitles0 []
 
static const char *const medInstrTitles1 []
 
static const char *const medInstrTitles2 []
 
static const char *const medInstrTitles3 []
 
static const char *const medInstrTitles4 []
 

Protected Member Functions

virtual uint8_t ParseItem (uint8_t **pp, uint16_t *pcntdn)
 
void SetUsagePage (uint16_t page)
 

Static Protected Member Functions

static void PrintUsagePage (uint16_t page)
 

Protected Attributes

MultiValueBuffer theBuffer
 
MultiByteValueParser valParser
 
ByteSkipper theSkipper
 
uint8_t varBuffer [sizeof(USB_CONFIGURATION_DESCRIPTOR)]
 
uint8_t itemParseState
 
uint8_t itemSize
 
uint8_t itemPrefix
 
uint8_t rptSize
 
uint8_t rptCount
 
uint16_t totalSize
 
UsagePageFunc pfUsage
 

Static Protected Attributes

static UsagePageFunc usagePageFunctions []
 

Detailed Description

Definition at line 22 of file hidescriptorparser.h.

Member Typedef Documentation

typedef void(* ReportDescParserBase::UsagePageFunc)(uint16_t usage)

Definition at line 24 of file hidescriptorparser.h.

Member Enumeration Documentation

anonymous enum
Enumerator
enErrorSuccess 
enErrorIncomplete 
enErrorBufferTooSmall 

Definition at line 137 of file hidescriptorparser.h.

Constructor & Destructor Documentation

ReportDescParserBase::ReportDescParserBase ( )
inline

Definition at line 123 of file hidescriptorparser.h.

Member Function Documentation

void ReportDescParserBase::PrintGenericDesktopPageUsage ( uint16_t  usage)
static

Definition at line 1287 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintSimulationControlsPageUsage ( uint16_t  usage)
static

Definition at line 1299 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintVRControlsPageUsage ( uint16_t  usage)
static

Definition at line 1309 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintSportsControlsPageUsage ( uint16_t  usage)
static

Definition at line 1318 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintGameControlsPageUsage ( uint16_t  usage)
static

Definition at line 1328 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintGenericDeviceControlsPageUsage ( uint16_t  usage)
static

Definition at line 1337 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintLEDPageUsage ( uint16_t  usage)
static

Definition at line 1345 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintButtonPageUsage ( uint16_t  usage)
static

Definition at line 1270 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintOrdinalPageUsage ( uint16_t  usage)
static

Definition at line 1278 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintTelephonyPageUsage ( uint16_t  usage)
static

Definition at line 1353 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintConsumerPageUsage ( uint16_t  usage)
static

Definition at line 1366 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintDigitizerPageUsage ( uint16_t  usage)
static

Definition at line 1388 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintAlphanumDisplayPageUsage ( uint16_t  usage)
static

Definition at line 1398 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintMedicalInstrumentPageUsage ( uint16_t  usage)
static

Definition at line 1408 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintValue ( uint8_t *  p,
uint8_t  len 
)
static

Definition at line 996 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintByteValue ( uint8_t  data)
static

Definition at line 1003 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintItemTitle ( uint8_t  prefix)
static

Definition at line 1009 of file hidescriptorparser.cpp.

uint8_t ReportDescParserBase::ParseItem ( uint8_t **  pp,
uint16_t *  pcntdn 
)
protectedvirtual

Reimplemented in ReportDescParser2.

Definition at line 1074 of file hidescriptorparser.cpp.

void ReportDescParserBase::PrintUsagePage ( uint16_t  page)
staticprotected

Definition at line 1245 of file hidescriptorparser.cpp.

void ReportDescParserBase::SetUsagePage ( uint16_t  page)
protected

Definition at line 1216 of file hidescriptorparser.cpp.

void ReportDescParserBase::Parse ( const uint16_t  len,
const uint8_t *  pbuf,
const uint16_t &  offset 
)
virtual

Implements USBReadParser.

Definition at line 976 of file hidescriptorparser.cpp.

Member Data Documentation

const char *const ReportDescParserBase::usagePageTitles0
static
const char *const ReportDescParserBase::usagePageTitles1
static
const char *const ReportDescParserBase::genDesktopTitles0
static
const char *const ReportDescParserBase::genDesktopTitles1
static
const char *const ReportDescParserBase::genDesktopTitles2
static
const char *const ReportDescParserBase::genDesktopTitles3
static
const char *const ReportDescParserBase::genDesktopTitles4
static
const char *const ReportDescParserBase::simuTitles0
static
const char *const ReportDescParserBase::simuTitles1
static
const char *const ReportDescParserBase::simuTitles2
static

Definition at line 55 of file hidescriptorparser.h.

const char *const ReportDescParserBase::vrTitles0
static
const char *const ReportDescParserBase::vrTitles1
static
Initial value:

Definition at line 57 of file hidescriptorparser.h.

const char *const ReportDescParserBase::sportsCtrlTitles0
static
const char *const ReportDescParserBase::sportsCtrlTitles1
static
const char *const ReportDescParserBase::sportsCtrlTitles2
static
const char *const ReportDescParserBase::gameTitles0
static
const char *const ReportDescParserBase::gameTitles1
static
const char *const ReportDescParserBase::genDevCtrlTitles
static
const char *const ReportDescParserBase::ledTitles
static

Definition at line 64 of file hidescriptorparser.h.

const char *const ReportDescParserBase::telTitles0
static
const char *const ReportDescParserBase::telTitles1
static
const char *const ReportDescParserBase::telTitles2
static
const char *const ReportDescParserBase::telTitles3
static
const char *const ReportDescParserBase::telTitles4
static
const char *const ReportDescParserBase::telTitles5
static
const char *const ReportDescParserBase::consTitles0
static
const char *const ReportDescParserBase::consTitles1
static
Initial value:

Definition at line 72 of file hidescriptorparser.h.

const char *const ReportDescParserBase::consTitles2
static
const char *const ReportDescParserBase::consTitles3
static
const char *const ReportDescParserBase::consTitles4
static
const char *const ReportDescParserBase::consTitles5
static

Definition at line 76 of file hidescriptorparser.h.

const char *const ReportDescParserBase::consTitles6
static

Definition at line 77 of file hidescriptorparser.h.

const char *const ReportDescParserBase::consTitles7
static
const char *const ReportDescParserBase::consTitles8
static
const char *const ReportDescParserBase::consTitles9
static
const char *const ReportDescParserBase::consTitlesA
static
const char *const ReportDescParserBase::consTitlesB
static
const char *const ReportDescParserBase::consTitlesC
static
const char *const ReportDescParserBase::consTitlesD
static

Definition at line 84 of file hidescriptorparser.h.

const char *const ReportDescParserBase::consTitlesE
static

Definition at line 85 of file hidescriptorparser.h.

const char *const ReportDescParserBase::digitTitles0
static
const char *const ReportDescParserBase::digitTitles1
static
Initial value:

Definition at line 87 of file hidescriptorparser.h.

const char *const ReportDescParserBase::digitTitles2
static
const char *const ReportDescParserBase::aplphanumTitles0
static
Initial value:

Definition at line 89 of file hidescriptorparser.h.

const char *const ReportDescParserBase::aplphanumTitles1
static

Definition at line 90 of file hidescriptorparser.h.

const char *const ReportDescParserBase::aplphanumTitles2
static
const char *const ReportDescParserBase::medInstrTitles0
static
const char *const ReportDescParserBase::medInstrTitles1
static
const char *const ReportDescParserBase::medInstrTitles2
static
Initial value:

Definition at line 94 of file hidescriptorparser.h.

const char *const ReportDescParserBase::medInstrTitles3
static
const char *const ReportDescParserBase::medInstrTitles4
static
Initial value:

Definition at line 96 of file hidescriptorparser.h.

ReportDescParserBase::UsagePageFunc ReportDescParserBase::usagePageFunctions
staticprotected
MultiValueBuffer ReportDescParserBase::theBuffer
protected

Definition at line 101 of file hidescriptorparser.h.

MultiByteValueParser ReportDescParserBase::valParser
protected

Definition at line 102 of file hidescriptorparser.h.

ByteSkipper ReportDescParserBase::theSkipper
protected

Definition at line 103 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::varBuffer[sizeof(USB_CONFIGURATION_DESCRIPTOR)]
protected

Definition at line 104 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::itemParseState
protected

Definition at line 106 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::itemSize
protected

Definition at line 107 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::itemPrefix
protected

Definition at line 108 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::rptSize
protected

Definition at line 109 of file hidescriptorparser.h.

uint8_t ReportDescParserBase::rptCount
protected

Definition at line 110 of file hidescriptorparser.h.

uint16_t ReportDescParserBase::totalSize
protected

Definition at line 112 of file hidescriptorparser.h.

UsagePageFunc ReportDescParserBase::pfUsage
protected

Definition at line 116 of file hidescriptorparser.h.


The documentation for this class was generated from the following files: