pynetdicom._handlers.doc_handle_c_get¶
- pynetdicom._handlers.doc_handle_c_get(event: Event, *args: Sequence[Any]) Iterator[int | Dataset | None] [source]¶
Documentation for handlers bound to
evt.EVT_C_GET
.User implementation of this event handler is required if one or more services that use C-GET are to be supported. If a handler is not implemented and bound to
evt.EVT_C_GET
then the C-GET request will be responded to using a Status value of0xC411
- Failure.Yields an
int
containing the total number of C-STORE sub-operations, then yields(status, dataset)
pairs.Event
evt.EVT_C_GET
Supported Service Classes
Status
- Success
0x0000
- Sub-operations complete, no failures or warnings- Failure
0xA701
- Out of resources: unable to calculate the number of matches0xA702
- Out of resources: unable to perform sub-operations0xA900
- Identifier does not match SOP class0xAA00
- None of the frames requested were found in the SOP instance0xAA01
- Unable to create new object for this SOP class0xAA02
- Unable to extract frames0xAA03
- Time-based request received for a non-time-based original SOP Instance0xAA04
- Invalid request0xC000
to0xCFFF
- Unable to process- Cancel
0xFE00
- Sub-operations terminated due to Cancel request- Warning
0xB000
- Sub-operations complete, one or more failures or warnings- Pending
0xFF00
- Matches are continuing - Current Match is supplied and any Optional Keys were supported in the same manner as Required Keys
- Parameters:
event (events.Event) –
The event representing a service class receiving a C-GET request message.
Event
attributes are:assoc
: theAssociation
that is running the service that received the C-GET request.context
: the presentation context the request was sent under as aPresentationContextTuple
.event
: the event that occurred asInterventionEvent
.request
: the receivedC-GET request
timestamp
: the date and time that the C-GET request was processed by the service asdatetime.datetime
.
Event
properties are:identifier
: the decodedDataset
contained within the C-GET request’s Identifier parameter. Because pydicom uses a deferred read when decoding data, if the decode fails the returnedDataset
will only raise an exception at the time of use.is_cancelled
: returnsTrue
if a C-CANCEL request has been received,False
otherwise. If a C-CANCEL is received then the handler shouldyield (0xFE00, None)
andreturn
.message_id
: the C-GET request’s Message ID asint
.
args – If the handler was bound to the event using
bind(event, handler, args)
or by passingevt_handlers=[(event, handler, args), ...]
, where args is alist
then there will be one or more optional extra parameters matching the contents of args.
- Yields:
int – The first yielded value should be the total number of C-STORE sub-operations necessary to complete the C-GET operation. In other words, this is the number of matching SOP Instances to be sent to the peer.
status (pydicom.dataset.Dataset or int) – The status returned to the peer AE in the C-GET response. Must be a valid C-GET status value for the applicable Service Class as either an
int
or aDataset
object containing (at a minimum) a (0000,0900) Status element. If returning aDataset
object then it may also contain optional elements related to the Status (as in DICOM Standard, Part 7, Annex C).dataset (pydicom.dataset.Dataset or None) – If the status category is ‘Pending’ then yield the
Dataset
to send to the peer via a C-STORE sub-operation over the current association.If the status category is ‘Failed’, ‘Warning’ or ‘Cancel’ then yield a
Dataset
with a (0008,0058) Failed SOP Instance UID List element containing a list of the C-STORE sub-operation SOP Instance UIDs for which the C-GET operation has failed.If the status category is ‘Success’ then yield
None
, although yielding a final ‘Success’ status is not required and will be ignored if necessary.
See also
send_c_get()
,C_GET
,QueryRetrieveServiceClass
,HangingProtocolQueryRetrieveServiceClass
,DefinedProcedureProtocolQueryRetrieveServiceClass
,ColorPaletteQueryRetrieveServiceClass
,ImplantTemplateQueryRetrieveServiceClass
,ProtocolApprovalQueryRetrieveServiceClass
References