Package gda.scan
Class TurboXasParameters
java.lang.Object
gda.scan.TurboXasParameters
Collection of parameters used to define Turbo Xas scan.
Also has methods to serialize/deserialize to/from XML. and load object from a file.
- Since:
- 13/7/2016
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCreate aTurboXasScanobject from the current set of scan parameters.booleanstatic TurboXasParametersCreate newTurboXasParametersobject deserialized from supplied XML string.doubledoubledoubledoubledoublegetGroupSpectrumIndices(int absIndex) Return group and spectrum index for given absolute spectrum index in whole collection.intdoubledoubledoubleintbooleanbooleaninthashCode()booleanbooleanbooleanstatic TurboXasParametersloadFromFile(String filePath) voidsaveToFile(String filePath) Serialize current object to xml filevoidvoidsetDetectors(String[] detectors) Set names of detectors to be used during scan - these should beBufferedDetectors.voidsetDetectors(List<String> detectors) voidsetEndEnergy(double endEnergy) voidsetEndPosition(double endPosition) voidsetEnergyCalibrationFile(String energyCalibrationFile) voidsetEnergyCalibrationMaxPosition(double energyCalibrationMaxPosition) voidsetEnergyCalibrationMinPosition(double energyCalibrationMinPosition) voidsetEnergyCalibrationPolynomial(String energyCalibrationPolynomial) voidsetEnergyCalibrationReferenceFile(String energyCalibrationReferenceFile) voidsetEnergyStep(double energyStepSize) voidsetExtraScannables(List<String> extraScannables) voidsetFastShutterName(String fastShutterName) voidsetMotorToMove(String motorToMove) Set name of motor to be moved during scan.voidsetNamesOfDatasetsToAverage(List<String> namesOfDatasetsToAverage) voidsetPositionStepSize(double positionStepSize) voidsetRunMappingScan(boolean runMappingScan) voidsetSampleName(String sampleName) voidsetScannablePositions(List<List<Double>> scannablePositions) voidsetScannablesToMonitorDuringScan(Map<String, String> scannablesToMonitorDuringScan) voidsetScannableToMove(String scannableToMove) voidsetSpectrumEvents(List<SpectrumEvent> spectrumEvents) voidsetStartEnergy(double startEnergy) voidsetStartPosition(double startPosition) voidsetTimingGroups(List<TurboSlitTimingGroup> groupList) voidsetTwoWayScan(boolean twoWayScan) voidsetUsePositionsForScan(boolean usePositionsForScan) voidsetUseTrajectoryScan(boolean useTrajectoryScan) voidsetWriteAsciiData(boolean writeAsciiData) toXML()static StringtoXML(TurboXasParameters params) Serialize suppliedTurboXasParametersobject to XML.
-
Constructor Details
-
TurboXasParameters
public TurboXasParameters() -
TurboXasParameters
-
-
Method Details
-
setDefaults
public void setDefaults() -
getSampleName
-
setSampleName
-
getStartEnergy
public double getStartEnergy() -
setStartEnergy
public void setStartEnergy(double startEnergy) -
getEndEnergy
public double getEndEnergy() -
setEndEnergy
public void setEndEnergy(double endEnergy) -
getEnergyStep
public double getEnergyStep() -
setEnergyStep
public void setEnergyStep(double energyStepSize) -
getStartPosition
public double getStartPosition() -
setStartPosition
public void setStartPosition(double startPosition) -
setEndPosition
public void setEndPosition(double endPosition) -
getEndPosition
public double getEndPosition() -
getPositionStepSize
public double getPositionStepSize() -
setPositionStepSize
public void setPositionStepSize(double positionStepSize) -
isUsePositionsForScan
public boolean isUsePositionsForScan() -
setUsePositionsForScan
public void setUsePositionsForScan(boolean usePositionsForScan) -
addTimingGroup
-
setTimingGroups
-
getTimingGroups
-
getNumTimingGroups
public int getNumTimingGroups() -
getTotalNumSpectra
public int getTotalNumSpectra() -
getGroupSpectrumIndices
Return group and spectrum index for given absolute spectrum index in whole collection. (this cycles around to first group again if specNumber > invalid input: '{@'#getTotalNumSpectra()})- Parameters:
specNumber- absolute spectrum index.- Returns:
- Group and spectrum indices.
-
getEnergyCalibrationPolynomial
-
setEnergyCalibrationPolynomial
-
getEnergyCalibrationMinPosition
public double getEnergyCalibrationMinPosition() -
setEnergyCalibrationMinPosition
public void setEnergyCalibrationMinPosition(double energyCalibrationMinPosition) -
getEnergyCalibrationMaxPosition
public double getEnergyCalibrationMaxPosition() -
setEnergyCalibrationMaxPosition
public void setEnergyCalibrationMaxPosition(double energyCalibrationMaxPosition) -
getMotorToMove
-
setMotorToMove
Set name of motor to be moved during scan. This should implement theContinuouslyScannableinterface.- Parameters:
motorToMove-
-
getDetectors
-
setDetectors
-
setDetectors
Set names of detectors to be used during scan - these should beBufferedDetectors.- Parameters:
detectors-
-
setExtraScannables
-
getExtraScannables
-
getUseTrajectoryScan
public boolean getUseTrajectoryScan() -
setUseTrajectoryScan
public void setUseTrajectoryScan(boolean useTrajectoryScan) -
isTwoWayScan
public boolean isTwoWayScan() -
setTwoWayScan
public void setTwoWayScan(boolean twoWayScan) -
getEnergyCalibrationReferenceFile
- Returns:
- Name of calibration file used as reference data during energy calibration.
-
setEnergyCalibrationReferenceFile
-
getEnergyCalibrationFile
- Returns:
- Name of scan file used during energy calibration.
-
setEnergyCalibrationFile
-
getMotorParameters
-
getScannablesToMonitorDuringScan
-
setScannablesToMonitorDuringScan
-
getWriteAsciiData
public boolean getWriteAsciiData() -
setWriteAsciiData
public void setWriteAsciiData(boolean writeAsciiData) -
getFastShutterName
-
setFastShutterName
-
isRunMappingScan
public boolean isRunMappingScan() -
setRunMappingScan
public void setRunMappingScan(boolean runMappingScan) -
getScannableToMove
-
setScannableToMove
-
getScannablePositions
-
setScannablePositions
-
toXML
Serialize suppliedTurboXasParametersobject to XML.- Parameters:
params-- Returns:
- String with XML serialized object
- Throws:
com.fasterxml.jackson.core.JsonProcessingExceptionIOException
-
toXML
- Throws:
IOException
-
fromXML
Create newTurboXasParametersobject deserialized from supplied XML string.- Parameters:
xmlString-- Returns:
- TurboXasScanParameters object
- Throws:
com.fasterxml.jackson.core.JsonProcessingExceptioncom.fasterxml.jackson.databind.JsonMappingExceptionIOException
-
loadFromFile
- Throws:
IOException
-
saveToFile
Serialize current object to xml file- Parameters:
filePath-- Throws:
IOException
-
createScan
Create aTurboXasScanobject from the current set of scan parameters. It attempts to get scannables to be used frommotorToMoveanddetectorsstrings using theFinder. It also attempts to validate the positions and speeds to be used for the scan against the motor limits, sending warnings to logpanel if necessary.- Returns:
- TurboXasScan object
- Throws:
InterruptedException- If motor to move cannot be found, or if no detectors could be found.Exception
-
getNamesOfDatasetsToAverage
-
setNamesOfDatasetsToAverage
-
getSpectrumEvents
-
setSpectrumEvents
-
getEnergyPositionCalculator
-
hashCode
public int hashCode() -
equals
-