3 Appendix A – Programming the Multi-ensemble DAB+ Radcap
10
BOOL __stdcall DabRadcapGetServiceInformationW
(
HANDLE hDev,
ServiceInfoW *pInfo);
Parameters
hDev
Handle returned by DabRadcapOpen.
pInfo
Pointer to a ServiceInfoW structure which receives the requested
information.
Return values
If the function succeeds the return value is TRUE.
If the function fails, the return value is FALSE. To get extended error
information, call GetLastError.
BOOL __stdcall DabRadcapGetPAD
(
HANDLE hDev,
PAD *pPad,
OVERLAPPED *pOverlap);
Parameters
hDev
Handle returned by DabRadcapOpen.
pPAD
Pointer to a PAD structure which receives the next broadcast FPAD
and XPAD contents.
pOverlap
Pointer to an OVERLAPPED structure. For overlapped operations,
DabRadcapGetPAD
returns immediately, and the event object is
signalled when the operation has been completed. Otherwise, the
function does not return until the operation has been completed
or an error occurs.
Return values
If the function succeeds the return value is TRUE.
If the operation fails or is pending, the return value is FALSE. To get
extended error information, call GetLastError, which returns ERROR
IO_PENDING if an overlapped operation is pending.
Comments
Refer to Radio Broadcasting Systems; Digital Audio Broadcasting
(DAB) to mobile, portable and fixed receivers (ETSI EN 300 401) for
details on how to interpret FPAD and XPAD information. Refer to Digital
Radio Broadcasting; Multimedia Object Transfer (MOT) protocol (ETSI
EN 301 324) for details on decoding MOT information.
The audio stream must be open and running in order to receive PAD data,
otherwise this call will fail and
GetLastError
will return ERROR_NOT_READY.
Because PAD information is transmitted frequently (every 24ms for DAB or
120ms for DAB+), the use of multiple buffers and overlapped I/O is strongly
recommended to avoid loss of data.
BOOL __stdcall DabRadcapGetServiceStatus
(
HANDLE hDev,
ServiceStatus *pStatus );
Parameters
hDev
Handle returned by DabRadcapOpen.
pStatus
Pointer to a ServiceStatus variable into which the result is to be
written.
Return values
If the function succeeds the return value is TRUE.