我正在写一个DICOM SCP商店的示例。我使用SCU Store命令模拟多个DCM文件夹的传输(从连接到LAN的另一台计算机)。同时模拟3次传输。由于未知原因,其中一个传输被中止。为了找回相关的StudyInstanceUID,我尝试跟踪中止的关联。这是我的SCP:
from pynetdicom import AE, debug_logger, AllStoragePresentationContexts, evt
debug_logger()
def handle_store(event):
"""Handle EVT_C_STORE events."""
ds = event.dataset
ds.file_meta = event.file_meta
return 0x0000
handlers = [(evt.EVT_C_STORE, handle_store)]
ae = AE()
# Unlimited PDU size
ae.maximum_pdu_size = 0
#ae.add_supported_context
ae.supported_contexts = AllStoragePresentationContexts
ae.start_server(('', 11112), block=True, evt_handlers=handlers)
我在association.py中找到了相关消息,但是否有可能获取中止的dataset.StudyInstanceUID:
# Check for abort
if self.acse.is_aborted():
msg = "Association Aborted"
if self.acse.is_aborted('a-p-abort'):
msg += " (A-P-ABORT)"
LOGGER.info(msg)
self.is_aborted = True
self.is_established = False
evt.trigger(self, evt.EVT_ABORTED, {})
self.kill()
return
目前没有回答
相关问题 更多 >
编程相关推荐