/// <summary> /// Entfernt das aktuelle Zugriffsmodul. /// </summary> /// <param name="startup">Für den ersten Aufruf gesetzt.</param> private void DestroyConnector(bool startup) { // Stop all if (!startup) { try { // Attach to accessor var accessor = Accessor; if (accessor != null) { // Stop sending data accessor.Stop(); // Stop graph accessor.StopGraph(); } // Restart videotext caching from scratch VideoText.Deactivate(true); } catch { // Ignore any error - maybe we are disposing the instance } } // Forget using (m_CurrentConnector) m_CurrentConnector = null; }
/// <summary> /// Startet die Wiedergabe einer Aufzeichnungsdatei. /// </summary> /// <param name="path">Voller Pfad einer VCR.NET Aufzeichnungsdatei.</param> /// <param name="name">Name der Teilaufzeichnung.</param> /// <param name="recording">Detailinformationen zur aktuellen Aufzeichnung.</param> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> private void StartReplay(string path, string name, VCRNETRestProxy.Current recording, bool startup) { // Shut down DestroyConnector(startup); // All files var files = new List <string>(); // Try to count number of files if (!string.IsNullOrEmpty(path)) { // Add self files.Add(path); // See if there are more if (recording != null) { if (recording.files != null) { if (path.ToLower().EndsWith(".ts")) { // Get prefix var prefix = path.Substring(0, path.Length - 3) + " - "; // Search all foreach (var test in recording.files) { if (test.ToLower().EndsWith(".ts")) { if (string.Compare(test, 0, prefix, 0, prefix.Length, true) == 0) { files.Add(test); } } } } } } } // Restart m_CurrentConnector = new FileConnector(this, path, name, files.ToArray()); // Done on first call if (startup) { return; } // Reset all ChannelListChanged(); // Reload all ShowMessage(RestartAudio(false), Properties.Resources.NameTitle, true); }
/// <summary> /// Verbindet sich mit der laufenden Aufzeichnung im VCR.NET Recording Service. /// </summary> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> /// <param name="startWith">Auszuwählende Aufzeichnung.</param> private void StartWatch(string startWith, bool startup) { // Shut down DestroyConnector(startup); // Restart m_CurrentConnector = new CurrentConnector(this, startWith); // Reload all if (!startup) { ChannelListChanged(); } }
/// <summary> /// Aktiviert eine Verbindung zum VCR.NET Recording Service. /// </summary> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> private void StartLIVE(bool startup) { // Shut down DestroyConnector(startup); // Restart m_CurrentConnector = new LiveConnector(this); // Reload all if (!startup) { ChannelListChanged(); } }
/// <summary> /// Verbindet sich mit der laufenden Aufzeichnung im VCR.NET Recording Service. /// </summary> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> /// <param name="startWith">Auszuwählende Aufzeichnung.</param> private void StartWatch( string startWith, bool startup ) { // Shut down DestroyConnector( startup ); // Restart m_CurrentConnector = new CurrentConnector( this, startWith ); // Reload all if (!startup) ChannelListChanged(); }
/// <summary> /// Aktiviert eine Verbindung zum VCR.NET Recording Service. /// </summary> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> private void StartLIVE( bool startup ) { // Shut down DestroyConnector( startup ); // Restart m_CurrentConnector = new LiveConnector( this ); // Reload all if (!startup) ChannelListChanged(); }
/// <summary> /// Startet die Wiedergabe einer Aufzeichnungsdatei. /// </summary> /// <param name="path">Voller Pfad einer VCR.NET Aufzeichnungsdatei.</param> /// <param name="name">Name der Teilaufzeichnung.</param> /// <param name="recording">Detailinformationen zur aktuellen Aufzeichnung.</param> /// <param name="startup">Während des Starts der Anwendung gesetzt.</param> private void StartReplay( string path, string name, VCRNETRestProxy.Current recording, bool startup ) { // Shut down DestroyConnector( startup ); // All files var files = new List<string>(); // Try to count number of files if (!string.IsNullOrEmpty( path )) { // Add self files.Add( path ); // See if there are more if (recording != null) if (recording.files != null) if (path.ToLower().EndsWith( ".ts" )) { // Get prefix var prefix = path.Substring( 0, path.Length - 3 ) + " - "; // Search all foreach (var test in recording.files) if (test.ToLower().EndsWith( ".ts" )) if (string.Compare( test, 0, prefix, 0, prefix.Length, true ) == 0) files.Add( test ); } } // Restart m_CurrentConnector = new FileConnector( this, path, name, files.ToArray() ); // Done on first call if (startup) return; // Reset all ChannelListChanged(); // Reload all ShowMessage( RestartAudio( false ), Properties.Resources.NameTitle, true ); }
/// <summary> /// Entfernt das aktuelle Zugriffsmodul. /// </summary> /// <param name="startup">Für den ersten Aufruf gesetzt.</param> private void DestroyConnector( bool startup ) { // Stop all if (!startup) try { // Attach to accessor var accessor = Accessor; if (accessor != null) { // Stop sending data accessor.Stop(); // Stop graph accessor.StopGraph(); } // Restart videotext caching from scratch VideoText.Deactivate( true ); } catch { // Ignore any error - maybe we are disposing the instance } // Forget using (m_CurrentConnector) m_CurrentConnector = null; }