DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Member Functions | Private Member Functions | Private Attributes | List of all members
UserIdentityNegotiationSubItem Class Referenceabstract

Abstract base class for User Identity Negotiation user items. More...

Inheritance diagram for UserIdentityNegotiationSubItem:

## Public Member Functions
| UserIdentityNegotiationSubItem (const unsigned char itemType)
| Constructor. More...
| UserIdentityNegotiationSubItem (const UserIdentityNegotiationSubItem &src)
| Copy constructor. More...
virtual unsigned char | pduType () const =0
| Denotes whether instance is part of a request (DUL_TYPEASSOCIATERQ) or acknowledgement PDU (DUL_TYPEASSOCIATEAC) More...
virtual unsigned char | getItemType () const
| Returns item type, which is 0x58 for requests, and 0x58 for acknowledgements. More...
virtual unsigned char | getReserved () const
| Returns reserved field, which is 0 in this implementation (see DICOM standard) More...
virtual OFCondition | streamedLength (unsigned long &length) const =0
| Computes total length of item if streamed to a buffer. More...
virtual OFCondition | parseFromBuffer (unsigned char *readBuffer, unsigned long &bytesRead, unsigned long availData)=0
| Parse item from buffer. More...
virtual OFCondition | stream (unsigned char *targetBuffer, unsigned long &lengthWritten) const =0
| Stream the package into a byte stream for network transmission. More...
virtual void | clear ()=0
| Clears member variables and frees memory.
virtual void | dump (STD_NAMESPACE ostream &outstream) const =0
| Dump content of this user identity sub item to output stream. More...
virtual | ~UserIdentityNegotiationSubItem ()
| Destructor, nothing to clean up.

## Private Member Functions
UserIdentityNegotiationSubItem & | operator= (const UserIdentityNegotiationSubItem &)
| Undefined private assignment operator. More...

## Private Attributes
const unsigned char | m_itemType
| Item type of this user item. More...
const unsigned char | m_reserved
| Reserved field, should be always sent with value 0 (default)

## Detailed Description

Abstract base class for User Identity Negotiation user items.

## Constructor & Destructor Documentation

## ◆ UserIdentityNegotiationSubItem() [1/2]

UserIdentityNegotiationSubItem::UserIdentityNegotiationSubItem | ( | const unsigned char | itemType | ) |

Constructor.

Parameters

  itemType | Must be set to 0x58 for requests, 0x59 for acknowledgements (done in constructors of sub classes)

## ◆ UserIdentityNegotiationSubItem() [2/2]

UserIdentityNegotiationSubItem::UserIdentityNegotiationSubItem | ( | const UserIdentityNegotiationSubItem & | src | ) |
| inline

Copy constructor.

Needed to keep some compilers quiet.

Parameters

  src | item that should be copied from.

## Member Function Documentation

## ◆ dump()

virtual void UserIdentityNegotiationSubItem::dump | ( | STD_NAMESPACE ostream & | outstream | ) | const
| pure virtual

Dump content of this user identity sub item to output stream.

Parameters

  outstream | The stream to dump to

Implemented in UserIdentityNegotiationSubItemAC, and UserIdentityNegotiationSubItemRQ.

## ◆ getItemType()

virtual unsigned char UserIdentityNegotiationSubItem::getItemType | ( |  | ) | const
| inline virtual

Returns item type, which is 0x58 for requests, and 0x58 for acknowledgements.

Returns
  The item type = 0x58 or 0x59

## ◆ getReserved()

virtual unsigned char UserIdentityNegotiationSubItem::getReserved | ( |  | ) | const
| inline virtual

Returns reserved field, which is 0 in this implementation (see DICOM standard)

Returns
  Content of reserved field = 0

## ◆ operator=()

UserIdentityNegotiationSubItem& UserIdentityNegotiationSubItem::operator= | ( | const UserIdentityNegotiationSubItem & |  | ) |
| private

Undefined private assignment operator.

Needed to keep some compilers quiet.

Returns
  Reference to "this" object

## ◆ parseFromBuffer()

virtual OFCondition UserIdentityNegotiationSubItem::parseFromBuffer | ( | unsigned char * | readBuffer,
|  | unsigned long & | bytesRead,
|  | unsigned long | availData
| ) |  |
| pure virtual

Parse item from buffer.

The buffer has to start with the correct user item type.

Parameters

  readBuffer | The buffer to read from (input and output). The pointer to the buffer gets incremented by "bytesRead" bytes.
  bytesRead | Returns number of bytes read by this function
  availData | Size of the buffer for reading

Returns
  EC_Normal if successful, error code otherwise

Implemented in UserIdentityNegotiationSubItemAC, and UserIdentityNegotiationSubItemRQ.

## ◆ pduType()

virtual unsigned char UserIdentityNegotiationSubItem::pduType | ( |  | ) | const
| pure virtual

Denotes whether instance is part of a request (DUL_TYPEASSOCIATERQ) or acknowledgement PDU (DUL_TYPEASSOCIATEAC)

Returns
  Constant for either request of acknowledgement message.

Implemented in UserIdentityNegotiationSubItemAC, and UserIdentityNegotiationSubItemRQ.

## ◆ stream()

virtual OFCondition UserIdentityNegotiationSubItem::stream | ( | unsigned char * | targetBuffer,
|  | unsigned long & | lengthWritten
| ) |  | const
| pure virtual

Stream the package into a byte stream for network transmission.

Parameters

  targetBuffer | The buffer to stream to
  lengthWritten | Returns number of bytes written to buffer

Returns
  EC_Normal, if successful, error code otherwise

Implemented in UserIdentityNegotiationSubItemAC, and UserIdentityNegotiationSubItemRQ.

## ◆ streamedLength()

virtual OFCondition UserIdentityNegotiationSubItem::streamedLength | ( | unsigned long & | length | ) | const
| pure virtual

Computes total length of item if streamed to a buffer.

Parameters

  length | - [out] The total length of the item in bytes

Returns
  EC_Normal if successful, error code otherwise

Implemented in UserIdentityNegotiationSubItemAC, and UserIdentityNegotiationSubItemRQ.

## Member Data Documentation

## ◆ m_itemType

const unsigned char UserIdentityNegotiationSubItem::m_itemType
| private

Item type of this user item.

For User Identity Negotiation, this is always 0x58 for requests and 0x59 for acknowledgements.

The documentation for this class was generated from the following file:

- dcmnet/include/dcmtk/dcmnet/dcuserid.h

Generated on Mon Dec 15 2025 for DCMTK Version 3.7.0 by Doxygen 1.9.1