public void RegisterAggregator(AggregatorSettings aggregatorSettings)
        {
            Aggregator aggregator = new Aggregator(aggregatorSettings);

            _aggregators.TryAdd(aggregatorSettings, aggregator);
            aggregator.AggregationComplete.Subscribe(_onAggregationCompleteAction);
            aggregator.Start();
        }
        public void UnRegisterAggregator(AggregatorSettings aggregatorSettings)
        {
            Aggregator aggregator;

            if (_aggregators.TryRemove(aggregatorSettings, out aggregator))
            {
                aggregator.Dispose();
            }
        }
 public Aggregator(AggregatorSettings aggregatorSettings)
     : this(aggregatorSettings.CounterCategoryFilter, aggregatorSettings.CounterNameFilter, aggregatorSettings.AggregationType, aggregatorSettings.AggregationParameters, aggregatorSettings.ValuesDataType)
 {
 }