pyFAI.gui.model package
pyFAI.gui.model.AbstractModel module
- class pyFAI.gui.model.AbstractModel.AbstractModel(parent=None)
Bases:
QObject
- __init__(parent=None)
- changed
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- isLocked()
Returns True if the events are locked.
- Return type:
bool
- isValid()
- lockContext()
Context manager to lock and unlock signals.
- lockSignals()
Lock the change events
- unlockSignals()
Unlock the change events
- Returns:
False if the model is still locked, else True
- wasChanged()
Emit the change event in case of the model was not locked.
- Returns:
True if the signal was emitted.
pyFAI.gui.model.CalibrantModel module
pyFAI.gui.model.CalibrationModel module
- class pyFAI.gui.model.CalibrationModel.CalibrationModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- experimentSettingsModel()
- Return type:
- fittedGeometry()
- geometryConstraintsModel()
- Return type:
- geometryHistoryModel()
- Return type:
- integrationSettingsModel()
- Return type:
- isValid()
- markerModel()
- Return type:
- peakGeometry()
- Return type:
- peakSelectionModel()
- Return type:
- rawPlotView()
Store definition of the RAW data view.
This view is shared by some plots
- Return type:
pyFAI.gui.model.ConstraintModel module
- class pyFAI.gui.model.ConstraintModel.ConstraintModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- fillDefault(other)
Fill unset values of this model with the other model
- Parameters:
other (GeometryConstraintsModel) –
- hasConstraint()
- isFixed()
- isRangeConstrained()
- range()
- set(other)
- setFixed(fixed=True)
- setRangeConstraint(minValue, maxValue)
pyFAI.gui.model.DataModel module
pyFAI.gui.model.DataModelAdaptor module
pyFAI.gui.model.DetectorModel module
pyFAI.gui.model.ExperimentSettingsModel module
- class pyFAI.gui.model.ExperimentSettingsModel.ExperimentSettingsModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- calibrantModel()
- dark()
- detector()
Detector getter synchronizing internal detector configuration to match the input image.
- detectorModel()
- flat()
- image()
- isValid()
- mask()
- maskedImage()
- polarizationFactor()
- poniFile()
- preprocessedImage()
- wavelength()
pyFAI.gui.model.FilenameModel module
- class pyFAI.gui.model.FilenameModel.FilenameModel(parent=None)
Bases:
DataModel
Model storing a filename and if the data is still synchronized.
- __init__(parent=None)
- filename()
Returns the filename associated with this model.
- Return type:
Union[None,str]
- hasFilename()
True if this model contains a filename.
- Return type:
bool
- isSynchronized()
Returns True if the filename and the data are synchronized.
Both contains the same data.
- setFilename(filename)
Set a filename to this model
- Parameters:
filename (str) – The new filename
- setSynchronized(isSynchronized)
” Set if the filename and the data are synchronized.
- setValue(value)
pyFAI.gui.model.Fit2dGeometryModel module
- class pyFAI.gui.model.Fit2dGeometryModel.Fit2dGeometryModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- centerX()
- centerY()
- distance()
- isValid(checkWaveLength=True)
Check if all the modele have a meaning.
- Parameters:
checkWaveLength (bool) – If true (default) the wavelength is checked
- setFrom(geometry)
- tilt()
- tiltPlan()
pyFAI.gui.model.GeometryConstraintsModel module
- class pyFAI.gui.model.GeometryConstraintsModel.GeometryConstraintsModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- copy(parent=None)
Copy this model to a new model
- Parameters:
parent (qt.QObject) – Parent of the copyed model
- Return type:
- distance()
- fillDefault(other)
Fill unset values of this model with the other model
- Parameters:
other (GeometryConstraintsModel) –
- isValid()
- poni1()
- poni2()
- rotation1()
- rotation2()
- rotation3()
- set(other)
Set this geometry constraints with the other informations.
- Parameters:
other (GeometryConstraintsModel) –
- wavelength()
pyFAI.gui.model.GeometryHistoryModel module
- class pyFAI.gui.model.GeometryHistoryModel.GeometryHistoryModel(parent=None)
Bases:
ListModel
- appendGeometry(label, time, geometry, rms)
- Parameters:
label (str) – Named geometry
time (datetime.datetime) – time of the record
geometry (GeometryModel) – Geometry to store
rms (float) – Root mean share of this geometry
- class pyFAI.gui.model.GeometryHistoryModel.StoredGeometry(parent, label, time, geometry, rms)
Bases:
AbstractModel
Single element stored in the history of geometries.
- Parameters:
time (datetime.datetime) – time of the record
geometry (GeometryModel) – Geometry to store
rms (float) –
- __init__(parent, label, time, geometry, rms)
- geometry()
- Return type:
- label()
- Return type:
str
- rms()
- Return type:
float
- time()
- Return type:
datetime.datetime
pyFAI.gui.model.GeometryModel module
- class pyFAI.gui.model.GeometryModel.GeometryModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- copy()
- distance()
- isValid(checkWaveLength=True)
Check if all the model have a meaning.
- Parameters:
checkWaveLength (bool) – If true (default) the wavelength is checked
- poni1()
- poni2()
- rotation1()
- rotation2()
- rotation3()
- setFrom(geometry)
- wavelength()
pyFAI.gui.model.ImageModel module
- class pyFAI.gui.model.ImageModel.ImageFilenameModel(parent=None)
Bases:
DataModel
Model storing an image using it’s filename.
- filename()
Returns the filename associated with this model.
- Return type:
Union[None,str]
- filenameChanged
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- hasFilename()
True if this model contains a filename.
- Return type:
bool
- setFilename(filename)
Set a filename to this model
- Parameters:
filename (str) – The new filename
- class pyFAI.gui.model.ImageModel.ImageFromFilenameModel(parent=None)
Bases:
DataModel
Model storing an image array which could come from a filename.
This model deal with unsynchronized filename/data.
- __init__(parent=None)
- filename()
Returns the filename associated with this model.
- Return type:
Union[None,str]
- filenameChanged
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- hasFilename()
True if this model contains a filename.
- Return type:
bool
- isSynchronized()
Returns True if the filename and the data are synchronized.
Both contains the same data.
- setFilename(filename)
Set a filename to this model
- Parameters:
filename (str) – The new filename
- setSynchronized(isSynchronized)
” Set if the filename and the data are synchronized.
- setValue(value)
Set the value of this image model.
- unlockSignals()
Unlock the change events
- Returns:
False if the model is still locked, else True
pyFAI.gui.model.IntegrationSettingsModel module
pyFAI.gui.model.ListModel module
- class pyFAI.gui.model.ListModel.ChangeEvent(index, item, added=False, removed=False, updated=False)
Bases:
object
- __init__(index, item, added=False, removed=False, updated=False)
Define a change done on an item from the
ListModel
.- Parameters:
index (int) – The location where to put/remove the item (before the change) or the current index of the changed item
item (object) – The item involved in this change
updated (bool) – True if the item was changed
added (bool) – True if the item was added
removed (bool) – True if the item was removed
- class pyFAI.gui.model.ListModel.ChangeListEvent
Bases:
object
A container of consecutive change events
- __init__()
- hasOnlyStructuralEvents()
True if only structural change (added, removed) is part of the changes
- Return type:
bool
- hasOnlyUpdateEvents()
True if only updates events (updated) is part of the changes
- Return type:
bool
- hasStructuralEvents()
True if a structural change (added, removed) is part of the changes
- Return type:
bool
- hasUpdateEvents()
True if an update change (updated) is part of the changes
- Return type:
bool
- class pyFAI.gui.model.ListModel.ListModel(parent=None)
Bases:
AbstractModel
List of AbstractModel managing signals when items are eadited, added and removed.
Atomic events for each add/remove of items. To manage it in a better way, structureAboutToChange and structureChanged, in order to compute all the atomic events in a single time.
- Parameters:
parent – Owner of this model
- __init__(parent=None)
- append(item)
Add a new item to the end of the list.
- changed
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- clear()
Remove all the items from the list.
- contentChanged
Emitted when the content of the elements changed.
- index(item)
Returns the index of the item in the list structure
- isValid()
- remove(item)
Remove an item.
- structureChanged
Emitted at the end of a structural change.
- unlockSignals()
Unlock the change events
- Returns:
False if the model is still locked, else True
pyFAI.gui.model.MarkerModel module
- class pyFAI.gui.model.MarkerModel.Marker(name)
Bases:
object
Abstract marker
- __init__(name)
- name()
- class pyFAI.gui.model.MarkerModel.MarkerModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- add(marker)
- remove(marker)
pyFAI.gui.model.MaskedImageModel module
pyFAI.gui.model.PeakModel module
- class pyFAI.gui.model.PeakModel.PeakModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- color()
- coords()
Returns coords as numpy array.
The first index identify a coord, the seconf identify the coord dimensions.
List of axis/ord can be reached like that.
coords = group.coords() yy = coords[:, 0] xx = coords[:, 1]
- copy(parent=None)
- distanceTo(coord)
Returns the smallest distance to this coord.
None is retruned if the group contains no peaks.
- Parameters:
coord (Tuple[float,float]) – Distance to mesure
- isEnabled()
True if this group has to be taken into acount.
- Return type:
bool
- isValid()
- mergeCoords(coords)
Merge new coords to the current list of coords.
Duplicated values are removed from the new coords, and the is added the end of the previous list.
- Parameters:
coords ([numpy.ndarray,PeakModel]) –
- name()
- ringNumber()
- setColor(color)
- setCoords(coords)
Set coords as numpy array.
- Parameters:
coords (numpy.ndarray) – Array of coords (1st dimension is the index of the coord; the second dimension contains y as first index, and x as second index).
- setEnabled(isEnabled)
Set this group to be taken into acount (or not).
- Parameters:
isEnabled (bool) – True to enable this group.
- setName(name)
- setRingNumber(ringNumber)
pyFAI.gui.model.PeakSelectionModel module
- class pyFAI.gui.model.PeakSelectionModel.PeakSelectionModel(parent=None)
Bases:
AbstractModel
- __init__(parent=None)
- append(peak)
- clear()
- closestGroup(coord, threshold=None)
Returns the closest group from coord.
- Parameters:
Tuple[float,float] – Position coord to search around.
threshold (float) – If specified, filter out groups when the distance is highter than this value.
- contentChanged
Emitted when the content of the elements changed.
- index(peak)
- isValid()
- peakCount()
Returns the amout of peak selected throug all the groups
- Return type:
int
- peakFromRingNumber(ringNumber)
Returns a peak model from it’s ring number.
If no peaks where found, returns None.
- Return type:
Union[PeakModel,None]
- remove(peak)
- structureChanged
Emitted when there is different elements in the list.
- unlockSignals()
Unlock the change events
- Returns:
False if the model is still locked, else True
pyFAI.gui.model.PlotViewModel module
- class pyFAI.gui.model.PlotViewModel.PlotViewModel(parent=None)
Bases:
DataModel
This model allow to store and restitute a plot view.
Stored data can be applyed to another plot in order to synchronize location of the data coords.
- setFromPlot(plot)
- synchronizePlotConfig(plot)
- synchronizePlotView(plot)
Module contents
Models relative to calibration