annotate Sphinx/source/plugins/indexer.rst @ 780:8e5e868e6369

cont
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 24 Sep 2021 16:58:51 +0200
parents 15f017e7555b
children 57d1b1680e71
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
772
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1 .. _indexer:
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3
778
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
4 Folder Indexer plugin
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
5 =====================
772
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 .. contents::
3971710d9d45 added indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8
778
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
9 This **official** plugin by the `ICTEAM institute of UCLouvain
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
10 <https://uclouvain.be/en/research-institutes/icteam>`__ uses Orthanc
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
11 to publish filesystems containing medical images as a DICOM modality.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
12
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
13 The plugin continuously synchronizes the content of an Orthanc server
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
14 with the content of a filesystem. This way, the filesystem is
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
15 automatically organized according to the :ref:`DICOM model of the real
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
16 world <model-world>`, without any manual intervention. The indexed
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
17 DICOM resources are immediately available in a Web interface and in a
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
18 Web viewer, and can be queried/retrieved by DICOM clients. The DICOM
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
19 files are **not** copied, so this solution has a very small footprint
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
20 in terms of storage requirements.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
21
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
22
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
23 Compilation
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
24 -----------
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
25
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
26 .. highlight:: bash
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
27
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
28 Official releases can be `downloaded from the Orthanc homepage
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
29 <https://www.orthanc-server.com/browse.php?path=/plugin-indexer>`__. As
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
30 an alternative, the `repository containing the source code
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
31 <https://hg.orthanc-server.com/orthanc-indexer/>`__ can be accessed using
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
32 Mercurial.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
33
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
34 The procedure to compile this plugin is similar of that for the
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
35 :ref:`core of Orthanc <binaries>`. The following commands should work
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
36 for most UNIX-like distribution (including GNU/Linux)::
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
37
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
38 $ mkdir Build
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
39 $ cd Build
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
40 $ cmake .. -DSTATIC_BUILD=ON -DCMAKE_BUILD_TYPE=Release
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
41 $ make
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
42
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
43 The compilation will produce a shared library ``OrthancIndexer``
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
44 that contains the folder indexer plugin for Orthanc.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
45
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
46 Pre-compiled Linux Standard Base (LSB) binaries `can be downloaded
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
47 <https://lsb.orthanc-server.com/plugin-indexer/>`__.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
48
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
49 Pre-compiled binaries for Microsoft Windows and macOS `are also
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
50 available
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
51 <https://www.orthanc-server.com/browse.php?path=/plugin-indexer>`__.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
52
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
53 Furthermore, the :ref:`Docker images <docker>`
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
54 ``jodogne/orthanc-plugins`` and ``osimis/orthanc`` also contain the
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
55 plugin.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
56
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
57
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
58 Usage
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
59 -----
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
60
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
61 .. highlight:: json
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
62
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
63 Here is a minimal sample :ref:`configuration file <configuration>` to
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
64 use this plugin::
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
65
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
66 {
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
67 "Plugins" : [
779
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
68 "/home/user/OrthancIndexer/Build/libOrthancIndexer.so"
778
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
69 ],
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
70 "Indexer" : {
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
71 "Enable" : true,
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
72 "Folders" : [ "/home/user/DICOM" ], // List of folders to synchronize
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
73 "Interval" : 10 // Delay between two synchronizations
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
74 }
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
75 }
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
76
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
77 Orthanc must of course be restarted after the modification of its
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
78 configuration file.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
79
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
80 Once Orthanc is started, the folders are transparently synchronized
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
81 without any further interaction. You can start Orthanc with the
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
82 ``--verbose-plugins`` command-line option in order to monitor the
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
83 synchronization process.
779
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
84
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
85 Some remarks:
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
86
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
87 * This plugin cannot be used together with other custom storage area
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
88 plugins (such as :ref:`cloud object storage <object-storage>`).
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
89
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
90 * Even if the folder indexer plugin is in use, you can still add other
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
91 DICOM files using the :ref:`REST API <rest>` or the :ref:`DICOM
780
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 779
diff changeset
92 network protocol <dicom-protocol>`. Such files would be stored in
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 779
diff changeset
93 the ``OrthancStorage`` :ref:`usual folder <orthanc-storage-area>`.
779
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
94