USB Host Shield 2.0
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 ()
 
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

◆ UsagePageFunc

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

Definition at line 24 of file hidescriptorparser.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
enErrorSuccess 
enErrorIncomplete 
enErrorBufferTooSmall 

Definition at line 138 of file hidescriptorparser.h.

Constructor & Destructor Documentation

◆ ReportDescParserBase()

ReportDescParserBase::ReportDescParserBase ( )
inline

Definition at line 124 of file hidescriptorparser.h.

Member Function Documentation

◆ PrintGenericDesktopPageUsage()

void ReportDescParserBase::PrintGenericDesktopPageUsage ( uint16_t  usage)
static

Definition at line 1296 of file hidescriptorparser.cpp.

◆ PrintSimulationControlsPageUsage()

void ReportDescParserBase::PrintSimulationControlsPageUsage ( uint16_t  usage)
static

Definition at line 1308 of file hidescriptorparser.cpp.

◆ PrintVRControlsPageUsage()

void ReportDescParserBase::PrintVRControlsPageUsage ( uint16_t  usage)
static

Definition at line 1318 of file hidescriptorparser.cpp.

◆ PrintSportsControlsPageUsage()

void ReportDescParserBase::PrintSportsControlsPageUsage ( uint16_t  usage)
static

Definition at line 1327 of file hidescriptorparser.cpp.

◆ PrintGameControlsPageUsage()

void ReportDescParserBase::PrintGameControlsPageUsage ( uint16_t  usage)
static

Definition at line 1337 of file hidescriptorparser.cpp.

◆ PrintGenericDeviceControlsPageUsage()

void ReportDescParserBase::PrintGenericDeviceControlsPageUsage ( uint16_t  usage)
static

Definition at line 1346 of file hidescriptorparser.cpp.

◆ PrintLEDPageUsage()

void ReportDescParserBase::PrintLEDPageUsage ( uint16_t  usage)
static

Definition at line 1354 of file hidescriptorparser.cpp.

◆ PrintButtonPageUsage()

void ReportDescParserBase::PrintButtonPageUsage ( uint16_t  usage)
static

Definition at line 1279 of file hidescriptorparser.cpp.

◆ PrintOrdinalPageUsage()

void ReportDescParserBase::PrintOrdinalPageUsage ( uint16_t  usage)
static

Definition at line 1287 of file hidescriptorparser.cpp.

◆ PrintTelephonyPageUsage()

void ReportDescParserBase::PrintTelephonyPageUsage ( uint16_t  usage)
static

Definition at line 1362 of file hidescriptorparser.cpp.

◆ PrintConsumerPageUsage()

void ReportDescParserBase::PrintConsumerPageUsage ( uint16_t  usage)
static

Definition at line 1375 of file hidescriptorparser.cpp.

◆ PrintDigitizerPageUsage()

void ReportDescParserBase::PrintDigitizerPageUsage ( uint16_t  usage)
static

Definition at line 1397 of file hidescriptorparser.cpp.

◆ PrintAlphanumDisplayPageUsage()

void ReportDescParserBase::PrintAlphanumDisplayPageUsage ( uint16_t  usage)
static

Definition at line 1407 of file hidescriptorparser.cpp.

◆ PrintMedicalInstrumentPageUsage()

void ReportDescParserBase::PrintMedicalInstrumentPageUsage ( uint16_t  usage)
static

Definition at line 1417 of file hidescriptorparser.cpp.

◆ PrintValue()

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

Definition at line 1013 of file hidescriptorparser.cpp.

◆ PrintByteValue()

void ReportDescParserBase::PrintByteValue ( uint8_t  data)
static

Definition at line 1020 of file hidescriptorparser.cpp.

◆ PrintItemTitle()

void ReportDescParserBase::PrintItemTitle ( uint8_t  prefix)
static

Definition at line 1026 of file hidescriptorparser.cpp.

◆ ParseItem()

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

Reimplemented in ReportDescParser2.

Definition at line 1091 of file hidescriptorparser.cpp.

◆ PrintUsagePage()

void ReportDescParserBase::PrintUsagePage ( uint16_t  page)
staticprotected

Definition at line 1254 of file hidescriptorparser.cpp.

◆ SetUsagePage()

void ReportDescParserBase::SetUsagePage ( uint16_t  page)
protected

Definition at line 1236 of file hidescriptorparser.cpp.

◆ Parse()

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

Implements USBReadParser.

Definition at line 993 of file hidescriptorparser.cpp.

Member Data Documentation

◆ usagePageTitles0

const char *const ReportDescParserBase::usagePageTitles0
static

◆ usagePageTitles1

const char *const ReportDescParserBase::usagePageTitles1
static

◆ genDesktopTitles0

const char *const ReportDescParserBase::genDesktopTitles0
static

◆ genDesktopTitles1

const char *const ReportDescParserBase::genDesktopTitles1
static

◆ genDesktopTitles2

const char *const ReportDescParserBase::genDesktopTitles2
static

◆ genDesktopTitles3

const char *const ReportDescParserBase::genDesktopTitles3
static

◆ genDesktopTitles4

const char *const ReportDescParserBase::genDesktopTitles4
static

◆ simuTitles0

const char *const ReportDescParserBase::simuTitles0
static

◆ simuTitles1

const char *const ReportDescParserBase::simuTitles1
static

◆ simuTitles2

const char *const ReportDescParserBase::simuTitles2
static

Definition at line 55 of file hidescriptorparser.h.

◆ vrTitles0

const char *const ReportDescParserBase::vrTitles0
static

