En la presente sección se mencionan las principales clases para el trabajo de USB con C++:

Clases

Atributos y métodos

Device

std::string fileName(void);

u_int16_t idVendor(void);

u_int16_t idProduct(void);

u_int16_t idRevision(void);

u_int8_t devClass(void);

u_int8_t devSubClass(void);

u_int8_t devProtocol(void);

std::string Vendor(void);

std::string Product(void);

std::string SerialNumber(void);

u_int8_t numConfigurations(void);

int string(std::string &buf, int index, u_int16_t lang=0);

Configuration *firstConfiguration(void);

Configuration *nextConfiguration(void);

Configuration *lastConfiguration(void);

int controlTransfer(u_int8_t requestType, u_int8_t request,
                    u_int16_t value, u_int16_t index, u_int16_t length,
                    unsigned char *payload,
                    int timeout = 100);

int reset(void);

int setConfiguration(int configurationNumber);

Endpoint

int bulkWrite(QByteArray message, int timeout = 100);

int bulkRead(int length, unsigned char *message, int timeout = 100);

int reset(void);

int clearHalt(void);

void dumpDescriptor(void);

AltSetting

void dumpDescriptor(void);

Endpoint *firstEndpoint(void);
Endpoint *nextEndpoint(void);
Endpoint *lastEndpoint(void);

Interface

int driverName(std::string &driver);

int claim(void);

int release(void);

int setAltSetting(int altSettingNumber);

u_int8_t numAltSettings(void);

AltSetting *firstAltSetting(void);

AltSetting *nextAltSetting(void);

AltSetting *lastAltSetting(void);

Configuration

void dumpDescriptor(void);

u_int8_t numInterfaces(void);

Interface *firstInterface(void);

Interface *nextInterface(void);

Interface *lastInterface(void);

Bus

std::string directoryName(void);

DeviceID

DeviceID(u_int16_t vendor, u_int16_t product);

u_int16_t vendor(void);

u_int16_t product(void);

Busses

void rescan(void);

std::list<Device *> match(u_int8_t Class);

std::list<Device *> match(DeviceIDList);



Para mayor comprensión y características referirse a sección Descargas, en los códigos de ejemplo.