#include
<oalplus/device.hpp>
namespace tag { struct Playback { }; struct Capture { }; } // namespace tag class DevCommonOps { public: DevCommonOps(DevCommonOps&&) = default; static Range<StrCRef> Extensions(void);}; template <typename DeviceTag> class DeviceOps;
DeviceOps<tag::Playback>
implements audio playback
device-specific operations.
![]() |
Note |
---|---|
Do not use this class directly, use Device instead. |
template <> class DeviceOps<tag::Playback> : public DevCommonOps { public: StrCRef Specifier(void) const;static Range<StrCRef> Specifiers(void);
};
Returns the device specifier string. See |
|
Returns a range of specifier strings for available audio playback devices.
See |
DeviceOps<tag::Capture>
implements audio capture
device-specific operations.
![]() |
Note |
---|---|
Do not use this class directly, use CaptureDevice instead. |
template <> class DeviceOps<tag::Capture> : public DevCommonOps { public: StrCRef Specifier(void) const;static Range<StrCRef> Specifiers(void);
void Start(void);
void Stop(void);
ALCsizei Samples(void) const;
void Samples(ALCvoid* buffer, ALCsizei samples) const;
};
Returns the device specifier string. See |
|
Returns a range of specifier strings for available audio capture devices.
See |
|
Starts audio capture on |
|
Stops audio capture on |
|
Gets the number of samples captured on |
|
Gets the samples captured on |
class Device : public DeviceOps<tag::Playback> { public: Device(void);Device(StrCRef dev_spec);
};
Constructs an object referencing the default audio playback device.
See |
|
Constructs an object referencing the specified audio device. See |
class CaptureDevice : public DeviceOps<tag::Capture> { public: CaptureDevice( ALCuint frequency, DataFormat format, ALCsizei bufsize );CaptureDevice( StrCRef dev_spec, ALCuint frequency, DataFormat format, ALCsizei bufsize );
};