Mercurial > hg > orthanc-book
diff Sphinx/source/plugins/python/pydicom.py @ 703:a589668768d7
moving python samples in separate files (2)
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 11 Jun 2021 10:07:12 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Sphinx/source/plugins/python/pydicom.py Fri Jun 11 10:07:12 2021 +0200 @@ -0,0 +1,18 @@ +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) # (*)