deviceaccess.ReadAnyGroup
- class deviceaccess.ReadAnyGroup
Bases:
pybind11_objectGroup for waiting on updates from multiple TransferElements with wait_for_new_data enabled.
- __init__(self: deviceaccess.ReadAnyGroup) None
Create an empty ReadAnyGroup.
Methods
__init__(self)Create an empty ReadAnyGroup.
add(self, element)Add a TransferElement to the group.
finalise(self)Finalise the group.
interrupt(self)Interrupt blocking operations running on this group.
processPolled(self)Process polled TransferElements and update them if new values are available.
readAny(self)Wait until one of the elements in this group has received an update.
readAnyNonBlocking(self)Return immediately and process an update if one is available.
readUntil(*args, **kwargs)Overloaded function.
readUntilAll(*args, **kwargs)Overloaded function.
waitAny(self)Wait until any element in this group has received an update, but do not process the update.
waitAnyNonBlocking(self)Return immediately with a notification if an update is available.
- __init__(self: deviceaccess.ReadAnyGroup) None
Create an empty ReadAnyGroup.
- add(self: deviceaccess.ReadAnyGroup, element: deviceaccess.TransferElementBase) None
Add a TransferElement to the group.
This is only allowed before finalise() has been called. The given element may not already be part of a ReadAnyGroup or TransferGroup, otherwise an exception is thrown. The element must be readable.
- Returns:
None: This function does not return a value.
- finalise(self: deviceaccess.ReadAnyGroup) None
Finalise the group.
After this, add() may no longer be called and read/wait methods may be used.
- Returns:
None: This function does not return a value.
- interrupt(self: deviceaccess.ReadAnyGroup) None
Interrupt blocking operations running on this group.
- processPolled(self: deviceaccess.ReadAnyGroup) None
Process polled TransferElements and update them if new values are available.
- Returns:
None: This function does not return a value.
- readAny(self: deviceaccess.ReadAnyGroup) ChimeraTK::TransferElementID
Wait until one of the elements in this group has received an update.
- Returns:
TransferElementID: ID of the element whose update has been processed.
- readAnyNonBlocking(self: deviceaccess.ReadAnyGroup) ChimeraTK::TransferElementID
Return immediately and process an update if one is available.
- Returns:
TransferElementID: ID of the processed element, or an invalid ID if no update is available.
- readUntil(*args, **kwargs)
Overloaded function.
readUntil(self: deviceaccess.ReadAnyGroup, id: ChimeraTK::TransferElementID) -> None
Wait until the given TransferElementID has received an update and store it in its user buffer.
- Returns:
None: This function does not return a value.
readUntil(self: deviceaccess.ReadAnyGroup, element: deviceaccess.TransferElementBase) -> None
Wait until the given TransferElement has received an update and store it in its user buffer.
- Returns:
None: This function does not return a value.
- readUntilAll(*args, **kwargs)
Overloaded function.
readUntilAll(self: deviceaccess.ReadAnyGroup, ids: List[ChimeraTK::TransferElementID]) -> None
Wait until all given TransferElementID values have received updates and store them in their user buffers.
- Returns:
None: This function does not return a value.
readUntilAll(self: deviceaccess.ReadAnyGroup, elements: list) -> None
Wait until all given TransferElements have received updates and store them in their user buffers.
- Returns:
None: This function does not return a value.
- waitAny(self: deviceaccess.ReadAnyGroup) ChimeraTK::ReadAnyGroup::Notification
Wait until any element in this group has received an update, but do not process the update.
- Returns:
Notification: Notification object for the pending update.
- waitAnyNonBlocking(self: deviceaccess.ReadAnyGroup) ChimeraTK::ReadAnyGroup::Notification
Return immediately with a notification if an update is available.
- Returns:
Notification: Notification object for a pending update, or an invalid notification if none is available.