aboutsummaryrefslogtreecommitdiff
path: root/utils/gen_adldata/progs_cache.h
diff options
context:
space:
mode:
authorWohlstand <admin@wohlnet.ru>2017-11-04 17:01:15 +0300
committerWohlstand <admin@wohlnet.ru>2017-11-04 17:01:15 +0300
commitf4736ec6e66824931fd36edfad60670f56c78146 (patch)
tree669d154b1bb134f47d99054bc264b357381f793f /utils/gen_adldata/progs_cache.h
parent78d7d51ad562bd8040cba46ab0471bc5034fcf4e (diff)
downloadlibADLMIDI-f4736ec6e66824931fd36edfad60670f56c78146.tar.gz
libADLMIDI-f4736ec6e66824931fd36edfad60670f56c78146.tar.bz2
libADLMIDI-f4736ec6e66824931fd36edfad60670f56c78146.zip
Added default states for deep tremolo/vibrato and volume moduels
TODO: Implement support for tri-states per deep-tremolo, deep-vibrato flags
Diffstat (limited to 'utils/gen_adldata/progs_cache.h')
-rw-r--r--utils/gen_adldata/progs_cache.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/utils/gen_adldata/progs_cache.h b/utils/gen_adldata/progs_cache.h
index c7eb9da..aa29c8a 100644
--- a/utils/gen_adldata/progs_cache.h
+++ b/utils/gen_adldata/progs_cache.h
@@ -76,6 +76,24 @@ struct ins
}
};
+enum VolumesModels
+{
+ VOLUME_Generic,
+ VOLUME_CMF,
+ VOLUME_DMX,
+ VOLUME_APOGEE,
+ VOLUME_9X
+};
+
+struct AdlBankSetup
+{
+ int volumeModel;
+ bool deepTremolo;
+ bool deepVibrato;
+ bool adLibPercussions;
+ bool scaleModulators;
+};
+
typedef std::map<insdata, std::pair<size_t, std::set<std::string> > > InstrumentDataTab;
extern InstrumentDataTab insdatatab;
@@ -85,12 +103,16 @@ extern InstrumentsData instab;
typedef std::map<size_t, std::map<size_t, size_t> > InstProgsData;
extern InstProgsData progs;
+typedef std::map<size_t, AdlBankSetup> BankSetupData;
+extern BankSetupData banksetup;
+
extern std::vector<std::string> banknames;
//static std::map<unsigned, std::map<unsigned, unsigned> > Correlate;
//extern unsigned maxvalues[30];
-void SetBank(unsigned bank, unsigned patch, size_t insno);
+void SetBank(size_t bank, unsigned patch, size_t insno);
+void SetBankSetup(size_t bank, const AdlBankSetup &setup);
/* 2op voice instrument */
size_t InsertIns(const insdata &id, ins &in,