public Demo(IDriverEx driver, IDDK ddk, Config.Demo config, string id, InstrumentDataList instrumentDataList, string driverFolder) : base(driver, ddk, config, typeof(Demo).Name, id) { Log.TaskBegin(Id); try { if (string.IsNullOrEmpty(driverFolder)) { throw new ArgumentNullException("driverFolder"); } if (instrumentDataList == null) { throw new ArgumentNullException("instrumentDataList"); } m_Properties = new DemoProperties(driver, m_DDK, config, m_Device); //------------------------------------------------------------------------------------------------------------------- if (m_DDK.InstrumentMap == null) { throw new InvalidOperationException("DDK.InstrumentMap is Null"); } long instrumentsMap = m_DDK.InstrumentMap.Value; if (instrumentsMap == (long)InstrumentID.None) { throw new InvalidOperationException("DDK.InstrumentMap = " + instrumentsMap.ToString() + " must be != " + ((long)InstrumentID.None).ToString()); } string instrumentsMapBinary = InstrumentData.GetBitMapBinary(instrumentsMap); string instrumentsNames = instrumentDataList.GetNames(); bool logInFile = LogInFile; string fileNamePrefix = instrumentDataList[0].Name; Log.Init(Id, logInFile, fileNamePrefix); // Logging in a file starts here, if logInFile is True const string indent = "\t"; string text = Environment.NewLine + Environment.NewLine + indent + "Driver Folder \"" + driverFolder + "\"" + Environment.NewLine + indent + "Name \"" + Name + "\", IsSimulated = " + IsSimulated.ToString() + Environment.NewLine + indent + "USB Address \"" + UsbAddress + "\"" + Environment.NewLine + indent + "DDK.InstrumentMap = " + instrumentsMap.ToString() + " = " + instrumentsMapBinary + " = " + instrumentsNames + Environment.NewLine; Log.WriteLine(Id, text); //------------------------------------------------------------------------------------------------------------------- m_Properties.LogInFile.OnSetProperty += OnPropertyLogInFileSet; //------------------------------------------------------------------------------------------------------------------- CommandTestInit(); CommandStartStopInit(); Log.TaskEnd(Id); } catch (Exception ex) { Log.TaskEnd(Id, ex); throw; } }
public string GetReportText(IInstrumentInfo instrumentInfo, long instrumentsMap) { if (instrumentInfo == null) { throw new ArgumentNullException("instrumentInfo"); } const string sprt = "\t"; StringBuilder sb = new StringBuilder(); sb.AppendLine("Driver " + sprt + Id); sb.AppendLine("Description" + sprt + Description); sb.AppendLine("IsSimulated" + sprt + Demo.IsSimulated.ToString()); sb.AppendLine("Firmware Version" + sprt + Demo.FirmwareVersion); sb.AppendLine("Serial Number" + sprt + Demo.SerialNo); sb.AppendLine("USB Address" + sprt + Demo.FirmwareUsbAddress); sb.AppendLine(); AddReportDevice(sb, sprt, Demo); sb.AppendLine("Name" + sprt + Demo.Name); sb.AppendLine(); AddReportDevice(sb, sprt, Heater); sb.AppendLine("Product Description" + sprt + Heater.ProductDescription); sb.AppendLine(); AddReportDevice(sb, sprt, Detector); sb.AppendLine("Property B" + sprt + Detector.ChannelsNumber.ToString(CultureInfo.InvariantCulture)); InstrumentDataList instruments = new InstrumentDataList(instrumentInfo, instrumentsMap); if (instruments.Count > 1) { string instrumentsText = instruments.GetNames(); AddReportParam(sb, sprt, "Shared in instruments", instrumentsText); } sb.AppendLine(); string result = sb.ToString(); return(result); }