subtitleMemorize.InfoProgress.AddSection C# (CSharp) Method

AddSection() public method

public AddSection ( String name, int numberOfSteps ) : void
name String
numberOfSteps int
return void
		public void AddSection(String name, int numberOfSteps) {
			m_progressSections.Add (new ProgressSection (name, numberOfSteps));
		}

Usage Example

        public void ExportData(Settings settings, InfoProgress progressInfo)
        {
          var activeCardList = GetActiveCards();

          progressInfo.AddSection("Exporting text file", 1);
          progressInfo.AddSection("Exporting snapshots", activeCardList.Count);
          progressInfo.AddSection("Exporting audio files", activeCardList.Count);
          if(settings.NormalizeAudio) progressInfo.AddSection("Normalize audio files", activeCardList.Count);
          progressInfo.Update();

          ExportTextFile(activeCardList, settings, progressInfo);

          progressInfo.ProcessedSteps(1);

          var cardSnapshotNameTupleList = new List<Tuple<CardInfo, String>>(activeCardList.Count);
          var cardAudioNameTupleList = new List<Tuple<CardInfo, String>>(activeCardList.Count);
          foreach(var cardInfo in activeCardList) {
            cardSnapshotNameTupleList.Add(new Tuple<CardInfo, String>(cardInfo, GetSnapshotFileName(settings, cardInfo)));
            cardAudioNameTupleList.Add(new Tuple<CardInfo, String>(cardInfo, GetAudioFileName(settings, cardInfo)));
          }

          if(progressInfo.Cancelled) return;

          // extract images
          String snapshotsPath = settings.OutputDirectoryPath + Path.DirectorySeparatorChar + settings.DeckName + "_snapshots" + Path.DirectorySeparatorChar;
          UtilsCommon.ClearDirectory(snapshotsPath);
          WorkerSnapshot.ExtractSnaphots(settings, snapshotsPath, cardSnapshotNameTupleList, progressInfo);

          if(progressInfo.Cancelled) return;

          // extract audio
          String audioPath = settings.OutputDirectoryPath + Path.DirectorySeparatorChar + settings.DeckName + "_audio" + Path.DirectorySeparatorChar;
          UtilsCommon.ClearDirectory(audioPath);
          WorkerAudio.ExtractAudio(settings, audioPath, cardAudioNameTupleList, progressInfo);

          if(progressInfo.Cancelled) return;

          if(settings.NormalizeAudio) {
            // normalize all audio files
            foreach(var entry in cardAudioNameTupleList) {
              if(progressInfo.Cancelled) return;
              progressInfo.ProcessedSteps(1);

              var cardInfo = entry.Item1;
              if(!cardInfo.HasAudio()) continue;

              var filepath = audioPath + entry.Item2;
              var audioStreamInfos = StreamInfo.ReadAllStreams(filepath);
              audioStreamInfos.RemoveAll(streamInfo => streamInfo.StreamTypeValue != StreamInfo.StreamType.ST_AUDIO);
              if(audioStreamInfos.Count != 1) {
                Console.WriteLine("Skipped normalizing file \"{0}\" because it contains {1} audio streams", filepath, audioStreamInfos.Count);
                continue;
              }
              try {
                UtilsAudio.NormalizeAudio(filepath, audioStreamInfos[0]);
              } catch(Exception e) {
                Console.WriteLine(e.ToString());
                continue;
              }
            }
          }
        }
All Usage Examples Of subtitleMemorize.InfoProgress::AddSection