public AThread(ABaseblock _device, int _experimentGroup, ADatabase _db, int _powerDelay, int _commDelay, bool isStartWithInitialize = false) { try { // TODO: Complete member initialization device = _device; powerDelay = _powerDelay; commDelay = _commDelay; experimentGroup = _experimentGroup; db = _db; bw.DoWork += bw_DoWork; bw.ProgressChanged += bw_ProgressChanged; bw.RunWorkerCompleted += bw_RunWorkerCompleted; bw.WorkerReportsProgress = true; bw.WorkerSupportsCancellation = true; foreach (byte channel in device.channelsWithSensors) { sensorsData.Add(new Sensor()); driver = new ADriver(device.comport, powerDelay); } if (isStartWithInitialize) { Start(); } } catch (Exception ex) { FileWorker.WriteEventFile(DateTime.Now, "AThread", "AThread", ex.Message); } }
internal static void WriteSensorStatistic(ADatabase db, DateTime dt, Sensor sensor, ABaseblock device, int experimentGroup, int count) { try { int expID = GetExperimentsID(db, experimentGroup, device.sysChannelsIDs[count]); WriteParameter(db, dt, expID, sensor.SensorCalcLevel, ParametersID.LevelSensor); WriteParameter(db, dt, expID, sensor.SensorTemperature, ParametersID.PlateTemperature); if (sensor.SensorDelays != null) { WriteParameter(db, dt, expID, sensor.SensorDelays[0], ParametersID.ZondPositionSensor); WriteParameter(db, dt, expID, sensor.SensorDelays[1], ParametersID.OtrPositionSensor); WriteParameter(db, dt, expID, sensor.SensorDelays[2], ParametersID.SecondZondPositionSensor); } WriteParameter(db, dt, expID, sensor.ComputerCalcLevel, ParametersID.LevelComputer); if (sensor.ComputerDelays != null) { WriteParameter(db, dt, expID, sensor.ComputerDelays[0], ParametersID.ZondPositionComputer); WriteParameter(db, dt, expID, sensor.ComputerDelays[1], ParametersID.OtrPositionComputer); WriteParameter(db, dt, expID, sensor.ComputerDelays[2], ParametersID.SecondZondPositionComputer); } if (sensor.ComputerAmplitudes != null) { WriteParameter(db, dt, expID, sensor.ComputerAmplitudes[0], ParametersID.FirstZondAmplitude); WriteParameter(db, dt, expID, sensor.ComputerAmplitudes[1], ParametersID.OtrAmplitude); WriteParameter(db, dt, expID, sensor.ComputerAmplitudes[2], ParametersID.SecondZondAmplitude); } if (sensor.TemperatureArray != null) WriteTemperatureHanger(db, dt, expID, sensor.TemperatureArray); } catch (Exception ex) { FileWorker.WriteEventFile(DateTime.Now, "DatabaseWorker", "WriteSensorStatistic", ex.Message); } }
internal static void WriteSensorReflectogram(ADatabase db, DateTime dt, Sensor sensor, ABaseblock device, int experimentGroup, int count) { try { int expID = GetExperimentsID(db, experimentGroup, device.sysChannelsIDs[count]); WriteReflectogram(db, dt, sensor.Reflectogram, expID); } catch (Exception ex) { FileWorker.WriteEventFile(DateTime.Now, "DatabaseWorker", "WriteSensorReflectogram", ex.Message); } }