/// <summary> /// Creates a default instance and reuses that for all threads. /// </summary> /// <param name="instance">A reference to the default instance or null.</param> /// <returns>Returns the default instance.</returns> protected override IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { if (instance == null) { return(new PluginPersistence(this)); } return(instance); }
/// <summary> /// Permet de créer une instance par défaut du Plugin Persistence ou d'utiliser l'existante /// </summary> protected override IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { // Si l'instance par défaut est nulle on la créé if (instance == null) { return(new PluginPersistence(_plugin)); } // Sinon on utilise l'instance par défaut déjà existante return(instance); }
/// <summary> /// Creates a default instance and reuses that for all threads. /// </summary> /// <param name="instance">A reference to the default instance or null.</param> /// <returns>Returns the default instance.</returns> protected override IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { if (instance == null) { var pluginPersistence = new VstPluginPersistence <MssComponentHub>(); pluginPersistence.Init(() => this.MssHub, this.PluginPrograms, () => this.MssHub.MssProgramMgr, () => this.MssHub.PluginEditorView); pluginPersistence.PluginDeserialized += new VstPluginPersistence <MssComponentHub> .PluginDeserializedEventHandler( VstPluginPersistence_PluginDeserialized); pluginPersistence.BeforePluginDeserialized += new VstPluginPersistence <MssComponentHub> .BeforePluginDeserializedEventHandler( VstPluginPersistence_BeforePluginDeserialized); return(pluginPersistence); } else { return(instance); } }
/// <summary> /// Creates a default instance and reuses that for all threads. /// </summary> /// <param name="instance">A reference to the default instance or null.</param> /// <returns>Returns the default instance.</returns> protected override IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { if (instance == null) return new PluginPersistence(this); return instance; }
/// <summary> /// Called when an instance of the <see cref="IVstPluginPersistence"/> interface is requested. /// </summary> /// <param name="instance">The default instance or null.</param> /// <returns>Returns <paramref name="instance"/>.</returns> /// <remarks>Override to create an instance of the <see cref="IVstPluginPersistence"/> interface. /// When <paramref name="instance"/> is null, create the default instance. When the <paramref name="instance"/> /// is not null, create a Thread Safe instance, possibly wrapping the default <paramref name="instance"/>.</remarks> protected virtual IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { return(instance); }
/// <summary> /// Creates a default instance and reuses that for all threads. /// </summary> /// <param name="instance">A reference to the default instance or null.</param> /// <returns>Returns the default instance.</returns> protected override IVstPluginPersistence CreatePersistence(IVstPluginPersistence instance) { if (instance == null) { var pluginPersistence = new VstPluginPersistence<MssComponentHub>(); pluginPersistence.Init(() => this.MssHub, this.PluginPrograms, () => this.MssHub.MssProgramMgr, () => this.MssHub.PluginEditorView); pluginPersistence.PluginDeserialized += new VstPluginPersistence<MssComponentHub>.PluginDeserializedEventHandler( VstPluginPersistence_PluginDeserialized); pluginPersistence.BeforePluginDeserialized += new VstPluginPersistence<MssComponentHub>.BeforePluginDeserializedEventHandler( VstPluginPersistence_BeforePluginDeserialized); return pluginPersistence; } else { return instance; } }