view Sphinx/source/plugins/python/pydicom.py @ 818:48676fb3ac0f

Added tag Orthanc-1.10.0 for changeset 01fa632daae9
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 23 Feb 2022 15:03:47 +0100
parents a589668768d7
children
line wrap: on
line source

import io
import orthanc
import pydicom

def DecodeInstance(output, uri, **request):
    if request['method'] == 'GET':
        # Retrieve the instance ID from the regular expression (*)
        instanceId = request['groups'][0]
        # Get the content of the DICOM file
        f = orthanc.GetDicomForInstance(instanceId)
        # Parse it using pydicom
        dicom = pydicom.dcmread(io.BytesIO(f))
        # Return a string representation the dataset to the caller
        output.AnswerBuffer(str(dicom), 'text/plain')
    else:
        output.SendMethodNotAllowed('GET')

orthanc.RegisterRestCallback('/pydicom/(.*)', DecodeInstance)  # (*)