pynetdicom.pdu.A_ASSOCIATE_AC

class pynetdicom.pdu.A_ASSOCIATE_AC

An A-ASSOCIATE-AC PDU.

An A-ASSOCIATE-AC PDU is sent by an association acceptor to indicate that association negotiation has been successful.

application_context_name

The ‘Application Context Item’s Application Context Name field value (if available).

Type:pydicom.uid.UID
called_ae_title

The requestor’s Called AE Title field value, which is the destination DICOM application name as a 16-byte value. The value is not guaranteed to be the actual title and shall not be tested.

Type:bytes
calling_ae_title

The requestor’s Calling AE Title field value, which is the source DICOM application name as a 16-byte value. The value is not guaranteed to be the actual title and shall not be tested.

Type:bytes
pdu_length

The number of bytes from the first byte following the PDU Length field to the last byte of the PDU.

Type:int
pdu_type

The PDU Type field value (0x02).

Type:int
presentation_context

The Presentation Context Item(s).

Type:list of pdu_items.PresentationContextItemAC
protocol_version

The Protocol Version field value (default 0x01).

Type:int
user_information

The User Information Item (if available).

Type:pdu_items.UserInformationItem
variable_items

A list containing the A-ASSOCIATE-AC’s ‘Variable Items’. Contains one Application Context item, one or more Presentation Context items and one User Information item. The order of the items is not guaranteed.

Type:list

Notes

An A-ASSOCIATE-AC PDU requires the following parameters:

  • PDU type (1, fixed value, 0x02)

  • PDU length (1)

  • Protocol version (1, default value, 0x01)

  • Variable items (1)

    • Application Context Item (1)

      • Item type (1, fixed value, 0x10)
      • Item length (1)
      • Application Context Name (1, fixed in an application)
    • Presentation Context Item(s) (1 or more)

      • Item type (1, fixed value, 0x21)
      • Item length (1)
      • Context ID (1)
      • Result/reason (1)
      • Transfer Syntax Sub-items (1)
        • Item type (1, fixed, 0x40)
        • Item length (1)
        • Transfer syntax name(s) (1)
    • User Information Item (1)

      • Item type (1, fixed, 0x50)

      • Item length (1)

      • User data Sub-items (2 or more)

        • Maximum Length Received Sub-item (1)
        • Implementation Class UID Sub-item (1)
        • Optional User Data Sub-items (0 or more)

Encoding

When encoded, an A-ASSOCIATE-AC PDU has the following structure, taken from Table 9-17 [1] (offsets shown with Python indexing). PDUs are always encoded using Big Endian [2].

Offset Length Description
0 1 PDU type
1 1 Reserved
2 4 PDU length
6 2 Protocol version
8 2 Reserved
10 16 Reserved^
26 16 Reserved^
42 32 Reserved
74 Variable Variable items

^ The reserved fields shall be sent with a value identical to the value received in the A-ASSOCIATE-RQ but their values shall not be tested.

References

[1]DICOM Standard, Part 8, Section 9.3.3
[2]DICOM Standard, Part 8, Section 9.3.1
__init__()

Initialise a new A-ASSOCIATE-AC PDU.

Methods

__init__() Initialise a new A-ASSOCIATE-AC PDU.
decode(bytestream) Decode bytestream and use the result to set the field values of the PDU.
encode() Return the encoded PDU as bytes.
from_primitive(primitive) Setup the current PDU using an A-ASSOCIATE (accept) primitive.
to_primitive() Return an A-ASSOCIATE (accept) primitive from the current PDU.

Attributes

application_context_name Return the Application Context Name, if available.
called_ae_title Return the value sent in the Called AE Title reserved space.
calling_ae_title Return the value sent in the Calling AE Title reserved space.
pdu_length Return the PDU Length field value as an int.
pdu_type Return the PDU Type field value an int.
presentation_context Return a list of the Presentation Context Items.
user_information Return the User Information Item, if available.
application_context_name

Return the Application Context Name, if available.

Returns:The acceptor’s Application Context Name or None if not available.
Return type:pydicom.uid.UID or None
called_ae_title

Return the value sent in the Called AE Title reserved space.

While the standard says this value should match the A-ASSOCIATE-RQ value there is no guarantee and this should not be used as a check value.

Returns:The value the A-ASSOCIATE-AC sent in the Called AE Title reserved space.
Return type:bytes
calling_ae_title

Return the value sent in the Calling AE Title reserved space.

While the standard says this value should match the A-ASSOCIATE-RQ value there is no guarantee and this should not be used as a check value.

Returns:The value the A-ASSOCIATE-AC sent in the Calling AE Title reserved space.
Return type:bytes
decode(bytestream)

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

Parameters:bytestream (bytes) – The PDU data to be decoded.
encode()

Return the encoded PDU as bytes.

Returns:The encoded PDU.
Return type:bytes
from_primitive(primitive)

Setup the current PDU using an A-ASSOCIATE (accept) primitive.

Parameters:primitive (pdu_primitives.A_ASSOCIATE) – The primitive to use to set the current PDU field values.
pdu_length

Return the PDU Length field value as an int.

pdu_type

Return the PDU Type field value an int.

presentation_context

Return a list of the Presentation Context Items.

Returns:The Presentation Context Items.
Return type:list of pdu_items.PresentationContextItemAC
to_primitive()

Return an A-ASSOCIATE (accept) primitive from the current PDU.

Returns:The primitive representation of the current PDU.
Return type:pdu_primitives.A_ASSOCIATE
user_information

Return the User Information Item, if available.

Returns:The acceptor’s User Information object or None, if not available.
Return type:pdu_items.UserInformationItem or None