# HG changeset patch
# User Alain Mazy
# Date 1585773901 -7200
# Node ID 6979ebaae833d9a568a8de55b6604a19d6ff0499
# Parent ecdd754e16bae4a27c5247e492cc2ea9120ae271# Parent 12f88a12d14645aba9281e3d8698bf9bbfe77434
merge
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/_templates/layout.html
--- a/Sphinx/source/_templates/layout.html Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/_templates/layout.html Wed Apr 01 22:45:01 2020 +0200
@@ -17,7 +17,7 @@
- © Copyright 2015-2020, University Hospital of Liège and Osimis, Belgium, and the Orthanc community
+ © Copyright 2015-2020, University Hospital of Liège and Osimis S.A., Belgium, and the Orthanc community
The Orthanc Book is licensed under
Creative
Commons CC-BY-SA 4.0.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/conf.py
--- a/Sphinx/source/conf.py Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/conf.py Wed Apr 01 22:45:01 2020 +0200
@@ -295,3 +295,8 @@
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
+
+
+linkcheck_timeout=3
+linkcheck_retries=2
+linkcheck_workers=15
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/contributing.rst
--- a/Sphinx/source/contributing.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/contributing.rst Wed Apr 01 22:45:01 2020 +0200
@@ -13,7 +13,7 @@
on `Facebook `__ and
`Twitter `__).
- Answer our `survey
- `_.
+ `_.
- Improve and translate the `Wikipedia pages
`_ about Orthanc.
- Cite the `reference paper about Orthanc
@@ -22,8 +22,10 @@
- Answer questions posted to the `mailing list
`_.
- Improve the text of the `Orthanc Book and REST API documentation
- `_ (check out the
- instructions provided in the README).
+ `__ (check
+ out the instructions provided in the `README file
+ `__,
+ and send us a :ref:`simple patch `).
- Provide documentation and use cases (inside the dedicated `GitHub
repository `_, via
pull requests).
@@ -49,7 +51,7 @@
:ref:`dedicated FAQ entry `.
- Interface Orthanc with other software (e.g. 3D Slicer,
Matlab/Octave, Python, Horos, dicompyler...). Check the `already
- supported frameworks `_.
+ supported frameworks `_.
- Develop :ref:`C/C++ plugins extending the Orthanc core `. Here are some ideas
of possible plugins:
@@ -60,7 +62,7 @@
REST API or HL7 messages, instead of reading them from some
folder on the filesystem.
+ Have a look at the TODO file containing our `official roadmap
- `__.
+ `__.
- Always remember that he **recommended way of contributing to the
source code of Orthanc is by creating C/C++ plugins**. If the
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/developers/coding-style.rst
--- a/Sphinx/source/developers/coding-style.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/developers/coding-style.rst Wed Apr 01 22:45:01 2020 +0200
@@ -12,7 +12,7 @@
`__", with
some adaptations that are described below. A compliant Eclipse
formatter is `available in the Orthanc distribution
-`__.
+`__.
Licensing
---------
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/developers/creating-plugins.rst
--- a/Sphinx/source/developers/creating-plugins.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/developers/creating-plugins.rst Wed Apr 01 22:45:01 2020 +0200
@@ -13,23 +13,28 @@
`.
Orthanc plugins must use the `plugin SDK
-`__ and must be written in C or
+`__ and must be written in C or
C++. They must also fullfil the terms of the `GPLv3 license
`__ that is
-used by the core of Orthanc. Here are some resources about creating
-plugins:
+used by the core of Orthanc.
+
+For developers who are more familiar with Python, it is also possible
+to create plugins using this simpler language. Check out the
+:ref:`dedicated Python plugin `.
+
+Here are some resources about creating C/C++ plugins:
* Sample code for plugins can be found `in the official Orthanc
repository
- `__
+ `__
(in the ``Plugins/Samples`` folder).
* A tutorial showing how to implement a basic WADO server is
`available on CodeProject
- `__.
+ `__.
* Marco Barnig provides `tutorial lessons to create Orthanc plugins
- `__
+ `__
as part of his `RadioLogic project
`__.
@@ -37,7 +42,7 @@
core `, although this is of course not required.
Do not hesitate to `contact us
-`__ if you wish
+`__ if you wish
your plugin to be **indexed** in :ref:`the dedicated part of the
Orthanc Book `!
@@ -73,9 +78,9 @@
that is part of the Orthanc source distribution:
* `Plugins/Include/orthanc/OrthancCPlugin.h
- `__
+ `__
-`Online documentation `__ for this C
+`Online documentation `__ for this C
header is available, as generated by `Doxygen
`__.
@@ -87,8 +92,8 @@
``HAS_ORTHANC_EXCEPTION`` is set to ``0``:
* `Plugins/Samples/Common/OrthanPluginCppWrapper.h
- `__
+ `__
* `Plugins/Samples/Common/OrthanPluginCppWrapper.cpp
- `__
+ `__
* `Plugins/Samples/Common/OrthanPluginException.h
- `__
+ `__
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/developers/db-versioning.rst
--- a/Sphinx/source/developers/db-versioning.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/developers/db-versioning.rst Wed Apr 01 22:45:01 2020 +0200
@@ -4,10 +4,10 @@
===================
Orthanc stores the index of the DICOM instances as an embedded `SQLite
-database `_. The schema of this database has
-evolved across the versions of Orthanc, making the database
-incompatible between versions. This page clarifies which versions of
-Orthanc are compatible with other versions.
+database `_. The schema of this
+database has evolved across the versions of Orthanc, making the
+database incompatible between versions. This page clarifies which
+versions of Orthanc are compatible with other versions.
Recent versions (post-0.3.1)
----------------------------
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/developers/repositories.rst
--- a/Sphinx/source/developers/repositories.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/developers/repositories.rst Wed Apr 01 22:45:01 2020 +0200
@@ -70,12 +70,20 @@
Locally cloning one of those Mercurial repositories (say, the main
``orthanc`` repository) is as simple as typing::
- $ hg clone https://hg.orthanc-server.com/orthanc
+ $ hg clone https://hg.orthanc-server.com/orthanc/
You can then use separate tools such as `TortoiseHg
`__ to browse the code with
richer features than the Web interface.
+.. highlight:: text
+
+You might have to set up a host fingerprint in the Mercurial
+configuration. Add the following lines to your ``~/.hgrc`` file::
+
+ [hostfingerprints]
+ hg.orthanc-server.com = fc:45:10:18:69:4d:a6:2b:22:fa:c0:81:f4:ee:eb:8e:ba:ae:54:90
+
Note for Microsoft Windows
..........................
@@ -112,7 +120,7 @@
Orthanc repositories (through SSH). Core developers can clone a
repository with write access as follows::
- $ hg clone ssh://hg@hg.orthanc-server.com/public/orthanc
+ $ hg clone ssh://hg@hg.orthanc-server.com/public/orthanc/
.. _hg-contributing:
@@ -136,6 +144,9 @@
both the University Hospital of Liège and the Osimis company to act as
the official guardians of the whole Orthanc ecosystem.
+Also, make sure to read our :ref:`FAQ if submitting code
+`.
+
.. _hg-patch:
@@ -214,7 +225,7 @@
by typing the following commands on their side::
$ cd /tmp
- $ hg clone https://hg.orthanc-server.com/orthanc
+ $ hg clone https://hg.orthanc-server.com/orthanc/
$ cd /tmp/orthanc
$ hg unbundle /tmp/contribution.bundle
$ hg up -c default
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/developers/stone.rst
--- a/Sphinx/source/developers/stone.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/developers/stone.rst Wed Apr 01 22:45:01 2020 +0200
@@ -4,10 +4,10 @@
================
This section of the Orthanc Book will document `Stone of Orthanc
-`__. This is
+`__. This is
work-in-progress.
For the time being, documentation is provided through various sample
applications that can be found in the `source distribution
-`__.
+`__.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/dicom-guide.rst
--- a/Sphinx/source/dicom-guide.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/dicom-guide.rst Wed Apr 01 22:45:01 2020 +0200
@@ -7,18 +7,18 @@
This section of the Orthanc Book provides a **gentle, informal,
-high-level introduction to DICOM**. We will try and map
-DICOM's own concepts to a modern terminology that should hopefully be
-more easy to understand for software engineers diving for the first
-time into DICOM. Once the concepts of this page are understood,
-interested readers are invited to read a more formal textbook about
-DICOM, such as the so-called "`Practical introduction and survival
-guide `__", or to read
-the full `DICOM specification
+high-level introduction to DICOM**. We will try and map DICOM's own
+concepts to a modern terminology that should hopefully be more easy to
+understand for software engineers diving for the first time into
+DICOM. Once the concepts of this page are understood, interested
+readers are invited to read a more formal textbook about DICOM, such
+as the so-called "`Practical introduction and survival guide
+`__", or to read the
+full `DICOM specification
`__.
All the DICOM concepts that are defined in this introduction are
-illustrated with `Orthanc `__, a
+illustrated with `Orthanc `__, a
lightweight, yet powerful standalone DICOM server for healthcare and
medical research. As Orthanc is free and open-source software, it is a
good companion to learn DICOM.
@@ -128,7 +128,7 @@
`__).
`As written in its DICOM conformance statement
-`__,
+`__,
the Orthanc software can receive, store and send any kind of DICOM
images (i.e. all the standard transfer syntaxes are
supported). Furthermore, Orthanc can :ref:`convert most uncompressed
@@ -617,11 +617,12 @@
authentication and :ref:`SSL encryption `. The :ref:`Orthanc
Explorer ` interface can transparently use this
peer mechanism to send DICOM files over HTTP(S).
-2. Resort to the `DICOMweb standard `__,
- that is an extension to the DICOM standard specifying how to access
- the content of a remote DICOM server through HTTP(S). Because the
- peer mechanism is bound to Orthanc, DICOMweb offers a less
- expressive, but more generic access to remote servers.
- Importantly, a `DICOMweb plugin to Orthanc
- `__ is
+2. Resort to the `DICOMweb standard
+ `__, that is an extension
+ to the DICOM standard specifying how to access the content of a
+ remote DICOM server through HTTP(S). Because the peer mechanism is
+ bound to Orthanc, DICOMweb offers a less expressive, but more
+ generic access to remote servers. Importantly, a `DICOMweb plugin
+ to Orthanc
+ `__ is
freely available.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/compiling-old.rst
--- a/Sphinx/source/faq/compiling-old.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/compiling-old.rst Wed Apr 01 22:45:01 2020 +0200
@@ -7,7 +7,7 @@
This page summarizes the GNU/Linux build instructions that were used
**up to Orthanc 0.7.0 (inclusive)**. Instructions for Orthanc above
0.7.0 can be found directly `inside the source package
-`_.
+`_.
Static linking
--------------
@@ -61,7 +61,7 @@
$ cmake -DSTATIC_BUILD:BOOL=OFF -DSTANDALONE_BUILD:BOOL=ON -DUSE_DYNAMIC_JSONCPP:BOOL=ON -DDEBIAN_USE_GTEST_SOURCE_PACKAGE:BOOL=ON -DCMAKE_BUILD_TYPE=Debug -DDCMTK_LIBRARIES="wrap;oflog"
This is the configuration from the `official Debian package
-`_.
+`_.
Dynamic Linking on Fedora 18 and 19
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -71,15 +71,14 @@
$ cmake -DSTATIC_BUILD:BOOL=OFF -DSTANDALONE_BUILD:BOOL=ON -DUSE_DYNAMIC_GOOGLE_LOG:BOOL=ON -DUSE_DYNAMIC_JSONCPP:BOOL=ON -DCMAKE_BUILD_TYPE=Debug
This is the configuration from the `official Fedora package
-`_.
+`_.
Static Linking on CentOS 6.3 and 6.4
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
You have to build and install `CMake 2.8 from source
-`_, or you can use
-the cmake28 package from `EPEL
-`_. The
+`_, or you can use the cmake28 package
+from `EPEL `_. The
``STATIC_BUILD=ON`` option will then work::
$ /usr/local/bin/cmake -DSTATIC_BUILD:BOOL=ON -DCMAKE_BUILD_TYPE=Debug
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/compiling.rst
--- a/Sphinx/source/faq/compiling.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/compiling.rst Wed Apr 01 22:45:01 2020 +0200
@@ -7,7 +7,7 @@
---------------
* Orthanc >= 0.7.1: See the `build instructions
- `_
+ `_
inside the source package.
* Orthanc <= 0.7.0: See the :ref:`compiling-old`.
@@ -30,7 +30,7 @@
-----------------------
See the `build instructions for Windows
-`_ inside
+`_ inside
the source package.
Under OS X
@@ -39,7 +39,7 @@
The mainline of Orthanc can compile under Apple OS X, with the XCode
compiler, since June 24th, 2014. See the `build instructions for
Darwin
-`_
+`_
inside the source package.
Performance warning
@@ -64,7 +64,7 @@
the third-party dependencies directly inside the Orthanc
executable. This is the meaning of the ``-DSTATIC_BUILD=ON`` option,
as described in the `INSTALL
-`_ file of Orthanc.
+`_ file of Orthanc.
Such a static linking is very desirable under Windows, since the
Orthanc binaries do not depend on any external DLL, which results in a
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/crash.rst
--- a/Sphinx/source/faq/crash.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/crash.rst Wed Apr 01 22:45:01 2020 +0200
@@ -64,7 +64,7 @@
above ` is available as the ``crash.cpp`` file, here
is a sample debug session::
- $ wget http://lsb.orthanc-server.com/orthanc/debug/1.6.0/Orthanc
+ $ wget https://lsb.orthanc-server.com/orthanc/debug/1.6.0/Orthanc
$ chmod +x ./Orthanc
$ gcc -fPIC -shared ./crash.cpp -I ~/orthanc/Plugins/Include -o crash.so
$ ulimit -c unlimited
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/debugging.rst
--- a/Sphinx/source/faq/debugging.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/debugging.rst Wed Apr 01 22:45:01 2020 +0200
@@ -45,7 +45,7 @@
to debug Orthanc without compiling from sources. Here is a sample
debug session::
- $ wget http://lsb.orthanc-server.com/orthanc/debug/1.6.0/Orthanc
+ $ wget https://lsb.orthanc-server.com/orthanc/debug/1.6.0/Orthanc
$ chmod +x ./Orthanc
$ gdb ./Orthanc Configuration.json
(gdb) catch throw
@@ -67,13 +67,13 @@
plugins precompiled using the LSB are also available at the following
locations:
-* `Orthanc core `__
-* `DICOMweb plugin `__
-* `MySQL plugin `__
-* `Orthanc Web viewer `__
-* `PostgreSQL plugin `__
-* `Transfers accelerator plugin `__
-* `Whole-slide imaging `__
+* `Orthanc core `__
+* `DICOMweb plugin `__
+* `MySQL plugin `__
+* `Orthanc Web viewer `__
+* `PostgreSQL plugin `__
+* `Transfers accelerator plugin `__
+* `Whole-slide imaging `__
Docker
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/dicom.rst
--- a/Sphinx/source/faq/dicom.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/dicom.rst Wed Apr 01 22:45:01 2020 +0200
@@ -7,7 +7,7 @@
computer network are related to the configuration of these
modalities. As preliminary debugging actions, you should:
-* Make sure you use the `most recent version `_ of Orthanc.
+* Make sure you use the `most recent version `_ of Orthanc.
* Make sure the two computers can "ping" each other.
* Turn off all the firewalls on the two computers (especially on Microsoft Windows).
* Make sure the remote computer has `DICOM TLS encryption
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/features.rst
--- a/Sphinx/source/faq/features.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/features.rst Wed Apr 01 22:45:01 2020 +0200
@@ -234,10 +234,10 @@
registry** below:
* ``Metadata 4200`` is used by the plugin for :ref:`whole-slide imaging `.
-* ``Attachment 9997`` is used by the `Osimis WebViewer plugin `__ to store series information.
-* ``Attachment 9998`` is used by the `Osimis WebViewer plugin `__ to store instance information.
-* ``Attachment 9999`` is used by the `Osimis WebViewer plugin `__ to store annotations.
-* ``Attachments 10000-13999`` are used by the `Osimis WebViewer plugin `__ to store reduced quality images.
+* ``Attachment 9997`` is used by the :ref:`Osimis WebViewer plugin ` to store series information.
+* ``Attachment 9998`` is used by the :ref:`Osimis WebViewer plugin ` to store instance information.
+* ``Attachment 9999`` is used by the :ref:`Osimis WebViewer plugin ` to store annotations.
+* ``Attachments 10000-13999`` are used by the :ref:`Osimis WebViewer plugin ` to store reduced quality images.
Jobs
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/https.rst
--- a/Sphinx/source/faq/https.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/https.rst Wed Apr 01 22:45:01 2020 +0200
@@ -40,6 +40,6 @@
Some interesting references about this topic can be found `here
`__, `here
-`__, and
+`__, and
`here
-`__.
+`__.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/improving-interface.rst
--- a/Sphinx/source/faq/improving-interface.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/improving-interface.rst Wed Apr 01 22:45:01 2020 +0200
@@ -43,10 +43,10 @@
funding for this development). In the meantime, you can also contact a
company that provides **commercial support on the top of Orthanc** and
that might have developed an advanced user interface. Currently,
-`Osimis `_ is the only company ensuring such
+`Osimis `_ is the only company ensuring such
corporate services, but others might show up in the future. A `contact
-form `_ is available on
-the official Web page of Orthanc.
+form `_ is available
+on the official Web page of Orthanc.
**Update (2017-10-03):** A team of Master students from `ULiège
`__ is currently working on creating a
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/licensing.rst
--- a/Sphinx/source/faq/licensing.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/licensing.rst Wed Apr 01 22:45:01 2020 +0200
@@ -68,14 +68,14 @@
The following table provides a simple summary of the most common
situations, and indicates whether the use is accepted ("Yes"),
-prevented ("No"), or restricted ("Dual licensing"):
+forbidden ("No"), or restricted ("Dual licensing"):
+-----------------------------------------------------+--------------------------------------------------------------------------------------------+
| | Mode of distribution of the third-party system, or of the third-party plugin/script |
+-----------------------------------------------------+---------------+-------+--------+--------------+------------------------+-------------------+
| Usage of the Orthanc ecosystem | Permissive | GPLv3 | AGPLv3 | Internal use | Proprietary software | Proprietary cloud |
-| | (MIT, BSD, | | | | distributed to clients | platform |
-| | Apache...) | | | | | |
+| | (MIT, BSD, | | | | distributed to clients | platform or Web |
+| | Apache...) | | | | | portal |
+=====================================================+===============+=======+========+==============+========================+===================+
| Using Orthanc as such, even if some AGPL-licensed | N/A | N/A | N/A | Yes | Yes | Yes |
| plugin is installed | | | | | | |
@@ -92,6 +92,8 @@
| is hosted by an Orthanc server where some | | | | | | |
| AGPL-licensed plugin is installed | | | | | | |
+-----------------------------------------------------+---------------+-------+--------+--------------+------------------------+-------------------+
+| Creating a :ref:`Python script ` | No | No | Yes | Yes | Dual licensing | Dual licensing |
++-----------------------------------------------------+---------------+-------+--------+--------------+------------------------+-------------------+
| Using a modified version of the GPL-licensed | No | Yes | Yes | Yes | Dual licensing | Yes |
| code of Orthanc, or using a modified version of | | | | | | |
| some GPL-licensed plugin, or reusing their original | | | | | | |
@@ -113,9 +115,9 @@
its global architecture.
* If your use case falls in a "**Dual licensing**" cell, please get in
- touch with `Osimis `__, the commercial partner of
- the Orthanc project that is the only entity entitled to grant a
- `license exception
+ touch with `Osimis `__, the commercial
+ partner of the Orthanc project that is the only entity entitled to
+ grant a `license exception
`__ to your
company for the Orthanc core and its :ref:`associated official
plugins `.
@@ -146,7 +148,7 @@
sells **CE-approved** versions of a Web viewer plugin.
* You are kindly invited to cite the `reference paper about Orthanc
- `__
+ `__
in your scientific work.
* This is our own simplified, technical interpretation of the GPLv3+
@@ -232,23 +234,19 @@
the same e-mail address: ``orthanc-legal@osimis.io``.
+.. _submitting_code:
+
Submitting code
^^^^^^^^^^^^^^^
Once the CLA onboarding process has succeeded, use `Mercurial
`__ to fork the official
-repository of interest from BitBucket. Here are the location of those
-repositories:
-
-* The `Orthanc server `__.
+repository of interest from BitBucket. All the repositories are
+centralized on our `self-hosted Mercurial server
+`__.
-* The `official plugins `__ originating from the University Hospital of Liège.
-
-* The `official plugins `__ originating from Osimis.
-
-Once you have finished modifying the code in your forked repository,
-issue a `pull request
-`__.
+A :ref:`dedicated page ` explains how to submit
+:ref:`simple patches ` or :ref:`full branches `.
**Some words of warning:**
@@ -272,11 +270,11 @@
should be focused on one very specific issue or feature. Large
architectural changes are reserved for the core development team of
Orthanc, as we must follow our `long-term roadmap
- `__.
+ `__.
* Unit testing is mandatory. Integration tests should be submitted to
the `dedicated repository
- `__.
+ `__.
* In the case of a doubt wrt. a potential contribution, please discuss
it on the `Orthanc Users
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/log.rst
--- a/Sphinx/source/faq/log.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/log.rst Wed Apr 01 22:45:01 2020 +0200
@@ -44,7 +44,7 @@
Under Windows, if you used the official installer:
1. Download the `precompiled command-line version
- `__ of Orthanc.
+ `__ of Orthanc.
2. Stop the Orthanc service. The actual process depends on your
version of Windows.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/matlab.rst
--- a/Sphinx/source/faq/matlab.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/matlab.rst Wed Apr 01 22:45:01 2020 +0200
@@ -12,7 +12,7 @@
Both Matlab and Octave have access to HTTP servers thanks to their
built-in `urlread() function
-`__. Once must
+`__. Once must
simply install a Matlab/Octave library to decode JSON files. The
`JSONLab toolkit `__ works perfectly
to this end.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/orthanc-ids.rst
--- a/Sphinx/source/faq/orthanc-ids.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/orthanc-ids.rst Wed Apr 01 22:45:01 2020 +0200
@@ -41,7 +41,7 @@
The actual implementation of the hashing is carried on by the
`DicomInstanceHasher class
-`_.
+`_.
The "Inexistent Tag" error
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/orthanc-storage.rst
--- a/Sphinx/source/faq/orthanc-storage.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/orthanc-storage.rst Wed Apr 01 22:45:01 2020 +0200
@@ -59,9 +59,9 @@
database schema is kept as simple as possible, and can be found in the
following two files of the source code of Orthanc:
`PrepareDatabase.sql
-`__
+`__
and `InstallTrackAttachmentsSize.sql
-`__.
+`__.
Direct access
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/proprietary.rst
--- a/Sphinx/source/faq/proprietary.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/proprietary.rst Wed Apr 01 22:45:01 2020 +0200
@@ -49,7 +49,7 @@
Finally, if you need to complement the commercial services of your
official supplier, please note that you can also contact a company
that provides **commercial support on the top of Orthanc**. Currently,
-`Osimis `_ is the only company ensuring such
+`Osimis `_ is the only company ensuring such
corporate services, but others might show up in the future. A `contact
-form `_ is available on
-the official Web page of Orthanc.
+form `_ is available
+on the official Web page of Orthanc.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/rest-samples.rst
--- a/Sphinx/source/faq/rest-samples.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/rest-samples.rst Wed Apr 01 22:45:01 2020 +0200
@@ -10,11 +10,11 @@
dedicated section `.
* Many working examples written in Python are `available in the source
distribution
- `__.
+ `__.
* If you cannot find an example for some feature in this manual or in
the Python examples, please check the `publicly available
integration tests
- `__
+ `__
that span most of the REST API.
* Samples for the deprecated APIs are available below.
@@ -50,7 +50,7 @@
*Note:* This API has been superseded by the ``/modalities/.../query``
URI. Please check the ``test_rest_query_retrieve`` `integration test
-`__.
+`__.
Using Orthanc to Ease WADO Querying (Deprecated)
@@ -85,4 +85,4 @@
*Note:* This API has been superseded by the ``/modalities/.../query``
URI. Please check the ``test_rest_query_retrieve`` `integration test
-`__.
+`__.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/supported-images.rst
--- a/Sphinx/source/faq/supported-images.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/supported-images.rst Wed Apr 01 22:45:01 2020 +0200
@@ -5,7 +5,7 @@
Orthanc can **receive/store/send** any kind of standard DICOM files
(cf. the `DICOM conformance statement
-`__).
+`__).
Note that the ``UnknownSopClassAccepted`` :ref:`configuration option
` can be set to `true` if interfacing with modalities
that are producing non-standard SOP classes.
@@ -32,7 +32,7 @@
also be displayed from Orthanc Explorer.
Other type of encodings are available in the `Web viewer plugin
-`__, that
+`__, that
mostly supports whatever is supported by the well-known `GDCM toolkit
`__ by Mathieu Malaterre. Note
however that multiframe (notably cine) DICOM instances are currently
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/transcoding.rst
--- a/Sphinx/source/faq/transcoding.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/transcoding.rst Wed Apr 01 22:45:01 2020 +0200
@@ -13,7 +13,7 @@
Adding support for transcoding is one of the features that is pending
on `our roadmap
-`__, and for which
+`__, and for which
we are looking for industrial sponsors.
@@ -108,7 +108,7 @@
``OrthancPluginRegisterOnStoredInstanceCallback()`` function). A
sample Lua script that converts every incoming DICOM file to the
JPEG2k transfer syntax is `part of the Orthanc sources
-`__.
+`__.
Finally, as a fourth solution, it is possible to **combine two Orthanc
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/troubleshooting.rst
--- a/Sphinx/source/faq/troubleshooting.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/troubleshooting.rst Wed Apr 01 22:45:01 2020 +0200
@@ -5,7 +5,7 @@
As a general rule, when you encounter an issue, always make sure that
you use the `most recent version
-`__ of Orthanc.
+`__ of Orthanc.
Also make a search on the `Orthanc Users discussion group
`__, and make a
@@ -65,14 +65,14 @@
* **Orthanc slows down if storing many files**: The default database
engine that is built in Orthanc is `SQLite
- `__. As SQLite is above all a lightweight
- database engine, it is not designed to `store very large datasets
- `__. If you are sure that you
- have properly disabled run-time debug assertions (cf. above), but
- still experience degradation in performance over time, you should
- seriously consider switching to a more scalable database engine. To
- this end, you can notably check out the :ref:`official PostgreSQL
- plugin `.
+ `__. As SQLite is above all a
+ lightweight database engine, it is not designed to `store very large
+ datasets `__. If you are sure
+ that you have properly disabled run-time debug assertions
+ (cf. above), but still experience degradation in performance over
+ time, you should seriously consider switching to a more scalable
+ database engine. To this end, you can notably check out the
+ :ref:`official PostgreSQL plugin `.
As a rule of thumb, the performance of the default SQLite engine
built in Orthanc should run fine up to about 50,000 DICOM instances.
@@ -94,9 +94,9 @@
- As an alternative, you can disable IPv6 support. This is a
Windows-specific problem that is discussed `here
- `__
+ `__
and `here
- `__.
+ `__.
* If you experience **slow DICOM transfers under GNU/Linux**, please
read the `following bug report
@@ -106,7 +106,7 @@
advantage of this patch, you need to statically link Orthanc against
DCMTK by using the ``-DUSE_SYSTEM_DCMTK=OFF`` flag `when invoking
CMake
- `__.
+ `__.
Checking DICOM file integrity
-----------------------------
@@ -136,9 +136,9 @@
* If **Orthanc crashes when handling one large DICOM file**, this most
probably indicates a memory allocation error. Indeed, the `official
Windows binaries
- `__ are compiled
+ `__ are compiled
using a 32bit compiler. As a consequence, Orthanc only has access to
less than 4GB of RAM. If this is an important limitation for you,
precompiled command-line versions of Orthanc for Windows 64bit are
available courtesy of `Osimis
- `__.
+ `__.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/video.rst
--- a/Sphinx/source/faq/video.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/video.rst Wed Apr 01 22:45:01 2020 +0200
@@ -20,10 +20,10 @@
distinction is also discussed in :ref:`another FAQ entry
`.
-If you also want to **play** the videos, the `Osimis WebViewer plugin
-`__ is able to play
-H.264 (MPEG4) videos and 2D+t (cine) sequences but not MPEG2 videos that
-currently can not be played by Web browsers.
+If you also want to **play** the videos, the :ref:`Osimis Web Viewer
+plugin ` is able to play H.264 (MPEG4) videos and
+2D+t (cine) sequences but not MPEG2 videos that currently can not be
+played by Web browsers.
If your video is a 2D+t (cine) sequence, Orthanc can also display it inside
a Web browser by at least 2 different means:
@@ -32,7 +32,7 @@
Explorer ` is able to display the individual
frames and manually navigate between them through keyboard.
2. The official `Web viewer plugin
- `__ will
+ `__ will
allow you to use the mouse scroll wheel to display the successive
frames of the video.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/viewers.rst
--- a/Sphinx/source/faq/viewers.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/viewers.rst Wed Apr 01 22:45:01 2020 +0200
@@ -14,24 +14,24 @@
`__ about other compatible FOSS):
* `Open Health Imaging Foundation (OHIF) `__.
-* `Horos `__.
-* `Gingko CADx `__ (a
+* `Horos `__.
+* `Gingko CADx `__ (a
:ref:`configuration guide ` is available).
* `3D Slicer `__.
* `medInria `__.
* `Aeskulap `__.
-* `OsiriX `__ (note however that the
+* `OsiriX `__ (note however that the
openness of this particular software is `currently subject to
discussion
- `__).
+ `__).
Make also sure to check out the following extensions to Orthanc:
-* `Orthanc Web viewer plugin `__.
+* `Orthanc Web viewer plugin `__.
* `Osimis Web viewer plugin (Advanced version of the Orthanc Web viewer)
`__.
-* `ImageJ extension `__.
-* `Stone of Orthanc `__.
+* `ImageJ extension `__.
+* `Stone of Orthanc `__.
* `dwv-orthanc-plugin
`__ by Yves
Martelli, that embeds `dwv
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/why-orthanc.rst
--- a/Sphinx/source/faq/why-orthanc.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/why-orthanc.rst Wed Apr 01 22:45:01 2020 +0200
@@ -1,10 +1,9 @@
Why "Orthanc"?
==============
-The spelling "`Orthanc
-`__" originates from
-`J.R.R. Tolkien `__'s
-work.
+The spelling "`Orthanc `__"
+originates from `J.R.R. Tolkien
+`__'s work.
Orthanc is the black tower of Isengard that houses one of the
**palantíri**. A `palantír
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/faq/worklist.rst
--- a/Sphinx/source/faq/worklist.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/faq/worklist.rst Wed Apr 01 22:45:01 2020 +0200
@@ -24,10 +24,10 @@
distribution of Orthanc to serve the worklists stored in some folder
on the filesystem. This sample plugin mimics the behavior of the
``wlmscpfs`` command-line tool from the `DCMTK software
-`__.
+`__.
For more complex or integrated workflows where you must implement a
custom MWL plugin, please check the `documentation of the part of the
Orthanc plugin SDK
-`__
+`__
that is related to the management of worklists.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/index.rst
--- a/Sphinx/source/index.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/index.rst Wed Apr 01 22:45:01 2020 +0200
@@ -8,7 +8,7 @@
This site documents Orthanc. If you want to access more general
information about Orthanc, please go to the `official Web site
-`_.
+`_.
Contents
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins.rst
--- a/Sphinx/source/plugins.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins.rst Wed Apr 01 22:45:01 2020 +0200
@@ -70,7 +70,7 @@
* `AWS S3 storage plugin
`__: This plugin
- by `Radpoint `__ makes Orthanc store its
+ by `Radpoint `__ makes Orthanc store its
DICOM files into an `Amazon S3 bucket
`__.
* `DWV Orthanc Plugin
@@ -80,7 +80,7 @@
Web viewer of DICOM images.
* Another Web viewer is provided courtesy of `Emsy Chan
`__.
-* `VPI Reveal `__ provides a plugin to
+* `VPI Reveal `__ provides a plugin to
"write the DICOM records in a normal Windows-readable file hierarchy
(patient-study-series-DICOM file) at a location called
``VPIStorage`` that can then be imported into VPI Reveal." `Check
@@ -97,5 +97,5 @@
might contain plugins that are not tracked in this list.
*Remark:* Do not hesitate to `contact us
-`__ if you have
+`__ if you have
developed a plugin so that we can promote it in the list above!
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/authorization.rst
--- a/Sphinx/source/plugins/authorization.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/authorization.rst Wed Apr 01 22:45:01 2020 +0200
@@ -13,8 +13,8 @@
set to ``403`` (Forbidden).
The `source code of this plugin
-`__ is freely
-available under the terms of the AGPLv3 license.
+`__ is
+freely available under the terms of the AGPLv3 license.
Compilation
@@ -183,7 +183,7 @@
the cache entry will never expire.
**Note:** The source code of the plugin contains a `basic example
-`__
+`__
of such a Web service written in node.js.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/dicomweb.rst
--- a/Sphinx/source/plugins/dicomweb.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/dicomweb.rst Wed Apr 01 22:45:01 2020 +0200
@@ -15,11 +15,11 @@
into a **DICOMweb client**.
For general information, check out the `official homepage of the
-plugins `__.
+plugins `__.
The full standard is not implemented yet, the supported features are
`tracked in the repository
-`__.
+`__.
Compilation
@@ -39,16 +39,16 @@
The compilation will produce a shared library ``OrthancDicomWeb`` that
contains the DICOMweb plugin. Pre-compiled binaries for Microsoft
Windows `are also available
-`__,
+`__,
and are included in the `Windows installers
`__. A package
for `Apple's Mac OS X
-`__ is
-available courtesy of `Osimis `__.
+`__ is
+available courtesy of `Osimis `__.
*Remark:* Some older build instructions are also available in the
`source distribution
-`__.
+`__.
Installation
@@ -388,8 +388,8 @@
Here is a direct link to the DICOMweb client running on our demo
server:
-`http://demo.orthanc-server.com/dicom-web/app/client/index.html
-`__
+`https://demo.orthanc-server.com/dicom-web/app/client/index.html
+`__
@@ -399,7 +399,8 @@
Once your Orthanc server is properly configured (see above), you can
make REST calls to the API of the DICOMweb server. For demonstration
purpose, this section makes the assumption that the ``VIX`` dataset
-provided by `OsiriX `__ has
+provided by `OsiriX
+`__ has
been uploaded to Orthanc.
WADO-URI
@@ -536,7 +537,8 @@
`__.
An user-friendly reference of the features available in QIDO-RS and
-WADO-RS `can be found on this site `__.
+WADO-RS `can be found on this site
+`__.
Sending DICOM resources to a STOW-RS server
@@ -649,12 +651,12 @@
Samples of how to call DICOMweb services from standalone applications
are available for `Python
-`__
+`__
and for `JavaScript
-`__.
+`__.
Integration tests are `available separately
-`__,
+`__,
and provide samples for more advanced features of the REST API (such
as dynamically adding/updating/removing remote DICOMweb servers using
HTTP PUT and DELETE methods).
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/google-cloud-platform.rst
--- a/Sphinx/source/plugins/google-cloud-platform.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/google-cloud-platform.rst Wed Apr 01 22:45:01 2020 +0200
@@ -11,8 +11,8 @@
------------
Osimis freely provides the `source code
-`__ of a plugin to
-interface Orthanc with the Healthcare API of `Google Cloud Platform
+`__ of a plugin
+to interface Orthanc with the Healthcare API of `Google Cloud Platform
(GCP) `__ through
`DICOMweb `__.
@@ -58,7 +58,7 @@
The compilation produces a shared library
``OrthancGoogleCloudPlatform`` that contains the GCP
plugin. Pre-compiled binaries for Microsoft Windows `are available
-`__,
+`__,
and are included in the `Windows installers
`__.
@@ -125,14 +125,14 @@
^^^^^^^^^^^^^^^
As explained on the `Google documentation
-`__,
-*"a service account is a Google account that represents an
-application, as opposed to representing an end user"*. This is
-presumably the most common situation in the case of Orthanc.
+`__, *"a service account
+is a Google account that represents an application, as opposed to
+representing an end user"*. This is presumably the most common
+situation in the case of Orthanc.
You first have to `create a service account
-`__
-for your application. This will produce a JSON file (say,
+`__ for
+your application. This will produce a JSON file (say,
``dicom-osimis.json``) that you have to store securely on the server
that will run Orthanc.
@@ -173,7 +173,7 @@
User account is an alternative to service account, and can be used
*"when the application needs to access resources on behalf of an end
user"* (check out the `Google documentation
-`__).
+`__).
.. highlight:: json
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/mysql.rst
--- a/Sphinx/source/plugins/mysql.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/mysql.rst Wed Apr 01 22:45:01 2020 +0200
@@ -11,7 +11,7 @@
by a MySQL or a MariaDB database.
For general information, check out the `official homepage of the
-plugins `__.
+plugins `__.
**Warning:** According to `this thread on our discussion group
`__,
@@ -47,7 +47,7 @@
^^^^^^^^^^^^^^^^^
Pre-compiled binaries for Microsoft Windows `are also available
-`__.
+`__.
Dynamic linking on Ubuntu 16.04
@@ -161,7 +161,7 @@
By default, the plugins lock the database (using `MySQL/MariaDB
"GET_LOCK()"
-`__)
+`__)
to prevent other instances of Orthanc from using the same database. If
you want several instances of Orthanc to share the same database, set
the ``Lock`` option to ``false`` in the configuration file.
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/osimis-webviewer.rst
--- a/Sphinx/source/plugins/osimis-webviewer.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/osimis-webviewer.rst Wed Apr 01 22:45:01 2020 +0200
@@ -11,9 +11,9 @@
viewer plugin `. The Osimis plugin adds tools for
measuring, for viewing multiple series, and for split-pane.
-For general information, check out the `official homepage of the
-plugin
-`__.
+For general information and a demonstration, check out the `official
+homepage of the plugin
+`__.
Also `check out the source code
`__.
@@ -107,7 +107,7 @@
of the sets of codecs supported by the `DICOM standard
`__
and those supported by the `web browsers
- `__.
+ `__.
In short, this mostly comes down to just MPEG-4.
- **Where are the annotations stored ?**
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/postgresql.rst
--- a/Sphinx/source/plugins/postgresql.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/postgresql.rst Wed Apr 01 22:45:01 2020 +0200
@@ -11,7 +11,7 @@
by a PostgreSQL database.
For general information, check out the `official homepage of the
-plugins `__.
+plugins `__.
@@ -42,10 +42,10 @@
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Pre-compiled binaries for Microsoft Windows `are also available
-`__.
+`__.
A package for `Apple's Mac OS X
-`__
-is available courtesy of `Osimis `__.
+`__
+is available courtesy of `Osimis `__.
.. _postgresql-ubuntu1604:
@@ -88,7 +88,8 @@
In such a situation, please add your version of PostgreSQL to the
macro ``PostgreSQL_ADDITIONAL_VERSIONS`` that is defined at the end of
the `Resources/CMake/PostgreSQLConfiguration.cmake file
-`__ in the sources of the project.
+`__
+in the sources of the project.
Usage
@@ -100,7 +101,7 @@
version above 0.9.5. You then have to **create a database** dedicated
to Orthanc on some PostgreSQL server. Please refer to the `PostgreSQL
documentation
-`__.
+`__.
Once Orthanc is installed and the database is created, you must add a
section in the :ref:`configuration file ` that
@@ -180,7 +181,7 @@
Instead of specifying explicit authentication parameters, you can also
use the `PostgreSQL connection URIs syntax
-`__. For
+`__. For
instance::
{
@@ -199,7 +200,7 @@
**Remark:** The Debian Med project maintains `another useful set of
instructions
-`__.
+`__.
Advanced options
@@ -218,7 +219,7 @@
By default, the plugins lock the database (using `PostgreSQL advisory
locks
-`__)
+`__)
to prevent other instances of Orthanc from using the same PostgreSQL
database. If you want several instances of Orthanc to share the same
database, set the ``Lock`` option to ``false`` in the configuration
@@ -280,5 +281,5 @@
This is due to a timeout in the PostgreSQL server. Please make sure to
`enable keep-alive
-`__
+`__
in the configuration of your PostgreSQL server
diff -r ecdd754e16ba -r 6979ebaae833 Sphinx/source/plugins/python.rst
--- a/Sphinx/source/plugins/python.rst Wed Apr 01 22:44:38 2020 +0200
+++ b/Sphinx/source/plugins/python.rst Wed Apr 01 22:45:01 2020 +0200
@@ -6,17 +6,163 @@
.. contents::
-Work-in-progress.
+Overview
+--------
+
+This plugin can be used to write :ref:`Orthanc plugins
+` using the `Python programming language
+`__
+instead of the more complex C/C++ programming languages.
-The Python API is automatically generated from the `Orthanc plugin SDK
-in C
+Python plugins have access to more features and a more consistent SDK
+than :ref:`Lua scripts `. The Python API is automatically
+generated from the `Orthanc plugin SDK in C