// src\modules\core\plugin.hpp
#pragma once
#include <rack.hpp>

using namespace rack;

// Declare the Plugin, defined in plugin.cpp
extern Plugin* pluginInstance;

// Declare each Model, defined in each module source file
// extern Model* modelMyModule;

// Core
extern Model *modelArpSeq;
extern Model *modelAutobreak;
extern Model *modelAutobreakStudio;
extern Model *modelByteBeat;
extern Model *modelDigitalProgrammer;
extern Model *modelDigitalSequencer;
extern Model *modelDigitalSequencerXP;
extern Model *modelDrumRandomizer;
extern Model *modelCueResearch;
extern Model *modelGlitchSequencer;
extern Model *modelGhosts;
extern Model *modelGrainEngineMK2;
extern Model *modelGrainEngineMK2Expander;
extern Model *modelGrainFx;
extern Model *modelGrooveBox;
extern Model *modelGrooveBoxExpander;
extern Model *modelHazumi;
extern Model *modelOnePoint;
extern Model *modelOneZero;
extern Model *modelLooper;
extern Model *modelMaya;
extern Model *modelNoteDetector;
extern Model *modelRepeater;
extern Model *modelSamplerX8;
extern Model *modelSampler16P;
extern Model *modelSatanonaut;
extern Model *modelSatanonautUnearthed;
extern Model *modelVectorRotation;
extern Model *modelWavBank;
extern Model *modelWavBankMC;
extern Model *modelNetrunner;
extern Model *modelTempestVS1;
extern Model *modelXY;
extern Model *modelKaiseki;