pynetdicom.pdu_primitives.SCP_SCU_RoleSelectionNegotiation

class pynetdicom.pdu_primitives.SCP_SCU_RoleSelectionNegotiation[source]

A representation of the SCP/SCU Role Selection Negotiation primitive.

Allows peer AEs to negotiate the roles in which they will serve for each SOP Class or Meta SOP Class supported on the association. This negotiation is optional.

The association Requestor may use one SCP/SCU Role Selection item for each SOP Class as identified by its corresponding Abstract Syntax Name and shall be one of three role values:

  • Requestor is SCU only

  • Requestor is SCP only

  • Requestor is both SCU/SCP

If the SCP/SCU Role Selection item is absent the default role for a Requestor is SCU and for an Acceptor is SCP.

Identical for both A-ASSOCIATE-RQ and A-ASSOCIATE-AC.

sop_class_uid

The UID of the corresponding Abstract Syntax

Type

pydicom.uid.UID, bytes or str

scu_role

False for non-support of the SCU role, True for support.

Type

bool

scp_role

False for non-support of the SCP role, True for support.

Type

bool

Examples

>>> from pynetdicom.pdu_primitives import SCP_SCU_RoleSelectionNegotiation
>>> item = SCP_SCU_RoleSelectionNegotiation()
>>> item.sop_class_uid = '1.2.840.10008.5.1.4.1.1.2'
>>> item.scu_role = True
>>> item.scp_role = False

References

__init__()[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__()

Initialize self.

from_primitive()

Convert the primitive to a PDU item ready to be encoded

Attributes

scp_role

Return the SCP Role.

scu_role

Return the SCU Role.

sop_class_uid

Return the SOP Class UID.

from_primitive()[source]

Convert the primitive to a PDU item ready to be encoded

Returns

item

Return type

pdu_items.SCP_SCU_RoleSelectionSubItem

Raises
  • ValueError – If no SOP Class UID, SCU Role or SCP Role is set

  • ValueError – If SCU Role and SCP Role are both False

property scp_role

Return the SCP Role.

property scu_role

Return the SCU Role.

property sop_class_uid

Return the SOP Class UID.