summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Nusser <andre.nusser@googlemail.com>2016-01-24 00:51:28 +0100
committerAndré Nusser <andre.nusser@googlemail.com>2016-02-09 11:09:51 +0100
commitdae2f830f245e43e1ac12e7a596a1c0344368fe5 (patch)
treef96e9f044a8d8c285385fd3aaab43cd709dba3c8
parent0070316e75f149d63eb0c0b00cbd9658bd04d503 (diff)
Include the memchecker into the other DG code.
Especially, now check if a kit fits into RAM when loading it.
-rw-r--r--src/drumgizmo.cc7
-rw-r--r--src/drumgizmo.h2
2 files changed, 9 insertions, 0 deletions
diff --git a/src/drumgizmo.cc b/src/drumgizmo.cc
index f8f30b8..44cd73c 100644
--- a/src/drumgizmo.cc
+++ b/src/drumgizmo.cc
@@ -84,6 +84,13 @@ bool DrumGizmo::loadkit(std::string file)
return false;
}
+ // Check if there is enough free RAM to load the drumkit.
+ if(!memchecker.enoughFreeMemory(kit))
+ {
+ ERR(drumgizmo, "Not enough free RAM to load the drumkit.");
+ return false;
+ }
+
loader.loadKit(&kit);
#ifdef WITH_RESAMPLER
diff --git a/src/drumgizmo.h b/src/drumgizmo.h
index 2778092..3f84fdd 100644
--- a/src/drumgizmo.h
+++ b/src/drumgizmo.h
@@ -35,6 +35,7 @@
#include "events.h"
#include "audiofile.h"
#include "drumkit.h"
+#include "memchecker.h"
#include "drumkitloader.h"
#include "audiocache.h"
@@ -101,6 +102,7 @@ protected:
AudioCache audioCache;
DrumKit kit;
+ Memchecker memchecker;
size_t framesize;
bool freewheel;