annotate Sphinx/source/plugins/ohif.rst @ 993:05b106383b2a

migration to UCLouvain servers
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 21 Nov 2023 21:39:40 +0100
parents 1316bc62b5d5
children 60b0b7ea409b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 .. _ohif:
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 OHIF plugin
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 ===========
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 .. contents::
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 This **official** plugin by the `ICTEAM institute of UCLouvain
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 <https://uclouvain.be/en/research-institutes/icteam>`__ extends
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 Orthanc with the `OHIF <https://ohif.org/>`__ extensible Web imaging
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 platform.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
14 The plugin greatly simplifies the deployment of OHIF, as it does not
965
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
15 necessitate the setup of any reverse proxy.
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
16
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
17 If you face difficulties in using OHIF, please get in touch with the
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
18 `OHIF community <https://ohif.org/collaborate>`__ in the first place.
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
19 Indeed, the OHIF and Orthanc communities are entirely distinct.
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
20
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
21
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22 Usage
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23 -----
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
25 This plugin adds a dedicated button to Orthanc Explorer, which
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26 provides an easy, fast access to the OHIF viewers (click on the image
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
27 to view a demo video):
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
29 .. image:: ../images/OHIF.png
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30 :align: center
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
31 :width: 800
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 :target: https://www.youtube.com/watch?v=-lzddzq9iT4
967
2df3597eacc8 documentation of IIIF support
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 965
diff changeset
33
2df3597eacc8 documentation of IIIF support
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 965
diff changeset
34 |
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
37 Compilation
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38 -----------
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40 .. highlight:: bash
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42 Official releases can be `downloaded from the Orthanc homepage
993
05b106383b2a migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 991
diff changeset
43 <https://orthanc.uclouvain.be/downloads/sources/orthanc-ohif/index.html>`__. As
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44 an alternative, the `repository containing the source code
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45 <https://orthanc.uclouvain.be/hg/orthanc-ohif/>`__ can be accessed
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46 using Mercurial.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 The procedure to compile this plugin is similar of that for the
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
49 :ref:`core of Orthanc <binaries>`. The following commands should work
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
50 on most GNU/Linux distributions, provided Docker is installed::
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
51
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
52 $ mkdir Build
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53 $ cd Build
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
54 $ ../Resources/CreateOHIFDist.sh
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55 $ cmake .. -DSTATIC_BUILD=ON -DCMAKE_BUILD_TYPE=Release
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
56 $ make
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58 The compilation will produce a shared library ``libOrthancOHIF.so``
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
59 that contains the OHIF plugin for Orthanc.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
60
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
61 Pre-compiled Linux Standard Base (LSB) binaries `are available for
993
05b106383b2a migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 991
diff changeset
62 download <https://orthanc.uclouvain.be/downloads/linux-standard-base/orthanc-ohif/index.html>`__.
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
63
993
05b106383b2a migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 991
diff changeset
64 Pre-compiled binaries for `Microsoft Windows <https://orthanc.uclouvain.be/downloads/windows-32/orthanc-ohif/index.html>`__
05b106383b2a migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 991
diff changeset
65 and `macOS <https://orthanc.uclouvain.be/downloads/macos/orthanc-ohif/index.html>` are available as well.
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 Furthermore, the :ref:`Docker images <docker>`
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68 ``jodogne/orthanc-plugins`` and ``osimis/orthanc`` also contain the
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69 plugin. Debian and Ubuntu packages can be found in the
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70 :ref:`standalone repository <binaries>`
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 ``https://debian.orthanc-labs.com/``.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74 Configuration
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75 -------------
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77 .. highlight:: json
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79 Here is a minimal sample :ref:`configuration file <configuration>` to
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 use this plugin::
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82 {
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 "Plugins" : [
956
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
84 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so"
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85 ]
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 }
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88 Orthanc must of course be restarted after the modification of its
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 configuration file.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 Using DICOMweb
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93 ^^^^^^^^^^^^^^
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
94
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
95 .. highlight:: json
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
96
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
97 By default, the plugin uses the `DICOM JSON data source
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
98 <https://v3-docs.ohif.org/configuration/datasources/dicom-json/>`__ of
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 OHIF. This data source is optimized to provide the fastest access to
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100 the DICOM images, while requiring no additional plugin. However, in
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101 order to deliver fast access, the OHIF plugin will cache additional
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
102 information about each DICOM instance as :ref:`metadata <metadata>` in
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
103 the Orthanc database, which results in a larger size of the Orthanc
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
104 database (an additional 1KB is roughly needed per instance).
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
105
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
106 As an alternative, it is possible to enable the `DICOMweb data source
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
107 <https://v3-docs.ohif.org/configuration/dataSources/dicom-web>`__. In
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
108 this case, the :ref:`DICOMweb plugin of Orthanc <dicomweb>` must also
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
109 be loaded. It can also be useful to load the :ref:`GDCM plugin <gdcm>`
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
110 if the DICOM images are encoded using a JPEG2k compressed transfer
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
111 syntax.
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
112
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
113 The advantages of using DICOMweb over the default DICOM JSON are:
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
114
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
115 * More standard-compliant.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
116
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
117 * The OHIF study list is accessible, notably as a button on the
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
118 welcome screen of Orthanc Explorer. The study list is not available
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
119 if using the DICOM JSON data source.
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
120
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
121 * No additional space is used in the Orthanc database.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
122
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
123 Here is a minimal configuration file to use DICOMweb::
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
124
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
125 {
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
126 "Plugins" : [
956
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
127 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so",
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
128 "/home/user/orthanc-dicomweb/Build/libOrthancDicomWeb.so"
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
129 ],
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
130 "OHIF" : {
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
131 "DataSource" : "dicom-web"
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
132 }
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
133 }
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
134
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
135
954
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
136 User configuration of OHIF
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
137 ^^^^^^^^^^^^^^^^^^^^^^^^^^
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
138
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
139 .. highlight:: json
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
140
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
141 OHIF comes with a number of `configuration options
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
142 <https://v3-docs.ohif.org/configuration/configurationfiles/#configuration-options>`__
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
143 that can be fine-tuned by the user. User settings can be injected
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
144 using the ``UserConfiguration`` option as follows::
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
145
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
146 {
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
147 "Plugins" : [
956
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
148 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so"
954
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
149 ],
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
150 "OHIF" : {
955
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 954
diff changeset
151 "UserConfiguration" : "ohif.js"
954
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
152 }
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
153 }
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
154
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
155 .. highlight:: javascript
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
156
955
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 954
diff changeset
157 A minimal ``ohif.js`` would be::
954
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
158
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
159 window.config = {
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
160 extensions: [],
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
161 modes: []
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
162 }
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
163
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
164 Note that the following configuration options will be overridden by
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
165 the OHIF plugin to properly configure the data source and the
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
166 integration with the Orthanc Web server:
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
167
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
168 * ``window.config.dataSources``
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
169 * ``window.config.defaultDataSourceName``
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
170 * ``window.config.routerBasename``
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
171 * ``window.config.showStudyList`` (set to ``false`` if using the DICOM
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
172 JSON data source)
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
173
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
174
965
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
175 .. _ohif-router-basename:
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
176
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
177 Router basename
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
178 ^^^^^^^^^^^^^^^
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
179
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
180 .. highlight:: json
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
181
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
182 If Orthanc is not branched at the root of a Web server thanks of the
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
183 presence of a reverse proxy, the configuration option
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
184 ``RouterBasename`` must be adapted.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
185
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
186 For instance, if Orthanc is running at address
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
187 ``https://host.com/imaging/demo/orthanc/``, the following
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
188 configuration file must be used for OHIF to work::
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
189
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
190 {
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
191 "Plugins" : [
956
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
192 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so"
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
193 ],
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
194 "OHIF" : {
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
195 "RouterBasename" : "/imaging/demo/orthanc/ohif/"
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
196 }
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
197 }
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
198
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
199 The default value of ``RouterBasename`` is ``/ohif/``.
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
200
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
201
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
202 .. _ohif-preloading:
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
203
952
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
204 Preloading
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
205 ^^^^^^^^^^
4a76327e83fb started documentation of ohif plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
206
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
207 .. highlight:: json
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
208
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
209 If using the DICOM JSON data source, whenever a new DICOM instance is
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
210 received by Orthanc, the OHIF plugin will compute a summary of the
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
211 DICOM tags of interest to OHIF, and will store it as :ref:`metadata
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
212 <metadata>` in the Orthanc database. This process has the advantage of
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
213 speeding up even the first opening of the DICOM study by OHIF, which
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
214 probably corresponds to the expectations of most radiologists.
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
215
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
216 However, if your Orthanc deployment is focused on speed, this
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
217 preloading might be undesirable, as it slows down the ingestion of new
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
218 DICOM instances by Orthanc. Furthermore, if your Orthanc server will
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
219 contain a large number of DICOM studies that will never be displayed
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
220 using OHIF, this can result in a waste of space in the Orthanc
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
221 database because of the metadata that will be preloaded, but that will
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
222 never be read.
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
223
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
224 It is consequently possible to turn off the automated preloading
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
225 of metadata using the following configuration::
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
226
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
227 {
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
228 "Plugins" : [
956
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 955
diff changeset
229 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so"
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
230 ],
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
231 "OHIF" : {
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
232 "DataSource" : "dicom-json",
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
233 "Preload" : false
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
234 }
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
235 }
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
236
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
237 If the ``Preload`` option is set to ``false``, the first display of a
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
238 DICOM study can take several seconds because of the computation of the
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
239 metadata, but subsequent displays will run much faster.
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
240
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
241 Note that preloading is only applied to the newly received instances:
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
242 The DICOM instances that were stored in the Orthanc server before the
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
243 installation of the OHIF plugin will only benefit from the
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
244 optimization starting with their second display using OHIF.
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
245
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
246
965
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
247 .. _ohif-https:
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
248
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
249 HTTPS encryption
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
250 ^^^^^^^^^^^^^^^^
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
251
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
252 .. highlight:: bash
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
253
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
254 In order to use the :ref:`built-in HTTPS encryption <https-builtin>`
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
255 of Orthanc together with the OHIF plugin, first generate a proper
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
256 X.509 certificate for the ``localhost``::
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
257
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
258 $ openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
259 -subj "/C=BE/CN=localhost" -keyout /tmp/private.key -out /tmp/certificate.crt
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
260 $ cat /tmp/private.key /tmp/certificate.crt > /tmp/certificate.pem
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
261
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
262
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
263 .. highlight:: json
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
264
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
265 Secondly, create the following configuration file::
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
266
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
267 {
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
268 "Plugins" : [
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
269 "/home/user/orthanc-ohif/Build/libOrthancOHIF.so"
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
270 ],
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
271 "SslEnabled" : true,
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
272 "SslCertificate" : "/tmp/certificate.pem",
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
273 "OHIF" : {
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
274 "DataSource" : "dicom-json",
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
275 "RouterBasename" : "/ohif/"
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
276 }
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
277 }
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
278
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
279 If more complex scenarios with reverse proxies are involved, make sure
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
280 to properly setup :ref:`CORS in your reverse proxy <nginx-cors>` and
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
281 to :ref:`adapt the router basename <ohif-router-basename>`. If you
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
282 face difficulties, while the simple setup with the built-in HTTPS
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
283 encryption described above works, your issue is related to OHIF, so
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
284 please get in touch with the `OHIF community
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
285 <https://ohif.org/collaborate>`__.
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
286
dfd33c9624d8 HTTPS encryption with OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 956
diff changeset
287
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
288 For developers
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
289 --------------
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
290
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
291 Extensions to the REST API
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
292 ^^^^^^^^^^^^^^^^^^^^^^^^^^
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
293
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
294 .. highlight:: bash
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
295
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
296 The content of the `DICOM JSON data source
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
297 <https://v3-docs.ohif.org/configuration/datasources/dicom-json/>`__
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
298 for a DICOM study of interest can be retrieved as follows::
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
299
991
1316bc62b5d5 migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 967
diff changeset
300 $ curl https://orthanc.uclouvain.be/demo/studies/6b9e19d9-62094390-5f9ddb01-4a191ae7-9766b715/ohif-dicom-json
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
301
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
302 This data source is constructed from the :ref:`metadata 4202
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
303 <registry>` associated with the individual DICOM instances of the
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
304 DICOM study. The metadata corresponds to the `Base64 encoding
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
305 <https://en.wikipedia.org/wiki/Base64>`__ of a gzipped JSON file. For
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
306 debugging, the JSON file associated with a DICOM instance can be
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
307 inspected using::
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
308
991
1316bc62b5d5 migration to UCLouvain servers
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 967
diff changeset
309 $ curl https://orthanc.uclouvain.be/demo/instances/1f3c00bd-49df10b7-f416a598-1b3bb5a2-cb791b52/metadata/4202 | base64 -d | gunzip -c
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
310
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
311
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
312 Preloading existing studies
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
313 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
314
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
315 :ref:`As explained above <ohif-preloading>`, the metadata associated
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
316 with DICOM instances are only preloaded for the newly ingested DICOM
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
317 instances. Using the REST API of Orthanc, it is easy to create a
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
318 script that would preload the metadata for the already existing DICOM
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
319 studies, hereby greatly speeding up the first opening of those studies
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
320 as well.
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
321
954
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
322 This script would loop over the :ref:`the DICOM studies that are
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
323 stored by Orthanc <rest-access>` using ``GET /studies``. For each
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
324 study whose :ref:`Orthanc identifier <orthanc-ids>` is ``id``, the
19fd9eab4ec0 user configuration of OHIF
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 953
diff changeset
325 script would simply call ``GET /studies/{id}/ohif-dicom-json``.
953
2038eb1f55bb finalized ohif documentation
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 952
diff changeset
326