diff options
author | Chris Robinson <[email protected]> | 2018-11-19 06:43:37 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2018-11-19 06:43:37 -0800 |
commit | c5c537cc5f5cb466cdf6679c9af9768301e32cc3 (patch) | |
tree | 6e9252e69132430c35e853132df5e42f5c1fae4d /Alc/effects/echo.cpp | |
parent | f0cc34a60e65b7120a8d2d2bd5f76aebb3352685 (diff) |
Use proper inheritence for EffectStateFactory
Diffstat (limited to 'Alc/effects/echo.cpp')
-rw-r--r-- | Alc/effects/echo.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/Alc/effects/echo.cpp b/Alc/effects/echo.cpp index 492da6f6..47d21e6c 100644 --- a/Alc/effects/echo.cpp +++ b/Alc/effects/echo.cpp @@ -203,30 +203,20 @@ static ALvoid ALechoState_process(ALechoState *state, ALsizei SamplesToDo, const struct EchoStateFactory final : public EffectStateFactory { - EchoStateFactory() noexcept; + ALeffectState *create() override; }; -ALeffectState *EchoStateFactory_create(EchoStateFactory *UNUSED(factory)) +ALeffectState *EchoStateFactory::create() { ALechoState *state; - NEW_OBJ0(state, ALechoState)(); - if(!state) return NULL; - - return STATIC_CAST(ALeffectState, state); -} - -DEFINE_EFFECTSTATEFACTORY_VTABLE(EchoStateFactory); - -EchoStateFactory::EchoStateFactory() noexcept - : EffectStateFactory{GET_VTABLE2(EchoStateFactory, EffectStateFactory)} -{ + return state; } EffectStateFactory *EchoStateFactory_getFactory(void) { static EchoStateFactory EchoFactory{}; - return STATIC_CAST(EffectStateFactory, &EchoFactory); + return &EchoFactory; } |