pynetdicom.pdu_items.SCP_SCU_RoleSelectionSubItem

class pynetdicom.pdu_items.SCP_SCU_RoleSelectionSubItem[source]

An SCP/SCU Role Selection Sub-item.

An SCU/SCU Role Selection Sub-item allows communicating Application Entities to negotiate the roles in which they will server for each SOP Class or Meta SOP Class supported on the association.

Notes

An SCP/SCU Role Selection Sub-item requires the following parameters:

  • Item type (1, fixed, 0x51)

  • Item length (1)

  • UID length (1)

  • SOP Class UID (1)

  • SCU role (1)

  • SCP role (1)

Encoding

When encoded, an SCP/SCU Role Section Sub-item has the following structure, taken from Tables D.3-9 and D.3-10 of the DICOM Standard (offsets shown with Python indexing). Items are always encoded using Big Endian. The SOP Class UID parameter is encoded as a UID as per the rules in Part 5, Section 9.1 (ie NO trailing padding null byte).

Offset

Length

Description

0

1

Item type

1

1

Reserved

2

2

Item length

4

2

UID length

6

Variable

SOP class UID

6 + UID length

1

SCP role

7 + UID length

1

SCU role

References

__init__() None[source]

Initialise a new SCP/SCU Role Selection Item.

Methods

__init__()

Initialise a new SCP/SCU Role Selection Item.

decode(bytestream)

Decode bytestream and use the result to set the field values of the PDU item.

encode()

Return the encoded PDU as bytes.

from_primitive(primitive)

Set the item's values using an SCP/SCU Role Selection primitive.

to_primitive()

Return an SCP/SCU Role Selection primitive from the current Item.

Attributes

item_length

Return the item's Item Length field value as int.

item_type

Return the item's Item Type field value as int.

scp

Return the item's SCP Role field value.

scp_role

Return the item's SCP Role field value.

scu

Return the item's SCU Role field value.

scu_role

Return the item's SCU Role field value.

sop_class_uid

Return the item's SOP Class UID field value.

uid

Return the item's SOP Class UID field value.

uid_length

Return the UID Length parameter value.

from_primitive(primitive: SCP_SCU_RoleSelectionNegotiation) None[source]

Set the item’s values using an SCP/SCU Role Selection primitive.

Parameters:

primitive (pdu_primitives.SCP_SCU_RoleSelectionNegotiation) – The primitive to use to set the Item’s field values.

property item_length: int

Return the item’s Item Length field value as int.

property scp: int | None

Return the item’s SCP Role field value.

property scp_role: int | None

Return the item’s SCP Role field value.

property scu: int | None

Return the item’s SCU Role field value.

property scu_role: int | None

Return the item’s SCU Role field value.

property sop_class_uid: UID | None

Return the item’s SOP Class UID field value.

to_primitive() SCP_SCU_RoleSelectionNegotiation[source]

Return an SCP/SCU Role Selection primitive from the current Item.

Returns:

The primitive representation of the current Item.

Return type:

pdu_primitives.SCP_SCU_RoleSelectionNegotiation

property uid: UID | None

Return the item’s SOP Class UID field value.

property uid_length: int

Return the UID Length parameter value.