annotate Sphinx/source/plugins/indexer.rst @ 872:f72b2dd172da Orthanc-1.11.2

Orthanc 1.11.2
author Alain Mazy <am@osimis.io>
date Wed, 31 Aug 2022 12:06:15 +0200
parents 57d1b1680e71
children 5c1ce758f748
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
802
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
14 with the content of a filesystem, which can then be accessed, through
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
15 Orthanc, based on the :ref:`DICOM model of the real world <model-world>`.
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
16 The indexed DICOM resources are immediately available in a Web
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
17 interface and in a Web viewer, and can be queried/retrieved by DICOM
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
18 clients. The DICOM files are **not** copied, so this solution has a
57d1b1680e71 improvement for the indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 780
diff changeset
19 very small footprint in terms of storage requirements.
778
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
20
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 Compilation
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
23 -----------
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 .. highlight:: bash
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
26
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
27 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
28 <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
29 an alternative, the `repository containing the source code
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
30 <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
31 Mercurial.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
32
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
33 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
34 :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
35 for most UNIX-like distribution (including GNU/Linux)::
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
36
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
37 $ mkdir Build
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
38 $ cd Build
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
39 $ cmake .. -DSTATIC_BUILD=ON -DCMAKE_BUILD_TYPE=Release
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
40 $ make
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
41
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
42 The compilation will produce a shared library ``OrthancIndexer``
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
43 that contains the folder indexer plugin for Orthanc.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
44
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
45 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
46 <https://lsb.orthanc-server.com/plugin-indexer/>`__.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
47
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
48 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
49 available
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
50 <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
51
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
52 Furthermore, the :ref:`Docker images <docker>`
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
53 ``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
54 plugin.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
55
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 Usage
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
58 -----
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 .. highlight:: json
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
61
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
62 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
63 use this plugin::
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
64
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 "Plugins" : [
779
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
67 "/home/user/OrthancIndexer/Build/libOrthancIndexer.so"
778
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
68 ],
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
69 "Indexer" : {
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
70 "Enable" : true,
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
71 "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
72 "Interval" : 10 // Delay between two synchronizations
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
73 }
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 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
77 configuration file.
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
78
4707c55080c8 documentation of folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 772
diff changeset
79 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
80 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
81 ``--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
82 synchronization process.
779
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
83
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
84 Some remarks:
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
85
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
86 * 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
87 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
88
15f017e7555b remarks about folder indexer plugin
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 778
diff changeset
89 * 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
90 DICOM files using the :ref:`REST API <rest>` or the :ref:`DICOM
780
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 779
diff changeset
91 network protocol <dicom-protocol>`. Such files would be stored in
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 779
diff changeset
92 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
93