CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
ALDevice.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
10#include "ALLoader.hpp"
11
13
14namespace CeresEngine {
15
16 class ALAudioAPI;
17
18 class ALDevice final : public AudioAPIDevice {
19 private:
21 ALAudioAPI& renderer [[maybe_unused]];
22
24 ALCdevice* device;
25
27 ALCcontext* context;
28
31
32 public:
34 ~ALDevice() final;
35
36 public:
39
42
45
46 public:
49 };
50
51} // namespace CeresEngine
Definition ALAudioAPI.hpp:18
Definition ALDevice.hpp:18
ALAudioAPI & renderer
The OpenAL renderer instance.
Definition ALDevice.hpp:21
ALCdevice * device
The ALC device.
Definition ALDevice.hpp:24
ALCcontext * context
The ALC context.
Definition ALDevice.hpp:27
AudioAPIListenerPtr defaultListener
The OpenAL default listener.
Definition ALDevice.hpp:30
AudioAPISourcePtr createSource(const AudioAPISourceDescriptor &descriptor) final
ALDevice(ALAudioAPI &renderer, const AudioAPIDeviceDescriptor &descriptor)
AudioAPIBufferPtr createBuffer(const AudioAPIBufferDescriptor &descriptor) final
AudioAPIListenerPtr createListener(const AudioAPIListenerDescriptor &descriptor) final
AudioAPIListenerPtr getDefaultListener() final
Definition Device.hpp:22
A retain-release type of smart pointer.
Definition SmartPtr.hpp:132
Definition Application.hpp:19
A descriptor structure that describes the creation of an audio device.
Definition Device.hpp:19
A descriptor structure that describes the creation of an audio listener.
Definition Listener.hpp:19
A descriptor structure that describes the creation of an audio source.
Definition Source.hpp:19