/** * 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_MIDI_THRU_HPP_ #define _HEAVY_CONTEXT_DPF_MIDI_THRU_HPP_ // object includes #include "HeavyContext.hpp" #include "HvControlSlice.h" #include "HvControlIf.h" #include "HvControlPack.h" #include "HvControlUnop.h" #include "HvControlBinop.h" #include "HvControlCast.h" #include "HvControlVar.h" class Heavy_dpf_midi_thru : public HeavyContext { public: Heavy_dpf_midi_thru(double sampleRate, int poolKb=10, int inQueueKb=2, int outQueueKb=0); ~Heavy_dpf_midi_thru(); const char *getName() override { return "dpf_midi_thru"; } int getNumInputChannels() override { return 0; } int getNumOutputChannels() override { return 0; } 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_v5VrmQ3B_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_B6GSlADW_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_I2zcuRMh_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_CjUUBW5B_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_aQFkp8jd_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_jkq5Pl2Q_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_pXycK95c_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_SsXGQ3yt_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_brjdPpjr_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_BFrAK30i_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_QAMfCGlA_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_Acuy1sJf_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_bgKXntSO_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_jhize0RL_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_wMrSZ8Bn_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_XUqD69Wm_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_EAHDuvw9_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_xeEFtXrE_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_blvp4MGy_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_YpXJceX5_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_pv0z1hoC_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_3KNHgmEB_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_qWl4QOMG_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_Mzc2I5WZ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_rek2TsVl_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_0XGa3vEW_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cPack_zLmFzaLK_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_JfBQFHlI_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_n7hvyxeQ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_6D7wQ3Az_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_MJKwDHLB_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSend_JTXcgFsy_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cCast_JrReKUYu_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cCast_cjNOB9Vf_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_YtUwtXzp_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_4bqP2oLK_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_1SuRmnmd_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_4wHAp26q_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_3EDBlgeL_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_THn7YVaK_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_GYdZztDQ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_NI8bIuKu_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_juM4e16P_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_GkNnhKKB_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_7cTQGOoF_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_WkQHTU3S_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_f62oZqD1_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_p9eKj59r_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_GWW3YUhc_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_crhcV6aG_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_dvnYPvdb_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_4MsIOXwd_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_IP20Rt2h_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_hXRe9EOe_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_PNrClbNB_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_jaJIJvy8_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_dFGMUkFY_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_5dGKgdVQ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_3sBhN5km_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_nf3YyE0C_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cPack_eHhFaSnZ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_9eKlV0De_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_t6a5BR8F_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_W5ijg6A8_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_R4oWcxfc_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSend_QvD6c9AQ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cCast_S6pjFYdg_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cCast_r4TRulVk_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_Rp6eSPzC_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_b66IORBq_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_N3kP8wKC_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_BwwzIXZ3_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_uEvC9ivd_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_wy6EQvmX_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_Vhpg6Qog_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_f7N9mpfj_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_ldtCVbeL_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_lqz1DeIQ_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_QXGiNqI0_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_3spmcwwH_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_QjGuPskp_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cPack_OCgqfLze_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_QInLDlgx_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_mLhoNBZ6_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_2TbgR5IC_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSend_Uq11MpZC_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_awhatFOB_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_PtdAXHV5_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_qy900BDR_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_0McvQ7qW_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_jyDV1rnb_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_4nK6YYA5_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_78VYx19V_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_TsLbu4r1_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_4jDoWsCi_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_gH5ngjJa_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_t4oPyIE5_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_naImCBzK_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_1qDkeSh2_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cPack_h7p6RmaV_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_OvPqjfDo_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_H56XMtw8_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_0HTJpCDo_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSend_IQu3ImZw_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_HunsaH1W_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSlice_yers4e0I_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSwitchcase_PTbwlEdk_onMessage(HeavyContextInterface *, void *, int letIn, const HvMessage *const, void *); static void cSlice_QUQUSCFN_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_I3zJO9MH_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_875t5doe_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cUnop_8tS95pEp_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_0I956Cig_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_FLv4NU6N_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cIf_FkWw7KyS_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_0JOLxOL6_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_3IEkvJhx_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cMsg_0RuBKNIx_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cPack_bP9Q0y6Y_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cVar_ZJHvrRhO_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_X891Gf8Q_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_m6mSjIoV_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cSend_hOrNPrno_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_oRGZQosL_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cBinop_RC576MtY_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_vVXNu8wl_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_WNrV9V4X_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_kfgVicPa_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_fyIDjcGp_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_h3jgrtHh_sendMessage(HeavyContextInterface *, int, const HvMessage *); static void cReceive_m1A6DpHC_sendMessage(HeavyContextInterface *, int, const HvMessage *); // objects ControlSlice cSlice_v5VrmQ3B; ControlSlice cSlice_B6GSlADW; ControlSlice cSlice_I2zcuRMh; ControlSlice cSlice_aQFkp8jd; ControlSlice cSlice_pXycK95c; ControlVar cVar_SsXGQ3yt; ControlIf cIf_QAMfCGlA; ControlBinop cBinop_Acuy1sJf; ControlVar cVar_bgKXntSO; ControlIf cIf_XUqD69Wm; ControlBinop cBinop_EAHDuvw9; ControlIf cIf_xeEFtXrE; ControlIf cIf_blvp4MGy; ControlIf cIf_YpXJceX5; ControlIf cIf_pv0z1hoC; ControlBinop cBinop_3KNHgmEB; ControlBinop cBinop_qWl4QOMG; ControlPack cPack_zLmFzaLK; ControlBinop cBinop_JfBQFHlI; ControlBinop cBinop_n7hvyxeQ; ControlVar cVar_6D7wQ3Az; ControlVar cVar_MJKwDHLB; ControlSlice cSlice_YtUwtXzp; ControlSlice cSlice_4bqP2oLK; ControlSlice cSlice_1SuRmnmd; ControlSlice cSlice_3EDBlgeL; ControlSlice cSlice_GYdZztDQ; ControlVar cVar_NI8bIuKu; ControlIf cIf_7cTQGOoF; ControlBinop cBinop_WkQHTU3S; ControlVar cVar_f62oZqD1; ControlIf cIf_crhcV6aG; ControlBinop cBinop_dvnYPvdb; ControlIf cIf_4MsIOXwd; ControlIf cIf_IP20Rt2h; ControlIf cIf_hXRe9EOe; ControlIf cIf_PNrClbNB; ControlBinop cBinop_jaJIJvy8; ControlBinop cBinop_dFGMUkFY; ControlPack cPack_eHhFaSnZ; ControlVar cVar_9eKlV0De; ControlBinop cBinop_t6a5BR8F; ControlBinop cBinop_W5ijg6A8; ControlVar cVar_R4oWcxfc; ControlSlice cSlice_Rp6eSPzC; ControlSlice cSlice_b66IORBq; ControlSlice cSlice_BwwzIXZ3; ControlVar cVar_uEvC9ivd; ControlIf cIf_f7N9mpfj; ControlBinop cBinop_ldtCVbeL; ControlIf cIf_lqz1DeIQ; ControlBinop cBinop_QXGiNqI0; ControlPack cPack_OCgqfLze; ControlVar cVar_QInLDlgx; ControlBinop cBinop_mLhoNBZ6; ControlBinop cBinop_2TbgR5IC; ControlSlice cSlice_awhatFOB; ControlSlice cSlice_PtdAXHV5; ControlSlice cSlice_0McvQ7qW; ControlVar cVar_jyDV1rnb; ControlIf cIf_TsLbu4r1; ControlBinop cBinop_4jDoWsCi; ControlIf cIf_gH5ngjJa; ControlBinop cBinop_t4oPyIE5; ControlPack cPack_h7p6RmaV; ControlVar cVar_OvPqjfDo; ControlBinop cBinop_H56XMtw8; ControlBinop cBinop_0HTJpCDo; ControlSlice cSlice_HunsaH1W; ControlSlice cSlice_yers4e0I; ControlSlice cSlice_QUQUSCFN; ControlVar cVar_I3zJO9MH; ControlIf cIf_0I956Cig; ControlBinop cBinop_FLv4NU6N; ControlIf cIf_FkWw7KyS; ControlBinop cBinop_0JOLxOL6; ControlPack cPack_bP9Q0y6Y; ControlVar cVar_ZJHvrRhO; ControlBinop cBinop_X891Gf8Q; ControlBinop cBinop_m6mSjIoV; ControlBinop cBinop_oRGZQosL; ControlBinop cBinop_RC576MtY; }; #endif // _HEAVY_CONTEXT_DPF_MIDI_THRU_HPP_