/[svn]/linuxsampler/trunk/src/drivers/midi/MidiInputDeviceFactory.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/drivers/midi/MidiInputDeviceFactory.h

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

revision 1247 by schoenebeck, Tue Jun 27 22:57:37 2006 UTC revision 1248 by persson, Fri Jun 22 10:10:06 2007 UTC
# Line 61  namespace LinuxSampler { Line 61  namespace LinuxSampler {
61                        MidiInputDeviceFactory::InnerFactories[Driver_T::Name()] = new MidiInputDeviceFactory::InnerFactoryTemplate<Driver_T>;                        MidiInputDeviceFactory::InnerFactories[Driver_T::Name()] = new MidiInputDeviceFactory::InnerFactoryTemplate<Driver_T>;
62                        MidiInputDeviceFactory::ParameterFactories[Driver_T::Name()] = new DeviceParameterFactory();                        MidiInputDeviceFactory::ParameterFactories[Driver_T::Name()] = new DeviceParameterFactory();
63                    }                    }
64                      ~InnerFactoryRegistrator() {
65                          std::map<String, InnerFactory*>::iterator iter = MidiInputDeviceFactory::InnerFactories.find(Driver_T::Name());
66                          delete iter->second;
67                          MidiInputDeviceFactory::InnerFactories.erase(iter);
68    
69                          std::map<String, DeviceParameterFactory*>::iterator iterpf = MidiInputDeviceFactory::ParameterFactories.find(Driver_T::Name());
70                          delete iterpf->second;
71                          MidiInputDeviceFactory::ParameterFactories.erase(iterpf);
72                      }
73            };            };
74    
75            template <class Driver_T, class Parameter_T>            template <class Driver_T, class Parameter_T>
76            class ParameterRegistrator {            class ParameterRegistrator {
77                public:                public:
78                    ParameterRegistrator() {                    ParameterRegistrator() {
79                            DeviceParameterFactory::Register<Parameter_T>(MidiInputDeviceFactory::ParameterFactories[Driver_T::Name()]);                        DeviceParameterFactory::Register<Parameter_T>(MidiInputDeviceFactory::ParameterFactories[Driver_T::Name()]);
80                    }                    }
81                      ~ParameterRegistrator() {
82                          DeviceParameterFactory::Unregister<Parameter_T>(MidiInputDeviceFactory::ParameterFactories[Driver_T::Name()]);
83                      }
84            };            };
85    
86    

Legend:
Removed from v.1247  
changed lines
  Added in v.1248

  ViewVC Help
Powered by ViewVC