beautypg.com

Teledyne LeCroy SierraFC Automation API User Manual

Page 70

background image

LeCroy Corporation

SierraFC M8-4 API Reference Manual

Manual Version 1.00

70

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);

}