/// <summary>
        /// 初始化
        /// </summary>
        public override void Init()
        {
            this.BufferedStream = BuildBufferedStream();
            this.BufferedStream.MaterialBuffersFullOrEnd += OnMaterialBuffersFullOrEnd;
            this.BufferedStream.MaterialCheck            += CheckMaterial;
            this.BufferedStream.AfterMaterialCheckPassed += OnAfterMaterialCheckPassed;

            log.Info(BufferedStream.Name + " 起始处理编号: " + BufferedStream.StartIndex + ", 最大处理数量: " + BufferedStream.EnumCount);
        }
 /// <summary>
 /// 释放资源
 /// </summary>
 public virtual void Dispose()
 {
     if (TableTextManager != null)
     {
         TableTextManager.Dispose();
     }
     if (BufferedStream != null)
     {
         BufferedStream.Dispose(); BufferedStream = null;
     }
 }
Пример #3
0
        /// <summary>
        /// 小观测段数据移除器
        /// </summary>
        /// <param name="BufferedStream"></param>
        /// <param name="MinEpochCount"></param>
        /// <param name="MaxBreakCount"></param>
        /// <param name="LastEpoch">如果不正确提供,请设置为最大</param>
        public SmallObsPeriodRemover(BufferedStreamService <T> BufferedStream, int MinEpochCount, int MaxBreakCount, Time LastEpoch, double interval = 0)
        {
            this.BufferedStream = BufferedStream;
            this.BufferedStream.MaterialEnded += BufferedStream_MaterialEnded;
            this.Buffers = this.BufferedStream.MaterialBuffers;

            this.MinEpochCount = MinEpochCount;
            this.MaxBreakCount = MaxBreakCount;
            this.LastEpoch     = LastEpoch;
            this.Inverval      = interval;

            this.WindowDataManager = new WindowDataManager <SatelliteNumber, Time>(this.MinEpochCount + this.MaxBreakCount + 2);
        }