Teledyne LeCroy USB Analyzer Automation Manual User Manual

Page 121

Advertising
background image

Teledyne LeCroy Automation API Reference Manual for USBTracer, USB Advisor, and Voyager USB Protocol
Suite

121

C++:

#define RECORDING_PROGRESS_REPORT

( 1 )


#define ANALYZERSTATE_IDLE

( -1 )

#define ANALYZERSTATE_WAITING_TRIGGER

( 0 )

#define ANALYZERSTATE_RECORDING_TRIGGERED

( 1 )

#define ANALYZERSTATE_UPLOADING_DATA

( 2 )

#define ANALYZERSTATE_SAVING_DATA

( 3 )

HRESULT __stdcall OnStatusReport( short subsystem, short state, long percent_done )

{

switch ( subsystem )
{
case RECORDING_PROGRESS_REPORT:

UpdateRecStatus( state, percent_done );
break;

}
TCHAR buf[1024];
_stprintf( buf, _T("%s"), m_RecordingStatus );
::SetWindowText( m_hwndStatus, buf );


return S_OK;

}


void UpdateRecStatus( short state, long percent_done )

{

TCHAR status_buf[64];
switch ( state )
{
case ANALYZERSTATE_IDLE:

_tcscpy( status_buf, _T("Idle") );
break;

case ANALYZERSTATE_WAITING_TRIGGER:

_tcscpy( status_buf, _T("Recording - Waiting for trigger") );
break;

case ANALYZERSTATE_RECORDING_TRIGGERED:

_tcscpy( status_buf, _T("Recording - Triggered") );
break;

case ANALYZERSTATE_UPLOADING_DATA:

_tcscpy( status_buf, _T("Uploading") );
break;

case ANALYZERSTATE_SAVING_DATA:

_tcscpy( status_buf, _T("Saving data") );
break;

default:

_tcscpy( status_buf, _T("Unknown") );
break;

}

_stprintf( m_RecordingStatus, _T("%s, done %ld%%"), status_buf, percent_done );





















Advertising