Пример #1
0
        public MeasurementManager(IDataSource <GaugePositionDTO> measurementDataSource)
        {
            // Compensating and mapping
            var compensatedPositions = measurementDataSource.DataStream
                                       .Select(RawPositionModification)
                                       .Select(CompensatePosition);

            compensatedPositions
            .Subscribe(pos =>
            {
                // Storing all points
                PositionBuffer.Add(pos);
                // Bubbling compensated position
                _positionSource.OnNext(pos);
            });

            // Initialize
            AvailableMeasurementMethods = Enum.GetValues(typeof(MeasurementMethodEnum)).Cast <MeasurementMethodEnum>();
        }