/[svn]/linuxsampler/trunk/src/plugins/InstrumentEditor.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/plugins/InstrumentEditor.cpp

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

revision 1425 by schoenebeck, Sun Oct 14 22:01:28 2007 UTC revision 2837 by persson, Sun Aug 23 06:14:00 2015 UTC
# Line 1  Line 1 
1  /***************************************************************************  /***************************************************************************
2   *                                                                         *   *                                                                         *
3   *   Copyright (C) 2007 Christian Schoenebeck                              *   *   Copyright (C) 2007 - 2015 Christian Schoenebeck                       *
4   *                                                                         *   *                                                                         *
5   *   This program is free software; you can redistribute it and/or modify  *   *   This program is free software; you can redistribute it and/or modify  *
6   *   it under the terms of the GNU General Public License as published by  *   *   it under the terms of the GNU General Public License as published by  *
# Line 29  namespace LinuxSampler { Line 29  namespace LinuxSampler {
29    
30      InstrumentEditor::InstrumentEditor() : Thread(false, false, -1, 0) {      InstrumentEditor::InstrumentEditor() : Thread(false, false, -1, 0) {
31          pInstrument = NULL;          pInstrument = NULL;
32            pUserData   = NULL;
33            pEngineChannel = NULL;
34      }      }
35    
36      void InstrumentEditor::Launch(void* pInstrument, String sTypeName, String sTypeVersion) {      InstrumentEditor::~InstrumentEditor() {
37          dmsg(1,("InstrumentEditor::Launch(instr=%x,type=%s,version=%s)\n", pInstrument, sTypeName.c_str(), sTypeVersion.c_str()));      }
38    
39        void InstrumentEditor::Launch(EngineChannel* pEngineChannel, void* pInstrument, String sTypeName, String sTypeVersion, void* pUserData) {
40            dmsg(1,("InstrumentEditor::Launch(instr=%p,type=%s,version=%s)\n", pInstrument, sTypeName.c_str(), sTypeVersion.c_str()));
41          // prepare the editor's mandatory parameters          // prepare the editor's mandatory parameters
42          this->pInstrument  = pInstrument;          this->pInstrument  = pInstrument;
43          this->sTypeName    = sTypeName;          this->sTypeName    = sTypeName;
44          this->sTypeVersion = sTypeVersion;          this->sTypeVersion = sTypeVersion;
45            this->pUserData    = pUserData;
46            this->pEngineChannel = pEngineChannel;
47          // start the editor in its own thread          // start the editor in its own thread
48          StartThread();          StartThread();
49      }      }
# Line 44  namespace LinuxSampler { Line 51  namespace LinuxSampler {
51      int InstrumentEditor::Main() {      int InstrumentEditor::Main() {
52          dmsg(1,("InstrumentEditor::Main()\n"));          dmsg(1,("InstrumentEditor::Main()\n"));
53          // run the editor's main loop          // run the editor's main loop
54          int iResult = Main(pInstrument, sTypeName, sTypeVersion);          int iResult = Main(pInstrument, sTypeName, sTypeVersion, pUserData);
55          // reset editor parameters          // reset editor parameters
56          this->pInstrument  = NULL;          this->pInstrument  = NULL;
57          this->sTypeName    = "";          this->sTypeName    = "";
58          this->sTypeVersion = "";          this->sTypeVersion = "";
59            this->pUserData    = NULL;
60          dmsg(1,("Instrument editor '%s' returned with exit status %d\n", Name().c_str(), iResult));          dmsg(1,("Instrument editor '%s' returned with exit status %d\n", Name().c_str(), iResult));
61          // notify all registered listeners          // notify all registered listeners
62          std::for_each(          std::for_each(
# Line 59  namespace LinuxSampler { Line 67  namespace LinuxSampler {
67          return iResult;          return iResult;
68      }      }
69    
70        EngineChannel* InstrumentEditor::GetEngineChannel() {
71            return pEngineChannel;
72        }
73    
74      void InstrumentEditor::AddListener(InstrumentEditorListener* pListener) {      void InstrumentEditor::AddListener(InstrumentEditorListener* pListener) {
75          listeners.insert(pListener);          listeners.insert(pListener);
76      }      }

Legend:
Removed from v.1425  
changed lines
  Added in v.2837

  ViewVC Help
Powered by ViewVC