summaryrefslogtreecommitdiff
path: root/muse2/muse/midiedit/drummap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'muse2/muse/midiedit/drummap.cpp')
-rw-r--r--muse2/muse/midiedit/drummap.cpp82
1 files changed, 43 insertions, 39 deletions
diff --git a/muse2/muse/midiedit/drummap.cpp b/muse2/muse/midiedit/drummap.cpp
index 8f49afc0..9d4b23c2 100644
--- a/muse2/muse/midiedit/drummap.cpp
+++ b/muse2/muse/midiedit/drummap.cpp
@@ -26,12 +26,15 @@
#include "xml.h"
#include "song.h"
-global_drum_ordering_t global_drum_ordering;
+namespace MusEGlobal {
char drumOutmap[DRUM_MAPSIZE];
char drumInmap[128];
+MusECore::DrumMap drumMap[DRUM_MAPSIZE];
+global_drum_ordering_t global_drum_ordering;
+}
-DrumMap drumMap[DRUM_MAPSIZE];
+namespace MusECore {
//---------------------------------------------------------
// GM default drum map
@@ -257,18 +260,18 @@ const DrumMap idrumMap[DRUM_MAPSIZE] = {
void initDrumMap()
{
for (int i = 0; i < DRUM_MAPSIZE; ++i) {
- DrumMap d = drumMap[i];
+ DrumMap d = MusEGlobal::drumMap[i];
//Make sure we're not overwriting any values loaded
//On init, all these values are zero. If so, just set the drummap entry to the initial drummap entry.
if (!(d.vol || d.len || d.channel || d.port || d.lv1 || d.lv2 || d.lv3 || d.lv4 || d.enote || d.anote || d.mute))
- drumMap[i] = idrumMap[i];
+ MusEGlobal::drumMap[i] = idrumMap[i];
}
//Finally, setup the inMap, outMap-values
- memset(drumInmap, 0, sizeof(drumInmap));
- memset(drumOutmap, 0, sizeof(drumOutmap));
+ memset(MusEGlobal::drumInmap, 0, sizeof(MusEGlobal::drumInmap));
+ memset(MusEGlobal::drumOutmap, 0, sizeof(MusEGlobal::drumOutmap));
for (int i = 0; i < DRUM_MAPSIZE; ++i) {
- drumInmap[(unsigned int)(drumMap[i].enote)] = i;
- drumOutmap[(unsigned int)(drumMap[i].anote)] = i;
+ MusEGlobal::drumInmap[(unsigned int)(MusEGlobal::drumMap[i].enote)] = i;
+ MusEGlobal::drumOutmap[(unsigned int)(MusEGlobal::drumMap[i].anote)] = i;
}
}
@@ -278,23 +281,23 @@ void initDrumMap()
void resetGMDrumMap()
{
- audio->msgIdle(true);
+ MusEGlobal::audio->msgIdle(true);
// Delete all port controller events.
- //audio->msgChangeAllPortDrumCtrlEvents(false);
- song->changeAllPortDrumCtrlEvents(false);
+ //MusEGlobal::audio->msgChangeAllPortDrumCtrlEvents(false);
+ MusEGlobal::song->changeAllPortDrumCtrlEvents(false);
for(int i = 0; i < DRUM_MAPSIZE; ++i)
- drumMap[i] = idrumMap[i];
- memset(drumInmap, 0, sizeof(drumInmap));
- memset(drumOutmap, 0, sizeof(drumOutmap));
+ MusEGlobal::drumMap[i] = idrumMap[i];
+ memset(MusEGlobal::drumInmap, 0, sizeof(MusEGlobal::drumInmap));
+ memset(MusEGlobal::drumOutmap, 0, sizeof(MusEGlobal::drumOutmap));
for (int i = 0; i < DRUM_MAPSIZE; ++i) {
- drumInmap[(unsigned int)(drumMap[i].enote)] = i;
- drumOutmap[(unsigned int)(drumMap[i].anote)] = i;
+ MusEGlobal::drumInmap[(unsigned int)(MusEGlobal::drumMap[i].enote)] = i;
+ MusEGlobal::drumOutmap[(unsigned int)(MusEGlobal::drumMap[i].anote)] = i;
}
// Add all port controller events.
- //audio->msgChangeAllPortDrumCtrlEvents(true);
- song->changeAllPortDrumCtrlEvents(true);
- audio->msgIdle(false);
+ //MusEGlobal::audio->msgChangeAllPortDrumCtrlEvents(true);
+ MusEGlobal::song->changeAllPortDrumCtrlEvents(true);
+ MusEGlobal::audio->msgIdle(false);
}
//---------------------------------------------------------
@@ -328,7 +331,7 @@ void writeDrumMap(int level, Xml& xml, bool external)
{
xml.tag(level++, "drummap");
for (int i = 0; i < DRUM_MAPSIZE; ++i) {
- DrumMap* dm = &drumMap[i];
+ DrumMap* dm = &MusEGlobal::drumMap[i];
const DrumMap* idm = &idrumMap[i];
if (external) {
@@ -433,7 +436,7 @@ static void readDrummapEntry(Xml& xml, DrumMap* dm)
case Xml::Attribut:
if (tag == "idx") {
int idx = xml.s2().toInt() & 0x7f;
- dm = &drumMap[idx];
+ dm = &MusEGlobal::drumMap[idx];
}
break;
@@ -454,18 +457,18 @@ static void readDrummapEntry(Xml& xml, DrumMap* dm)
void readDrumMap(Xml& xml, bool external)
{
- audio->msgIdle(true);
+ MusEGlobal::audio->msgIdle(true);
// Delete all port controller events.
- //audio->msgChangeAllPortDrumCtrlEvents(false);
- song->changeAllPortDrumCtrlEvents(false);
+ //MusEGlobal::audio->msgChangeAllPortDrumCtrlEvents(false);
+ MusEGlobal::song->changeAllPortDrumCtrlEvents(false);
if (external) {
for (int i = 0; i < DRUM_MAPSIZE; ++i)
- drumMap[i] = blankdm;
+ MusEGlobal::drumMap[i] = blankdm;
}
else {
for (int i = 0; i < DRUM_MAPSIZE; ++i)
- drumMap[i] = idrumMap[i];
+ MusEGlobal::drumMap[i] = idrumMap[i];
}
int i = 0;
for (;;) {
@@ -474,16 +477,16 @@ void readDrumMap(Xml& xml, bool external)
switch (token) {
case Xml::Error:
case Xml::End:
- audio->msgIdle(false);
+ MusEGlobal::audio->msgIdle(false);
return;
case Xml::TagStart:
if (tag == "entry") {
if(i >= DRUM_MAPSIZE)
{
- audio->msgIdle(false);
+ MusEGlobal::audio->msgIdle(false);
return;
}
- readDrummapEntry(xml, external ? &drumMap[i] : 0);
+ readDrummapEntry(xml, external ? &MusEGlobal::drumMap[i] : 0);
++i;
}
else if (tag == "comment")
@@ -495,17 +498,17 @@ void readDrumMap(Xml& xml, bool external)
break;
case Xml::TagEnd:
if (tag == "drummap") {
- memset(drumInmap, 0, sizeof(drumInmap));
- memset(drumOutmap, 0, sizeof(drumOutmap));
+ memset(MusEGlobal::drumInmap, 0, sizeof(MusEGlobal::drumInmap));
+ memset(MusEGlobal::drumOutmap, 0, sizeof(MusEGlobal::drumOutmap));
for (int i = 0; i < DRUM_MAPSIZE; ++i) {
- drumInmap[(unsigned int)(drumMap[i].enote)] = i;
- drumOutmap[(unsigned int)(drumMap[i].anote)] = i;
+ MusEGlobal::drumInmap[(unsigned int)(MusEGlobal::drumMap[i].enote)] = i;
+ MusEGlobal::drumOutmap[(unsigned int)(MusEGlobal::drumMap[i].anote)] = i;
}
// Add all port controller events.
- //audio->msgChangeAllPortDrumCtrlEvents(true);
- song->changeAllPortDrumCtrlEvents(true);
+ //MusEGlobal::audio->msgChangeAllPortDrumCtrlEvents(true);
+ MusEGlobal::song->changeAllPortDrumCtrlEvents(true);
- audio->msgIdle(false);
+ MusEGlobal::audio->msgIdle(false);
return;
}
default:
@@ -513,8 +516,9 @@ void readDrumMap(Xml& xml, bool external)
}
}
// Add all port controller events.
- //audio->msgChangeAllPortDrumCtrlEvents(true);
- song->changeAllPortDrumCtrlEvents(true);
- audio->msgIdle(false);
+ //MusEGlobal::audio->msgChangeAllPortDrumCtrlEvents(true);
+ MusEGlobal::song->changeAllPortDrumCtrlEvents(true);
+ MusEGlobal::audio->msgIdle(false);
}
+} // namespace MusECore