Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
----------
Stream - ?
???
Returns
-------
sub_item
The PDU sub item type
"""
ItemType = NextType(Stream)
if ItemType == 0x52:
return ImplementationClassUIDSubItem
elif ItemType == 0x51:
return MaximumLengthSubItem
elif ItemType == 0x55:
return ImplementationVersionNameSubItem
elif ItemType == 0x53:
return AsynchronousOperationsWindowSubItem
elif ItemType == 0x54:
return SCP_SCU_RoleSelectionSubItem
elif ItemType == 0x56:
return SOPClassExtentedNegociationSubItem
elif ItemType is None:
return None
else:
raise #'Invalid Sub Item', "0x%X" % ItemType
elif item_type == 0x20:
return PresentationContextItemRQ()
elif item_type == 0x21:
return PresentationContextItemAC()
elif item_type == 0x30:
return AbstractSyntaxSubItem()
elif item_type == 0x40:
return TransferSyntaxSubItem()
elif item_type == 0x50:
return UserInformationItem()
elif item_type == 0x52:
return ImplementationClassUIDSubItem()
elif item_type == 0x51:
return MaximumLengthSubItem()
elif item_type == 0x55:
return ImplementationVersionNameSubItem()
elif item_type == 0x53:
return AsynchronousOperationsWindowSubItem()
elif item_type == 0x54:
return SCP_SCU_RoleSelectionSubItem()
elif item_type == 0x56:
return SOPClassExtendedNegotiationSubItem()
elif item_type is None:
# if we are at the end of stream
return None
else:
raise ValueError("During PDU decoding we received an invalid "
"PDU type: %s" %pdu_type)
def ImplementationVersionName(self):
"""
See PS3.7 D3.3.2
Optional
Returns
-------
str
Association Requestor's ImplementationVersionName or '' if not available
"""
# Optional
for ii in self.UserData:
if isinstance(ii, ImplementationVersionNameSubItem):
return ii.ImplementationVersionName.decode('utf-8')
return ''
def ToParams(self):
tmp = ImplementationVersionNameSubItem()
tmp.FromParams(self)
return tmp