263 lines
15 KiB
C++
263 lines
15 KiB
C++
/**
|
|
* Copyright (c) 2021 Enzien Audio, Ltd.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without modification,
|
|
* are permitted provided that the following conditions are met:
|
|
*
|
|
* 1. Redistributions of source code must retain the above copyright notice,
|
|
* this list of conditions, and the following disclaimer.
|
|
*
|
|
* 2. Redistributions in binary form must reproduce the phrase "powered by heavy",
|
|
* the heavy logo, and a hyperlink to https://enzienaudio.com, all in a visible
|
|
* form.
|
|
*
|
|
* 2.1 If the Application is distributed in a store system (for example,
|
|
* the Apple "App Store" or "Google Play"), the phrase "powered by heavy"
|
|
* shall be included in the app description or the copyright text as well as
|
|
* the in the app itself. The heavy logo will shall be visible in the app
|
|
* itself as well.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
|
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
*
|
|
*/
|
|
|
|
#ifndef _HEAVY_CONTEXT_DPF_EXAMPLE_HPP_
|
|
#define _HEAVY_CONTEXT_DPF_EXAMPLE_HPP_
|
|
|
|
// object includes
|
|
#include "HeavyContext.hpp"
|
|
#include "HvControlCast.h"
|
|
#include "HvControlSlice.h"
|
|
#include "HvControlPack.h"
|
|
#include "HvControlBinop.h"
|
|
#include "HvControlVar.h"
|
|
#include "HvMath.h"
|
|
#include "HvControlIf.h"
|
|
#include "HvControlUnop.h"
|
|
|
|
class Heavy_dpf_example : public HeavyContext {
|
|
|
|
public:
|
|
Heavy_dpf_example(double sampleRate, int poolKb=10, int inQueueKb=2, int outQueueKb=0);
|
|
~Heavy_dpf_example();
|
|
|
|
const char *getName() override { return "dpf_example"; }
|
|
int getNumInputChannels() override { return 2; }
|
|
int getNumOutputChannels() override { return 2; }
|
|
|
|
int process(float **inputBuffers, float **outputBuffer, int n) override;
|
|
int processInline(float *inputBuffers, float *outputBuffer, int n) override;
|
|
int processInlineInterleaved(float *inputBuffers, float *outputBuffer, int n) override;
|
|
|
|
int getParameterInfo(int index, HvParameterInfo *info) override;
|
|
struct Parameter {
|
|
|
|
struct Out {
|
|
enum ParameterOut : hv_uint32_t {
|
|
__HV_BENDOUT = 0xE8458013, // __hv_bendout
|
|
__HV_CTLOUT = 0xE5E2A040, // __hv_ctlout
|
|
__HV_NOTEOUT = 0xD1D4AC2, // __hv_noteout
|
|
__HV_PGMOUT = 0x8753E39E, // __hv_pgmout
|
|
__HV_TOUCHOUT = 0x476D4387, // __hv_touchout
|
|
};
|
|
};
|
|
};
|
|
|
|
private:
|
|
HvTable *getTableForHash(hv_uint32_t tableHash) override;
|
|
void scheduleMessageForReceiver(hv_uint32_t receiverHash, HvMessage *m) override;
|
|
|
|
// static sendMessage functions
|
|
static void cSlice_hl5vBHNp_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_ylXDwJcZ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_bA5ci4H6_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_YpS7vvRv_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_KT31W2w3_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_m8VtMpGk_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_KPV1AFob_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_5qtccESG_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_CQoRGL7B_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_ssJSCDrK_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_Mb5nw3DR_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_wtFYxgtx_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_F0kRSmkI_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cPack_xwUoHsSo_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_W4DWXLFV_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSend_GVz3gDe4_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_8dz52u9Z_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_6cAn7djG_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_jUcgx0L6_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_i8dZoItn_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_1qqhhVNk_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_3nFIGCtx_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_Uzt46vxw_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_i4juEjjd_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_swFwKkwC_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_YauMmchA_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_7t2J2MlL_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_eWHRwUey_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_w5s8nkUb_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_7mHmXbxO_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_pQd76iAK_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_a0YamcX6_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_8cRMzv7p_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_j08aQBwd_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_25Ghd0z7_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_rmHI0lBi_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_KcEtbwfw_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_GAmmKtJo_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_9hzM89gj_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_ifB8ELD8_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_39hkaBKJ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_FHnSu2lH_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_1FJi2rmv_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cPack_jPoKLiUE_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_XEUhnXhV_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_f7eAJCMh_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_SgVfJxeG_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_yGByT1dq_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSend_t1ai4h05_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cCast_2OB6tAv4_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cCast_b036gMRu_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_Cc4ftweA_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_GKnbdSF1_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_W4uhJJ2G_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_yK1ct3x5_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_SbPekxvo_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_4JLyScHf_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_tsfDRNiI_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_WYWMmIs9_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_vTozANTw_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_l8AZ77OB_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_xuHfc1he_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_GL5voH3F_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cPack_f54JIHyD_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_vEfKjFKM_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_8p3mmzET_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_CmTrkmSZ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSend_OJH8drg2_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_r8i8uTTJ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_g3GkHEW8_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_wonxMsw1_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_VIdlDx7S_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_ZORELtLf_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_LUQUpduS_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_ODG9pQm4_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_m5nYTOgK_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_hItQJlwU_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_2ICJGthl_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_KWQRN4xC_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_JBZMNuTp_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cPack_BGYVIlrL_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_DpRyqxcF_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_Ekh87tB4_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_HRmhjbVl_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSend_e54fafHj_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_9FMBZIKf_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSlice_ddagGoys_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSwitchcase_bBtIwvu9_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *);
|
|
static void cSlice_080d2kLN_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_vpyngHC3_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_ZWe2idI6_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cUnop_boUTQzQ6_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_lBbDQQni_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_Va4CkqG9_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cIf_NK7rKLSJ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_yeTyIvOZ_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cMsg_yS3IPMwu_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cPack_WGvA9xup_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cVar_9A6YAgfU_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_CBsf5JlD_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cBinop_siElkYOO_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cSend_Pp644YiG_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_Wuo5XOXF_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_0NTHfNka_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_wAZjctal_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_tzc2vC0H_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_tGY9yEQM_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
static void cReceive_bvhtEEQP_sendMessage(HeavyContextInterface *, int, const HvMessage *);
|
|
|
|
// objects
|
|
ControlSlice cSlice_hl5vBHNp;
|
|
ControlSlice cSlice_ylXDwJcZ;
|
|
ControlSlice cSlice_bA5ci4H6;
|
|
ControlSlice cSlice_KT31W2w3;
|
|
ControlVar cVar_m8VtMpGk;
|
|
ControlIf cIf_CQoRGL7B;
|
|
ControlBinop cBinop_ssJSCDrK;
|
|
ControlIf cIf_Mb5nw3DR;
|
|
ControlBinop cBinop_wtFYxgtx;
|
|
ControlPack cPack_xwUoHsSo;
|
|
ControlVar cVar_W4DWXLFV;
|
|
ControlBinop cBinop_8dz52u9Z;
|
|
ControlSlice cSlice_6cAn7djG;
|
|
ControlSlice cSlice_jUcgx0L6;
|
|
ControlSlice cSlice_i8dZoItn;
|
|
ControlSlice cSlice_3nFIGCtx;
|
|
ControlSlice cSlice_i4juEjjd;
|
|
ControlVar cVar_swFwKkwC;
|
|
ControlIf cIf_eWHRwUey;
|
|
ControlBinop cBinop_w5s8nkUb;
|
|
ControlVar cVar_7mHmXbxO;
|
|
ControlIf cIf_8cRMzv7p;
|
|
ControlBinop cBinop_j08aQBwd;
|
|
ControlIf cIf_25Ghd0z7;
|
|
ControlIf cIf_rmHI0lBi;
|
|
ControlIf cIf_KcEtbwfw;
|
|
ControlIf cIf_GAmmKtJo;
|
|
ControlBinop cBinop_9hzM89gj;
|
|
ControlBinop cBinop_ifB8ELD8;
|
|
ControlPack cPack_jPoKLiUE;
|
|
ControlVar cVar_XEUhnXhV;
|
|
ControlBinop cBinop_f7eAJCMh;
|
|
ControlBinop cBinop_SgVfJxeG;
|
|
ControlVar cVar_yGByT1dq;
|
|
ControlSlice cSlice_Cc4ftweA;
|
|
ControlSlice cSlice_GKnbdSF1;
|
|
ControlSlice cSlice_yK1ct3x5;
|
|
ControlVar cVar_SbPekxvo;
|
|
ControlIf cIf_WYWMmIs9;
|
|
ControlBinop cBinop_vTozANTw;
|
|
ControlIf cIf_l8AZ77OB;
|
|
ControlBinop cBinop_xuHfc1he;
|
|
ControlPack cPack_f54JIHyD;
|
|
ControlVar cVar_vEfKjFKM;
|
|
ControlBinop cBinop_8p3mmzET;
|
|
ControlBinop cBinop_CmTrkmSZ;
|
|
ControlSlice cSlice_r8i8uTTJ;
|
|
ControlSlice cSlice_g3GkHEW8;
|
|
ControlSlice cSlice_VIdlDx7S;
|
|
ControlVar cVar_ZORELtLf;
|
|
ControlIf cIf_m5nYTOgK;
|
|
ControlBinop cBinop_hItQJlwU;
|
|
ControlIf cIf_2ICJGthl;
|
|
ControlBinop cBinop_KWQRN4xC;
|
|
ControlPack cPack_BGYVIlrL;
|
|
ControlVar cVar_DpRyqxcF;
|
|
ControlBinop cBinop_Ekh87tB4;
|
|
ControlBinop cBinop_HRmhjbVl;
|
|
ControlSlice cSlice_9FMBZIKf;
|
|
ControlSlice cSlice_ddagGoys;
|
|
ControlSlice cSlice_080d2kLN;
|
|
ControlVar cVar_vpyngHC3;
|
|
ControlIf cIf_lBbDQQni;
|
|
ControlBinop cBinop_Va4CkqG9;
|
|
ControlIf cIf_NK7rKLSJ;
|
|
ControlBinop cBinop_yeTyIvOZ;
|
|
ControlPack cPack_WGvA9xup;
|
|
ControlVar cVar_9A6YAgfU;
|
|
ControlBinop cBinop_CBsf5JlD;
|
|
ControlBinop cBinop_siElkYOO;
|
|
};
|
|
|
|
#endif // _HEAVY_CONTEXT_DPF_EXAMPLE_HPP_
|