Skip to content

Instantly share code, notes, and snippets.

View olilarkin's full-sized avatar
💭
10x thanks to ChatGPT

Oli Larkin olilarkin

💭
10x thanks to ChatGPT
View GitHub Profile
@olilarkin
olilarkin / IPlugEffect.cpp
Last active April 5, 2022 03:05
Get access to IPlugAPPHost stuff (MIDI/Audio Device names) in plugin class
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
, mPAPPHost(reinterpret_cast<IPlugAPPHost*>(info.pAppHost))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
#include "IWebViewControl.h"
#include "json.hpp"
using json = nlohmann::json;
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPrograms))
@olilarkin
olilarkin / IPlugOverSampler.cpp
Last active August 20, 2021 07:34
IPlugOverSampler
#include "IPlugOverSampler.h"
#include "IPlug_include_in_plug_src.h"
IPlugOverSampler::IPlugOverSampler(const InstanceInfo& instanceInfo)
: Plugin(instanceInfo, MakeConfig(kNumParams, kNumPrograms))
{
GetParam(kGain)->InitDouble("Gain", 1., 1., 100.0, 0.01, "*");
GetParam(kOverSampling)->InitEnum("OverSampling", 0, 5, "", 0, "", OVERSAMPLING_FACTORS_VA_LIST);
}
@olilarkin
olilarkin / IPlugEffect.cpp
Last active July 22, 2021 22:09
IPlug2 cables thing - drag n drop example
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
struct Cable
{
IVec2 pos1;
IVec2 pos2;
IColor color;
@olilarkin
olilarkin / IPlugEffect.cpp
Last active July 14, 2021 21:25
Storing and Restoring the plugin editor scaling
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");
#if IPLUG_EDITOR // http://bit.ly/2S64BDd
@olilarkin
olilarkin / IPlugEffect.cpp
Created July 14, 2021 17:54
Redraw a control periodically using a timer
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
class MyControl : public IControl {
public:
MyControl(const IRECT& r)
: IControl(r)
{
mTimer = std::unique_ptr<Timer>(Timer::Create([&](Timer& t) {
@olilarkin
olilarkin / IPlugEffect.cpp
Last active May 17, 2021 17:35
Switch IGraphics DrawScale using a radio button
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");
@olilarkin
olilarkin / IPlugEffect.cpp
Created May 10, 2021 17:43
Randomise parameters from a button click
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
int kMsgTagRandomise = 0;
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");
@olilarkin
olilarkin / IPlugEffect.cpp
Created April 5, 2021 19:30
Storing and restoring text in an editable text control
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");
mMakeGraphicsFunc = [&]() {
@olilarkin
olilarkin / IPlugEffect.cpp
Last active March 6, 2021 20:05
Basic VU meter hookup
#include "IPlugEffect.h"
#include "IPlug_include_in_plug_src.h"
#include "IControls.h"
constexpr int kNumVUFrames = 100;
IPlugEffect::IPlugEffect(const InstanceInfo& info)
: Plugin(info, MakeConfig(kNumParams, kNumPresets))
{
GetParam(kGain)->InitDouble("Gain", 0., 0., 100.0, 0.01, "%");