Data Sheet

Teledyne LeCroy Automation API Reference Manual for USBTracer, USB Advisor, and Voyager USB Protocol
Suite
8
The USB Protocol Suite API exposes the following objects and interfaces:
Objects
Interfaces
Description
UsbAnalyzer
IUsbAnalyzer
IUsbAnalyzer3
Primary Analyzer interface
_IAnalyzerEvents
Analyzer event source
UsbTrace
IUsbTrace
Trace file interfaces
IUsbTrace2
UsbRecOptions
IUsbRecOptions
Recording options interface
UsbDevice
IUsbDevice
USB device interface
AnalyzerErrors
IAnalyzerErrors
Error collection interface
Only the UsbAnalyzer object is creatable at the top level (that is, via the CoCreateInstance call),
instantiation of an object of other classes requires API calls. The following diagram represents the object
dependencies:
All interfaces are dual interfaces, which allow simple use from typeless languages as well as from C++.
All objects implement the ISupportErrorInfo interface for easy error handling from the client.
The examples of C++ code given in this document assume using the import” technique of creating COM
clients, using the corresponding include statement:
#import "UsbAutomation.tlb" no_namespace named_guids
and creating appropriate wrapper classes in .tli and .tlh files by the compiler.
Samples of WSH, VBScript, and C++ client applications are provided.
1.4 Error Return Codes
ANALYZERCOMERROR_UNABLEOPENFILE = 0x80040201
ANALYZERCOMERROR_INVALIDTRACEHANDLE = 0x80040202
ANALYZERCOMERROR_UNABLESTARTRECORDING = 0x80040203
ANALYZERCOMERROR_UNABLELOADDO = 0x80040204
ANALYZERCOMERROR_UNABLESTOPRECORDING = 0x80040205
ANALYZERCOMERROR_UNABLESAVE = 0x80040206
ANALYZERCOMERROR_EVENTSINKNOTINSTANTIATED = 0x80040207
ANALYZERCOMERROR_INVALIDPACKETNUMBER = 0x80040208
ANALYZERCOMERROR_INVALIDERROR = 0x80040209
ANALYZERCOMERROR_INVALIDVERSIONTYPE = 0x80040210
ANALYZERCOMERROR_ANALYZERNOTCONNECTED = 0x80040211
ANALYZERCOMERROR_UNABLESTARTGENERATION = 0x80040212
ANALYZERCOMERROR_WRONGCALL = 0x80040213
UsbAnalyzer
UsbRecOptions
UsbTrace
AnalyzerErrors