◆ vrTitles1

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

Definition at line 57 of file hidescriptorparser.h.

◆ sportsCtrlTitles0

const char *const ReportDescParserBase::sportsCtrlTitles0
static

◆ sportsCtrlTitles1

const char *const ReportDescParserBase::sportsCtrlTitles1
static

◆ sportsCtrlTitles2

const char *const ReportDescParserBase::sportsCtrlTitles2
static

◆ gameTitles0

const char *const ReportDescParserBase::gameTitles0
static

◆ gameTitles1

const char *const ReportDescParserBase::gameTitles1
static

◆ genDevCtrlTitles

const char *const ReportDescParserBase::genDevCtrlTitles
static

◆ ledTitles

const char *const ReportDescParserBase::ledTitles
static

Definition at line 64 of file hidescriptorparser.h.

◆ telTitles0

const char *const ReportDescParserBase::telTitles0
static

◆ telTitles1

const char *const ReportDescParserBase::telTitles1
static

◆ telTitles2

const char *const ReportDescParserBase::telTitles2
static

◆ telTitles3

const char *const ReportDescParserBase::telTitles3
static

◆ telTitles4

const char *const ReportDescParserBase::telTitles4
static

◆ telTitles5

const char *const ReportDescParserBase::telTitles5
static

◆ consTitles0

const char *const ReportDescParserBase::consTitles0
static

◆ consTitles1

const char *const ReportDescParserBase::consTitles1
static
Initial value:

Definition at line 72 of file hidescriptorparser.h.

◆ consTitles2

const char *const ReportDescParserBase::consTitles2
static

◆ consTitles3

const char *const ReportDescParserBase::consTitles3
static

◆ consTitles4

const char *const ReportDescParserBase::consTitles4
static

◆ consTitles5

const char *const ReportDescParserBase::consTitles5
static

Definition at line 76 of file hidescriptorparser.h.

◆ consTitles6

const char *const ReportDescParserBase::consTitles6
static

Definition at line 77 of file hidescriptorparser.h.

◆ consTitles7

const char *const ReportDescParserBase::consTitles7
static

◆ consTitles8

const char *const ReportDescParserBase::consTitles8
static

◆ consTitles9

const char *const ReportDescParserBase::consTitles9
static

◆ consTitlesA

const char *const ReportDescParserBase::consTitlesA
static

◆ consTitlesB

const char *const ReportDescParserBase::consTitlesB
static

◆ consTitlesC

const char *const ReportDescParserBase::consTitlesC
static

◆ consTitlesD

const char *const ReportDescParserBase::consTitlesD
static

Definition at line 84 of file hidescriptorparser.h.

◆ consTitlesE

const char *const ReportDescParserBase::consTitlesE
static

Definition at line 85 of file hidescriptorparser.h.

◆ digitTitles0

const char *const ReportDescParserBase::digitTitles0
static

◆ digitTitles1

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

Definition at line 87 of file hidescriptorparser.h.

◆ digitTitles2

const char *const ReportDescParserBase::digitTitles2
static

◆ aplphanumTitles0

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

Definition at line 89 of file hidescriptorparser.h.

◆ aplphanumTitles1

const char *const ReportDescParserBase::aplphanumTitles1
static

Definition at line 90 of file hidescriptorparser.h.

◆ aplphanumTitles2

const char *const ReportDescParserBase::aplphanumTitles2
static

◆ medInstrTitles0

const char *const ReportDescParserBase::medInstrTitles0
static

◆ medInstrTitles1

const char *const ReportDescParserBase::medInstrTitles1
static

◆ medInstrTitles2

const char *const ReportDescParserBase::medInstrTitles2
static
Initial value:

Definition at line 94 of file hidescriptorparser.h.

◆ medInstrTitles3

const char *const ReportDescParserBase::medInstrTitles3
static

◆ medInstrTitles4

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

Definition at line 96 of file hidescriptorparser.h.

◆ usagePageFunctions

ReportDescParserBase::UsagePageFunc ReportDescParserBase::usagePageFunctions
staticprotected

◆ theBuffer

MultiValueBuffer ReportDescParserBase::theBuffer
protected

Definition at line 101 of file hidescriptorparser.h.

◆ valParser

MultiByteValueParser ReportDescParserBase::valParser
protected

Definition at line 102 of file hidescriptorparser.h.

◆ theSkipper

ByteSkipper ReportDescParserBase::theSkipper
protected

Definition at line 103 of file hidescriptorparser.h.

◆ varBuffer

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

Definition at line 104 of file hidescriptorparser.h.

◆ itemParseState

uint8_t ReportDescParserBase::itemParseState
protected

Definition at line 106 of file hidescriptorparser.h.

◆ itemSize

uint8_t ReportDescParserBase::itemSize
protected

Definition at line 107 of file hidescriptorparser.h.

◆ itemPrefix

uint8_t ReportDescParserBase::itemPrefix
protected

Definition at line 108 of file hidescriptorparser.h.

◆ rptSize

uint8_t ReportDescParserBase::rptSize
protected

Definition at line 109 of file hidescriptorparser.h.

◆ rptCount

uint8_t ReportDescParserBase::rptCount
protected

Definition at line 110 of file hidescriptorparser.h.

◆ totalSize

uint16_t ReportDescParserBase::totalSize
protected

Definition at line 112 of file hidescriptorparser.h.

◆ pfUsage

UsagePageFunc ReportDescParserBase::pfUsage
protected

Definition at line 117 of file hidescriptorparser.h.


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