Data Structures | Typedefs | Variables

pa_hostapi.h File Reference

Interfaces and representation structures used by pa_front.c to manage and communicate with host API implementations. More...

#include "portaudio.h"

Go to the source code of this file.

Data Structures

struct  PaUtilPrivatePaFrontHostApiInfo
struct  PaUtilHostApiSpecificStreamInfoHeader
struct  PaUtilHostApiRepresentation

Typedefs

typedef struct
PaUtilPrivatePaFrontHostApiInfo 
PaUtilPrivatePaFrontHostApiInfo
typedef struct
PaUtilHostApiSpecificStreamInfoHeader 
PaUtilHostApiSpecificStreamInfoHeader
typedef struct
PaUtilHostApiRepresentation 
PaUtilHostApiRepresentation
typedef PaError PaUtilHostApiInitializer (PaUtilHostApiRepresentation **, PaHostApiIndex)

Variables

PaUtilHostApiInitializerpaHostApiInitializers []
int paDefaultHostApiIndex

Detailed Description

Interfaces and representation structures used by pa_front.c to manage and communicate with host API implementations.


Typedef Documentation

Prototype for the initialization function which must be implemented by every host API.

This function should only return an error other than paNoError if it encounters an unexpected and fatal error (memory allocation error for example). In general, there may be conditions under which it returns a NULL interface pointer and also returns paNoError. For example, if the ASIO implementation detects that ASIO is not installed, it should return a NULL interface, and paNoError.

See also:
paHostApiInitializers

A structure representing the interface to a host API. Contains both concrete data and pointers to functions which implement the interface.

The common header for all data structures whose pointers are passed through the hostApiSpecificStreamInfo field of the PaStreamParameters structure. Note that in order to keep the public PortAudio interface clean, this structure is not used explicitly when declaring hostApiSpecificStreamInfo data structures. However, some code in pa_front depends on the first 3 members being equivalent with this structure.

See also:
PaStreamParameters

**FOR THE USE OF pa_front.c ONLY** Do NOT use fields in this structure, they my change at any time. Use functions defined in pa_util.h if you think you need functionality which can be derived from here.


Variable Documentation

The index of the default host API in the paHostApiInitializers array.

There is a platform specific file which defines paDefaultHostApiIndex for that platform, see pa_win/pa_win_hostapis.c for example.

Referenced by Pa_GetDefaultHostApi().

paHostApiInitializers is a NULL-terminated array of host API initialization functions. These functions are called by pa_front.c to initialize the host APIs when the client calls Pa_Initialize().

There is a platform specific file which defines paHostApiInitializers for that platform, pa_win/pa_win_hostapis.c contains the Win32 definitions for example.

Note that on Linux, ALSA is placed before OSS so that the former is preferred over the latter.