protected override IPatternSource GetScanPattern() { // switch over to the scan pattern scanPatternBuilder = new CommonRamanPatternBuilder(); // this is a bit of a hack. I think that the time ordering code in the pattern builder // should be improved. scanPatternBuilder.EnforceTimeOrdering = false; scanPatternBuilder.Clear(); scanPatternBuilder.ShotSequence( (int)settings["padStart"], (int)settings["sequenceLength"], (int)settings["padShots"], (int)settings["flashlampPulseInterval"], (int)settings["valvePulseLength"], (int)settings["valveToQ"], (int)settings["flashToQ"], GateStartTimePGUnits, (int)settings["rf1CentreTime"], (int)settings["rf1Length"], (int)settings["fmCentreTime"], (int)settings["fmLength"], (int)settings["piFlipTime"] ); scanPatternBuilder.BuildPattern(((int)settings["padShots"] + 1) * (int)settings["sequenceLength"] * (int)settings["flashlampPulseInterval"]); return scanPatternBuilder; }
protected override void DoAcquisitionStarting() { scanPatternBuilder = new CommonRamanPatternBuilder(); }