/// <summary>Initializes a new instance of the <see cref="T:System.Object" /> class.</summary>
 /// <param name="queue"></param>
 /// <param name="workers"></param>
 /// <param name="targetCnt"></param>
 public PulseByPulseChecker(BlockingCollection <SampleRecord> queue, IEnumerable <PulseChecker> workers,
                            int?targetCnt)
 {
     _consumer = new ParallelConsumerV2 <SampleRecord, PulseChecker, CheckResult>(
         queue, workers, ProcessFunc, ResultHandleFunc, 2000, targetCnt);
     TargetAmountReached += OnTargetAmountReached;
 }
Exemple #2
0
 /// <summary>
 ///     Create a Consumer.
 /// </summary>
 /// <param name="blockingQueue">The queue which containing elements to be consumed</param>
 /// <param name="workers">A collection of workers consuming the products in parallel.</param>
 /// <param name="targetCnt"></param>
 public DataSerializer([NotNull] BlockingCollection <SampleRecord> blockingQueue,
                       [NotNull] IEnumerable <SpecialSampleWriter> workers, int?targetCnt)
 {
     _consumer = new ParallelConsumerV2 <SampleRecord, SpecialSampleWriter, TrueResult>(blockingQueue, workers,
                                                                                        ConsumeElement,
                                                                                        result => { }, 2000, targetCnt);
 }
Exemple #3
0
 /// <summary>Initializes a new instance of the <see cref="T:System.Object" /> class.</summary>
 /// <param name="queue"></param>
 /// <param name="workers"></param>
 /// <param name="adapter"></param>
 /// <param name="writer"></param>
 /// <param name="targetCnt"></param>
 public ParralelSpectroscopyVisualizerV2(BlockingCollection <SampleRecord> queue,
                                         IEnumerable <IAccumulator> workers, SpectrumDisplayAdapter adapter,
                                         [CanBeNull] IWriterV2 <TracedSpectrum> writer, int waitEmptyProducerMsTimeOut,
                                         int?targetCnt, bool saveSpec, bool saveAcc)
 {
     _saveSpec = saveSpec;
     _saveAcc  = saveAcc;
     _consumer = new ParallelConsumerV2 <SampleRecord, IAccumulator, TaggedProcessResult>(
         queue, workers, ProcessElement, HandleResultSync, waitEmptyProducerMsTimeOut, targetCnt);
     Adapter              = adapter;
     Writer               = writer;
     TargetAmountReached += OnTargetAmountReached;
 }