pynetdicom.pdu_items.SOPClassExtendedNegotiationSubItem

class pynetdicom.pdu_items.SOPClassExtendedNegotiationSubItem[source]

A SOP Class Extended Negotiation Sub-item.

A SOP Class Extended Negotiation Sub-item allows peer Application Entities to exchange application information defined by specific Service Class specifications.

Notes

A SOP Class Extended Negotiation Sub-item requires the following parameters:

  • Item type (1, fixed, 0x56)

  • Item length (1)

  • SOP Class UID length (1)

  • SOP Class UID (1)

  • Service class application information

Encoding

When encoded, a SOP Class Extended Negotiation Sub-item has the following structure, taken from Table D.3-11 (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

SOP class UID length

6

Variable

SOP class UID

6 + UID length

Variable

Service class application info

References

__init__() None[source]

Initialise a new SOP Class Extended Negotiation Item.

Methods

__init__()

Initialise a new SOP Class Extended Negotiation 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 a SOP Class Extended Negotiation primitive.

to_primitive()

Return a SOP Class Extended Negotiation primitive from the current Item.

Attributes

app_info

Return the item's Service Class Application Information field value.

item_length

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

item_type

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

sop_class_uid

Return the item's SOP Class UID field value.

sop_class_uid_length

Return the item's SOP Class UID Length field value.

uid

Return the item's SOP Class UID field value.

property app_info: bytes | None

Return the item’s Service Class Application Information field value.

from_primitive(primitive: SOPClassExtendedNegotiation) None[source]

Set the item’s values using a SOP Class Extended Negotiation primitive.

Parameters:

primitive (pdu_primitives.SOPClassExtendedNegotiation) – 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 sop_class_uid: UID | None

Return the item’s SOP Class UID field value.

property sop_class_uid_length: int

Return the item’s SOP Class UID Length field value.

to_primitive() SOPClassExtendedNegotiation[source]

Return a SOP Class Extended Negotiation primitive from the current Item.

Returns:

The primitive representation of the current Item.

Return type:

pdu_primitives.SOPClassExtendedNegotiation

property uid: UID | None

Return the item’s SOP Class UID field value.