public KamaAcquisitionFile(string filename, AcquisitionInterface acquisitionInterface, ILogger logger, int eitDefaultChunkSize = 24000, int ecgDefaultChunkSize = 10) { FileName = filename; Logger = logger; EITDefaultChunkSize = eitDefaultChunkSize; ECGDefaultChunkSize = ecgDefaultChunkSize; RecordNumber = 1; H5E.set_auto(H5E.DEFAULT, null, IntPtr.Zero); fileId = Hdf5.CreateFile(filename); groupRoot = fileId; groupEIT = Hdf5.CreateOrOpenGroup(groupRoot, "eit"); ProcedureInformation = new ProcedureInformation(fileId, groupRoot, logger) { ProcedureDirectory = Path.GetDirectoryName(filename), StartDateTime = DateTime.Now, EndDateTime = DateTime.Now }; SystemInformation = new SystemInformation(fileId, groupRoot, logger); SystemInformation.SystemType = acquisitionInterface.ToString(); // InjectionGroup = new InjectionGroup(fileId, groupRoot); CalibrationGroup = new CalibrationGroup(fileId, groupRoot, logger); SystemEvents = new SystemEventGroup(fileId, groupRoot, logger); RPosition = new RPositionGroup(fileId, groupRoot, logger); Tags = new TagsGroup(fileId, groupRoot, logger); UserEventsGroup = new UserEventsGroup(fileId, groupRoot, logger); }
static void Main(string[] args) { CalibrationGroup calibrationGroup1 = new CalibrationGroup(); calibrationGroup1.groupTitle = "group1"; calibrationGroup1.itemTitle = "myItemTitle1"; calibrationGroup1.itemTotal = "myItemTotal1"; calibrationGroup1.itemBase = "myItemBase1"; CalibrationGroup calibrationGroup2 = new CalibrationGroup(); calibrationGroup2.groupTitle = "group2"; calibrationGroup2.itemTitle = "myItemTitle2"; calibrationGroup2.itemTotal = "myItemTotal2"; calibrationGroup2.itemBase = "myItemBase2"; CalibrationGroup calibrationGroup3 = new CalibrationGroup(); calibrationGroup3.groupTitle = "group3"; calibrationGroup3.itemTitle = "myItemTitle3"; calibrationGroup3.itemTotal = "myItemTotal3"; calibrationGroup3.itemBase = "myItemBase3"; Console.WriteLine(calibrationGroup1.groupTitle); Console.WriteLine(calibrationGroup1.itemBase); Console.WriteLine(calibrationGroup2.groupTitle); Console.WriteLine(calibrationGroup2.itemBase); Console.WriteLine(calibrationGroup3.groupTitle); Console.WriteLine(calibrationGroup3.itemBase); }
private async Task CloseHandles() { ProcedureInformation.FlushDataAndCloseObject(); SystemInformation.FlushDataAndCloseObject(); CalibrationGroup.FlushDataAndCloseObject(); //wait for writing all data before resetting if (EIT != null) { await EIT.WaitForDataWritten(); EIT.Dispose(); } if (ECG != null) { await ECG.WaitForDataWritten(); ECG.Dispose(); } if (SystemEvents != null) { await SystemEvents.WaitForDataWritten(); SystemEvents.Dispose(); } if (RPosition != null) { await RPosition.WaitForDataWritten(); RPosition.Dispose(); } if (Tags != null) { await Tags.WaitForDataWritten(); Tags.Dispose(); } if (UserEventsGroup != null) { await UserEventsGroup.WaitForDataWritten(); UserEventsGroup.Dispose(); } await Task.CompletedTask; }
public void AddCalibrationsData(CalibrationsSystemInformation calibrationsSystemInformation) { CalibrationGroup.AddCalibrationsData(calibrationsSystemInformation); CalibrationGroup.FlushDataAndCloseObject(); }