RavEngine
Loading...
Searching...
No Matches
wwise_room_effects_fx_attachment_params.h
1/*
2Copyright 2018 Google Inc. All Rights Reserved.
3
4Licensed under the Apache License, Version 2.0 (the "License");
5you may not use this file except in compliance with the License.
6You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10Unless required by applicable law or agreed to in writing, software
11distributed under the License is distributed on an "AS-IS" BASIS,
12WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13See the License for the specific language governing permissions and
14limitations under the License.
15*/
16
17#ifndef RESONANCE_AUDIO_PLATFORM_WWISE_WWISE_ROOM_EFFECTS_FX_ATTACHMENT_PARAMS_H_
18#define RESONANCE_AUDIO_PLATFORM_WWISE_WWISE_ROOM_EFFECTS_FX_ATTACHMENT_PARAMS_H_
19
20#include "AK/SoundEngine/Common/IAkPlugin.h"
21
22namespace vraudio {
23namespace wwise {
24
25// Class that implements a *null* plugin parameter node for the Wwise
26// integration. This is used by the plugins with *no* exposed parameters to
27// avoid redundant code.
28class WwiseRoomEffectsFxAttachmentParams : public AK::IAkPluginParam {
29 public:
31
34 wwise_room_effects_fx_attachment_params_copy);
35
36 ~WwiseRoomEffectsFxAttachmentParams() override = default;
37
38 // Clones parameter node.
39 IAkPluginParam* Clone(AK::IAkPluginMemAlloc* memory_allocator) override;
40
41 // Initializes parameter node.
42 AKRESULT Init(AK::IAkPluginMemAlloc* memory_allocator,
43 const void* params_block, AkUInt32 block_size) override;
44
45 // Terminates parameter node.
46 AKRESULT Term(AK::IAkPluginMemAlloc* memory_allocator) override;
47
48 // Sets parameter block.
49 AKRESULT SetParamsBlock(const void* params_block,
50 AkUInt32 block_size) override;
51
52 // Updates a single parameter.
53 AKRESULT SetParam(AkPluginParamID param_id, const void* param_value,
54 AkUInt32 param_size) override;
55
56 inline bool bypass() const { return bypass_; }
57
58 private:
59 // Plugin parameter IDs.
60 enum ParamId {
61 kBypass = 0, // Bypass room effects.
62 kNumParams = 1
63 };
64
65 // Denotes whether the room effects should be bypassed for this input.
66 bool bypass_;
67};
68
69} // namespace wwise
70} // namespace vraudio
71
72#endif // RESONANCE_AUDIO_PLATFORM_WWISE_WWISE_ROOM_EFFECTS_FX_ATTACHMENT_PARAMS_H_
Definition wwise_room_effects_fx_attachment_params.h:28