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

Diff of /linuxsampler/trunk/src/engines/EngineFactory.cpp

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

revision 411 by schoenebeck, Sat Feb 26 02:01:14 2005 UTC revision 420 by schoenebeck, Thu Mar 3 03:25:17 2005 UTC
# Line 24  Line 24 
24    
25  #include "gig/Engine.h"  #include "gig/Engine.h"
26    
27    #include "../common/global.h"
28    
29  namespace LinuxSampler {  namespace LinuxSampler {
30    
31        // all currently existing engine instances
32        static std::set<LinuxSampler::Engine*> engines;
33    
34      LinuxSampler::Engine* EngineFactory::Create(String EngineType) throw (LinuxSamplerException) {      LinuxSampler::Engine* EngineFactory::Create(String EngineType) throw (LinuxSamplerException) {
35          if (!strcasecmp(EngineType.c_str(),"GigEngine") || !strcasecmp(EngineType.c_str(),"gig")) {          if (!strcasecmp(EngineType.c_str(),"GigEngine") || !strcasecmp(EngineType.c_str(),"gig")) {
36              return new gig::Engine;              Engine* pEngine = new gig::Engine;
37                engines.insert(pEngine);
38                return pEngine;
39          }          }
40          throw LinuxSamplerException("Unknown engine type");          throw LinuxSamplerException("Unknown engine type");        
41        }
42    
43        void EngineFactory::Destroy(LinuxSampler::Engine* pEngine) {
44            engines.erase(pEngine);
45        }
46    
47        std::set<LinuxSampler::Engine*> EngineFactory::EngineInstances() {
48            return engines;
49      }      }
50    
51  } // namepsace LinuxSampler  } // namepsace LinuxSampler

Legend:
Removed from v.411  
changed lines
  Added in v.420

  ViewVC Help
Powered by ViewVC