/[svn]/linuxsampler/trunk/src/engines/common/InstrumentScriptVM.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/common/InstrumentScriptVM.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2644 by schoenebeck, Fri Jun 13 15:01:06 2014 UTC revision 2645 by schoenebeck, Wed Jun 18 00:14:57 2014 UTC
# Line 60  namespace LinuxSampler { Line 60  namespace LinuxSampler {
60          handlerRelease = NULL;          handlerRelease = NULL;
61          handlerController = NULL;          handlerController = NULL;
62          pEvents = NULL;          pEvents = NULL;
63            for (int i = 0; i < 128; ++i)
64                pKeyEvents[i] = NULL;
65          this->pEngineChannel = pEngineChannel;          this->pEngineChannel = pEngineChannel;
66          for (int i = 0; i < INSTR_SCRIPT_EVENT_GROUPS; ++i)          for (int i = 0; i < INSTR_SCRIPT_EVENT_GROUPS; ++i)
67              eventGroups[i].setScript(this);              eventGroups[i].setScript(this);
68      }      }
69    
70        InstrumentScript::~InstrumentScript() {
71            resetAll();
72            if (pEvents) {
73                for (int i = 0; i < 128; ++i) delete pKeyEvents[i];
74                delete pEvents;
75            }
76        }
77    
78      /** @brief Load real-time instrument script.      /** @brief Load real-time instrument script.
79       *       *
80       * Loads the real-time instrument script given by @a text on the engine       * Loads the real-time instrument script given by @a text on the engine
# Line 111  namespace LinuxSampler { Line 121  namespace LinuxSampler {
121              handlerExecCount++;              handlerExecCount++;
122    
123          // create script event pool (if it doesn't exist already)          // create script event pool (if it doesn't exist already)
124          if (!pEvents)          if (!pEvents) {
125              pEvents = new Pool<ScriptEvent>(CONFIG_MAX_EVENTS_PER_FRAGMENT);              pEvents = new Pool<ScriptEvent>(CONFIG_MAX_EVENTS_PER_FRAGMENT);
126                for (int i = 0; i < 128; ++i)
127                    pKeyEvents[i] = new RTList<ScriptEvent>(pEvents);
128            }
129    
130          // create new VM execution contexts for new script          // create new VM execution contexts for new script
131          while (!pEvents->poolIsEmpty()) {          while (!pEvents->poolIsEmpty()) {

Legend:
Removed from v.2644  
changed lines
  Added in v.2645

  ViewVC Help
Powered by ViewVC