aboutsummaryrefslogtreecommitdiff
path: root/utils/gen_adldata/progs_cache.h
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-06-19 15:04:50 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-06-19 15:04:50 +0300
commitc0873278718da57ff19194377a35601027926c5f (patch)
tree6fca461d067a1e615788cecf7a74c175f0033fc8 /utils/gen_adldata/progs_cache.h
parent5a194eb263125e5505cca3ec0256c7efa348eaa4 (diff)
parent1026ecd3fd8dc865fb3a85ab4a130d9d1b494fd9 (diff)
downloadlibADLMIDI-c0873278718da57ff19194377a35601027926c5f.tar.gz
libADLMIDI-c0873278718da57ff19194377a35601027926c5f.tar.bz2
libADLMIDI-c0873278718da57ff19194377a35601027926c5f.zip
Merge branch 'master' into stable
Diffstat (limited to 'utils/gen_adldata/progs_cache.h')
-rw-r--r--utils/gen_adldata/progs_cache.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/utils/gen_adldata/progs_cache.h b/utils/gen_adldata/progs_cache.h
index 7b4cd39..5a916f5 100644
--- a/utils/gen_adldata/progs_cache.h
+++ b/utils/gen_adldata/progs_cache.h
@@ -49,9 +49,11 @@ inline bool equal_approx(double const a, double const b)
struct ins
{
+ enum { Flag_Pseudo4op = 0x01, Flag_NoSound = 0x02, Flag_Real4op = 0x04 };
size_t insno1, insno2;
unsigned char notenum;
bool pseudo4op;
+ bool real4op;
double voice2_fine_tune;
bool operator==(const ins &b) const
@@ -60,6 +62,7 @@ struct ins
&& insno1 == b.insno1
&& insno2 == b.insno2
&& pseudo4op == b.pseudo4op
+ && real4op == b.real4op
&& equal_approx(voice2_fine_tune, b.voice2_fine_tune);
}
bool operator< (const ins &b) const
@@ -68,6 +71,7 @@ struct ins
if(insno2 != b.insno2) return insno2 < b.insno2;
if(notenum != b.notenum) return notenum < b.notenum;
if(pseudo4op != b.pseudo4op) return pseudo4op < b.pseudo4op;
+ if(real4op != b.real4op) return real4op < b.real4op;
if(!equal_approx(voice2_fine_tune, b.voice2_fine_tune)) return voice2_fine_tune < b.voice2_fine_tune;
return 0;
}