diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index 740c54add..93167953c 100755 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -30,6 +30,7 @@ set( PYTHON_FILES detector_property.py detector.py eiger.py + enums.py errors.py gotthard2.py ctb.py diff --git a/python/examples/use_enum.py b/python/examples/use_enum.py new file mode 100644 index 000000000..67c55394d --- /dev/null +++ b/python/examples/use_enum.py @@ -0,0 +1,20 @@ +# Most settings are represented as enums that can be +# explicitly imported + +from slsdet import Detector, fileFormat +d = Detector() +d.fformat = fileFormat.BINARY + +# Altough not recommended for convenience all enums +# and some other things can be impored using * + +from slsdet import * +d.speed = speedLevel.FULL_SPEED + +# To list the available enums, use dir() + +import slsdet.enums +for enum in dir(slsdet.enums): + # filter out special memebers + if not enum.startswith('_'): + print(enum) diff --git a/python/slsdet/__init__.py b/python/slsdet/__init__.py index e3711564e..871b63173 100755 --- a/python/slsdet/__init__.py +++ b/python/slsdet/__init__.py @@ -12,26 +12,25 @@ from .gotthard2 import Gotthard2 import _slsdet defs = _slsdet.slsDetectorDefs -runStatus = _slsdet.slsDetectorDefs.runStatus -speedLevel = _slsdet.slsDetectorDefs.speedLevel - -detectorType = _slsdet.slsDetectorDefs.detectorType -frameDiscardPolicy = _slsdet.slsDetectorDefs.frameDiscardPolicy -fileFormat = _slsdet.slsDetectorDefs.fileFormat -dimension = _slsdet.slsDetectorDefs.dimension -externalSignalFlag = _slsdet.slsDetectorDefs.externalSignalFlag -timingMode = _slsdet.slsDetectorDefs.timingMode -dacIndex = _slsdet.slsDetectorDefs.dacIndex -detectorSettings = _slsdet.slsDetectorDefs.detectorSettings -clockIndex = _slsdet.slsDetectorDefs.clockIndex -readoutMode = _slsdet.slsDetectorDefs.readoutMode -masterFlags = _slsdet.slsDetectorDefs.masterFlags - -frameModeType = _slsdet.slsDetectorDefs.frameModeType -detectorModeType = _slsdet.slsDetectorDefs.detectorModeType -burstMode = _slsdet.slsDetectorDefs.burstMode -timingSourceType = _slsdet.slsDetectorDefs.timingSourceType +from .enums import * +# runStatus = _slsdet.slsDetectorDefs.runStatus +# speedLevel = _slsdet.slsDetectorDefs.speedLevel +# detectorType = _slsdet.slsDetectorDefs.detectorType +# frameDiscardPolicy = _slsdet.slsDetectorDefs.frameDiscardPolicy +# fileFormat = _slsdet.slsDetectorDefs.fileFormat +# dimension = _slsdet.slsDetectorDefs.dimension +# externalSignalFlag = _slsdet.slsDetectorDefs.externalSignalFlag +# timingMode = _slsdet.slsDetectorDefs.timingMode +# dacIndex = _slsdet.slsDetectorDefs.dacIndex +# detectorSettings = _slsdet.slsDetectorDefs.detectorSettings +# clockIndex = _slsdet.slsDetectorDefs.clockIndex +# readoutMode = _slsdet.slsDetectorDefs.readoutMode +# masterFlags = _slsdet.slsDetectorDefs.masterFlags +# frameModeType = _slsdet.slsDetectorDefs.frameModeType +# detectorModeType = _slsdet.slsDetectorDefs.detectorModeType +# burstMode = _slsdet.slsDetectorDefs.burstMode +# timingSourceType = _slsdet.slsDetectorDefs.timingSourceType IpAddr = _slsdet.IpAddr diff --git a/python/slsdet/enums.py b/python/slsdet/enums.py new file mode 100644 index 000000000..8fd05812b --- /dev/null +++ b/python/slsdet/enums.py @@ -0,0 +1,19 @@ + +import _slsdet +runStatus = _slsdet.slsDetectorDefs.runStatus +speedLevel = _slsdet.slsDetectorDefs.speedLevel +detectorType = _slsdet.slsDetectorDefs.detectorType +frameDiscardPolicy = _slsdet.slsDetectorDefs.frameDiscardPolicy +fileFormat = _slsdet.slsDetectorDefs.fileFormat +dimension = _slsdet.slsDetectorDefs.dimension +externalSignalFlag = _slsdet.slsDetectorDefs.externalSignalFlag +timingMode = _slsdet.slsDetectorDefs.timingMode +dacIndex = _slsdet.slsDetectorDefs.dacIndex +detectorSettings = _slsdet.slsDetectorDefs.detectorSettings +clockIndex = _slsdet.slsDetectorDefs.clockIndex +readoutMode = _slsdet.slsDetectorDefs.readoutMode +masterFlags = _slsdet.slsDetectorDefs.masterFlags +frameModeType = _slsdet.slsDetectorDefs.frameModeType +detectorModeType = _slsdet.slsDetectorDefs.detectorModeType +burstMode = _slsdet.slsDetectorDefs.burstMode +timingSourceType = _slsdet.slsDetectorDefs.timingSourceType \ No newline at end of file