Use the float version of pow
[alure.git] / src / auxeffectslot.h
blob92574c29a66d2bbc3ad7bc6a6aaf864c2328dd51
1 #ifndef AUXEFFECTSLOT_H
2 #define AUXEFFECTSLOT_H
4 #include <algorithm>
6 #include "main.h"
8 namespace alure {
10 class AuxiliaryEffectSlotImpl {
11 ContextImpl &mContext;
12 ALuint mId{0};
14 Vector<SourceSend> mSourceSends;
16 public:
17 AuxiliaryEffectSlotImpl(ContextImpl &context);
18 ~AuxiliaryEffectSlotImpl();
20 void addSourceSend(SourceSend source_send);
21 void removeSourceSend(SourceSend source_send);
23 ContextImpl &getContext() { return mContext; }
24 const ALuint &getId() const { return mId; }
26 void setGain(ALfloat gain);
27 void setSendAuto(bool sendauto);
29 void applyEffect(Effect effect);
31 void release();
33 Vector<SourceSend> getSourceSends() const { return mSourceSends; }
35 size_t getUseCount() const { return mSourceSends.size(); }
38 } // namespace alure
40 #endif /* AUXEFFECTSLOT_H */