std::auto_ptr<Preset> MilkdropPresetFactory::allocate(const std::string & url, const std::string & name, const std::string & author) { PresetOutputs *presetOutputs = _usePresetOutputs ? _presetOutputs : _presetOutputs2; _usePresetOutputs = !_usePresetOutputs; resetPresetOutputs(presetOutputs); std::string path; if (PresetFactory::protocol(url, path) == PresetFactory::IDLE_PRESET_PROTOCOL) { return IdlePresets::allocate(path, *presetOutputs); } else return std::auto_ptr<Preset>(new MilkdropPreset(url, name, *presetOutputs)); }
/* Reinitializes the engine variables to a default (conservative and sane) value */ void MilkdropPresetFactory::reset() { resetPresetOutputs(_presetOutputs); resetPresetOutputs(_presetOutputs2); }