目次 - 4.関数 - 4.6エフェクト - Mix_UnregisterEffect

Mix_UnregisterEffect

int Mix_UnregisterEffect(int channel, Mix_EffectFunc_t f)

channel
後処理を行う関数fを削除するチャネル番号. MIX_CHANNEL_POSTとするとミキシングの後の処理
f
削除する関数

チャネルのリストから登録された最も古い(最初に見つけた)エフェクト関数fを削除する. この関数は単に最初に見つけた関数を削除するだけである. よって同じ関数を複数回登録した場合は, 複数回この関数を複数回呼び, エラーを戻したときチャネルからfを削除するのを止める必要がある. もしチャネルが有効ならば, Mix_RegisterEffectで登録したMix_EffectDone_t関数が呼ばれる.

戻り値: チャネルが不正, またはチャネルにエフェクト関数が登録されていないなど失敗のとき0(偽)

サンプルコード

// noEffectを後処理から削除する
// これは後処理に登録された全てのnoEffectを削除する
while(Mix_UnregisterEffect(MIX_CHANNEL_POST, noEffect));
// エラーをチェックしてMix_GetError()を表示したいかもしれない
// しかし, このループの後は必ず"No such effect registered"となる

参照

Mix_UnregisterAllEffects, Mix_RegisterEffect

原文へのリンク

4.6.2 Mix_UnregisterEffect