public void reload(Spectrometer spec) { this.spec = spec; if (spec.lastSpectrum is null) { // for testing, default measurements with a sine-wave raw = new double[spec.pixels]; double halfMax = 50000.0 / 2.0; for (int x = 0; x < raw.Length; x++) { raw[x] = halfMax + halfMax * Math.Sin(x * Math.PI * 2 / raw.Length); } } else { raw = spec.lastSpectrum; } processed = (double[])raw.Clone(); // MZ: needed? dark = spec.dark; applyDark(); var serialNumber = spec is null ? "sim" : spec.eeprom.serialNumber; measurementID = string.Format("enlighten-{0}-{1}", timestamp.ToString("yyyyMMdd-HHmmss-ffffff"), serialNumber); filename = measurementID + ".csv"; location = WhereAmI.getInstance().location; }
static public WhereAmI getInstance() { lock (mut) { if (instance is null) { instance = new WhereAmI(); } } return(instance); }