summaryrefslogtreecommitdiffstats
path: root/src/audio_core/effect_context.cpp
blob: c42e71c1c750ddeccdef4426133cb36cc7657b8a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Copyright 2020 yuzu Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.

#include "audio_core/effect_context.h"

namespace AudioCore {
EffectContext::EffectContext(std::size_t effect_count) : effect_count(effect_count) {
    for (std::size_t i = 0; i < effect_count; i++) {
        effects.push_back(std::make_unique<EffectStubbed>());
    }
}
EffectContext::~EffectContext() = default;

std::size_t EffectContext::GetCount() const {
    return effect_count;
}

EffectBase* EffectContext::GetInfo(std::size_t i) {
    return effects.at(i).get();
}

EffectStubbed::EffectStubbed() : EffectBase::EffectBase() {}
EffectStubbed::~EffectStubbed() = default;

void EffectStubbed::Update(EffectInfo::InParams& in_params) {
    if (in_params.is_new) {
        usage = UsageStatus::New;
    }
}

EffectBase::EffectBase() = default;
EffectBase::~EffectBase() = default;

UsageStatus EffectBase::GetUsage() const {
    return usage;
}

} // namespace AudioCore