コード例 #1
0
 public void CreatingSensorInfoTest()
 {
     var configuration = new XmlSensorConfigurationImpl();
     var listener = new SensorConfigurationListener();
     configuration.SubscribeConfigurationListener(listener);
     configuration.CreateSensorInfo(
         new SensorInfoImpl(1, "1", SensorType.PROXIMITY, SensorSide.LEFT, 0));
     var fromListener = listener.CretedSensor;
     Assert.IsNotNull(fromListener);
     Assert.AreSame(fromListener, configuration.ReadSensorInfoById(1));
     Assert.Throws<ArgumentException>(() => configuration.CreateSensorInfo(
         new SensorInfoImpl(1, "1", SensorType.PROXIMITY, SensorSide.LEFT, 0)));
 }
コード例 #2
0
        public void LoadingConfigurationTest()
        {
            var configuration = new XmlSensorConfigurationImpl("Tests/Files/SensorConfigurationTest.xml");
            configuration.Initialize();

            var sensor = configuration.ReadSensorInfoById(0);
            Assert.IsNotNull(sensor);
            Assert.AreEqual(sensor.GetName(), "Top0");
            Assert.AreEqual(sensor.GetSensorType(), SensorType.PROXIMITY);
            Assert.AreEqual(sensor.GetSensorSide(), SensorSide.TOP);
            Assert.AreEqual(sensor.GetShift(), 123.4);

            var psensor = configuration.ReadSensorInfoByName("Position");
            Assert.IsNotNull(psensor);
            Assert.AreEqual(psensor.GetName(), "Position");
            Assert.AreEqual(psensor.GetSensorType(), SensorType.POSITION);
            Assert.AreEqual(psensor.GetSensorSide(), SensorSide.TOP);
            Assert.AreEqual(psensor.GetShift(), 0);
        }
コード例 #3
0
        protected override void DoInitialize()
        {
            logger.Info("Инициализация...");

            dimentionConfiguration = new NHibernateDimentionConfigurationImpl();
            dataProviderConfiguration = new XmlDataProviderConfigurationImpl("Settings/OpcConfiguration.xml");
            sensorConfiguration = new XmlSensorConfigurationImpl("Settings/SensorConfiguration.xml");

            dataProvider = new OpcDataProviderImpl();
            calibrator = new CalibratorImpl();
            //dataProvider = new EmulatorDataProvider();
            slabBuilder = new SlabBuilderImpl();
            dimentionCalculator = new DimentionCalculatorImpl();
            sensorValueContainer = new SensorValueContainerImpl();
            dimentionValueContainer = new DimentionValueContainerImpl();
            standartSizeReaderWriter = new NHibernateStandartSizeReaderWriter();
            regulationsReaderWriter = new NHibernateRegulationReaderWriter();

            sensorValueReaderWriter = new NHibernateSensorValueWriter();
            dimentionValueWriter = new NHibernateDimentionValueWriter();
            slabWriter = new NHibernateSlabInfoWriter();
            slabReader = slabWriter as ISlabInfoReader;

            sensorValueContainer.SunbscribeContainerListener(this);

            dataProvider.SetSensorConfiguration(sensorConfiguration);
            dataProvider.SetSensorValueContainer(sensorValueContainer);
            dataProvider.SetDataProviderConfiguration(dataProviderConfiguration);
            dataProvider.SubscribeDataProviderListener(this);

            slabBuilder.SetCalibrator(calibrator);
            slabBuilder.SetSensorConfiguration(sensorConfiguration);
            slabBuilder.SetSensorValueContainer(sensorValueContainer);

            dimentionCalculator.SetDimentionConfiguration(dimentionConfiguration);
            dimentionCalculator.SetDimentionValueContainer(dimentionValueContainer);

            // Для построения точек при запросе пользователя.
            userSensorValueContainer = new SensorValueContainerImpl();
            userSlabBuilder = new SlabBuilderImpl();
            userSlabBuilder.SetSensorValueContainer(userSensorValueContainer);
            userSlabBuilder.SetSensorConfiguration(sensorConfiguration);
            userSlabBuilder.SetCalibrator(calibrator);

            dimentionConfiguration.Initialize();
            standartSizeReaderWriter.Initialize();
            regulationsReaderWriter.Initialize();
            dataProviderConfiguration.Initialize();
            sensorConfiguration.Initialize();
            sensorValueReaderWriter.Initialize();
            slabWriter.Initialize();
            dimentionValueWriter.Initialize();
            dimentionCalculator.Initialize();
            calibrator.Initialize();
            slabBuilder.Initialize();
            userSlabBuilder.Initialize();
            dataProvider.Initialize();

            logger.Info("Инициализация завершена.");
        }