changeset 138:3e89d1c4f721

export the code model as json
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 13 Sep 2023 17:51:00 +0200
parents cc0765aae484
children f79f5450ad7f
files CodeAnalysis/ParseOrthancSDK.py Sources/Autogenerated/CodeModel.json
diffstat 2 files changed, 3628 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/CodeAnalysis/ParseOrthancSDK.py	Tue Sep 05 13:32:32 2023 +0200
+++ b/CodeAnalysis/ParseOrthancSDK.py	Wed Sep 13 17:51:00 2023 +0200
@@ -22,6 +22,7 @@
 
 import argparse
 import clang.cindex
+import json
 import os
 import pprint
 import pystache
@@ -388,6 +389,7 @@
             enumerations[name] = {
                 'name' : name,
                 'path' : path,
+                'values' : values,
             }
 
     elif node.kind == clang.cindex.CursorKind.FUNCTION_DECL:
@@ -555,6 +557,15 @@
         }))
 
 
+with open(os.path.join(TARGET, 'CodeModel.json'), 'w') as f:
+    f.write(json.dumps({
+        'global_functions' : globalFunctions,
+        'classes' : sortedClasses,
+        'enumerations' : sortedEnumerations,
+        'global_functions' : globalFunctions,
+    }, ensure_ascii = True, indent = 4, sort_keys = True))
+
+
 print('')
 print('Total functions in the SDK: %d' % countAllFunctions)
 print('Total supported functions: %d' % countSupportedFunctions)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Sources/Autogenerated/CodeModel.json	Wed Sep 13 17:51:00 2023 +0200
@@ -0,0 +1,3617 @@
+{
+    "classes": [
+        {
+            "class_name": "OrthancPluginDicomInstance",
+            "custom_methods": [
+                {
+                    "class_name": "OrthancPluginDicomInstance",
+                    "implementation": "GetInstanceData",
+                    "method_name": "GetInstanceData",
+                    "sdk_function": "OrthancPluginGetInstanceData"
+                }
+            ],
+            "destructor": "OrthancPluginFreeDicomInstance",
+            "methods": [
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceRemoteAet",
+                    "return_static_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceRemoteAet",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceSize",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceSize",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceJson",
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceJson",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceSimplifiedJson",
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceSimplifiedJson",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginHasInstanceMetadata",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "HasInstanceMetadata",
+                    "tuple_format": "\"s\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetInstanceMetadata",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_static_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceMetadata",
+                    "tuple_format": "\"s\", &arg0"
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceOrigin",
+                    "return_enumeration": "OrthancPluginInstanceOrigin",
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceOrigin",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceTransferSyntaxUid",
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceTransferSyntaxUid",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginHasInstancePixelData",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "HasInstancePixelData",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetInstanceFramesCount",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceFramesCount",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetInstanceRawFrame",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_bytes": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceRawFrame",
+                    "tuple_format": "\"k\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetInstanceDecodedFrame",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_object": "OrthancPluginImage",
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceDecodedFrame",
+                    "tuple_format": "\"k\", &arg0"
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginSerializeDicomInstance",
+                    "return_bytes": true,
+                    "self": ", self->object_",
+                    "short_name": "SerializeDicomInstance",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFormat>(arg0)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFlags>(arg1)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetInstanceAdvancedJson",
+                    "call_args": ", static_cast<OrthancPluginDicomToJsonFormat>(arg0), static_cast<OrthancPluginDicomToJsonFlags>(arg1), arg2",
+                    "count_args": 3,
+                    "has_args": true,
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetInstanceAdvancedJson",
+                    "tuple_format": "\"llk\", &arg0, &arg1, &arg2"
+                }
+            ],
+            "short_name": "DicomInstance"
+        },
+        {
+            "class_name": "OrthancPluginDicomWebNode",
+            "custom_methods": [],
+            "methods": [],
+            "short_name": "DicomWebNode"
+        },
+        {
+            "class_name": "OrthancPluginFindAnswers",
+            "custom_methods": [],
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "name": "arg0",
+                            "orthanc_cast": "arg0.buf, arg0.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg0);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginFindAddAnswer",
+                    "call_args": ", arg0.buf, arg0.len",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "FindAddAnswer",
+                    "tuple_format": "\"s*\", &arg0"
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginFindMarkIncomplete",
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "FindMarkIncomplete",
+                    "tuple_format": "\"\", "
+                }
+            ],
+            "short_name": "FindAnswers"
+        },
+        {
+            "class_name": "OrthancPluginFindMatcher",
+            "custom_methods": [],
+            "destructor": "OrthancPluginFreeFindMatcher",
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "name": "arg0",
+                            "orthanc_cast": "arg0.buf, arg0.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg0);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginFindMatcherIsMatch",
+                    "call_args": ", arg0.buf, arg0.len",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "FindMatcherIsMatch",
+                    "tuple_format": "\"s*\", &arg0"
+                }
+            ],
+            "short_name": "FindMatcher"
+        },
+        {
+            "class_name": "OrthancPluginFindQuery",
+            "custom_methods": [
+                {
+                    "class_name": "OrthancPluginFindQuery",
+                    "implementation": "GetFindQueryTagGroup",
+                    "method_name": "GetFindQueryTagGroup",
+                    "sdk_function": "OrthancPluginGetFindQueryTag"
+                },
+                {
+                    "class_name": "OrthancPluginFindQuery",
+                    "implementation": "GetFindQueryTagElement",
+                    "method_name": "GetFindQueryTagElement",
+                    "sdk_function": "OrthancPluginGetFindQueryTag"
+                }
+            ],
+            "methods": [
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetFindQuerySize",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetFindQuerySize",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetFindQueryTagName",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetFindQueryTagName",
+                    "tuple_format": "\"k\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetFindQueryValue",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetFindQueryValue",
+                    "tuple_format": "\"k\", &arg0"
+                }
+            ],
+            "short_name": "FindQuery"
+        },
+        {
+            "class_name": "OrthancPluginImage",
+            "custom_methods": [
+                {
+                    "class_name": "OrthancPluginImage",
+                    "implementation": "GetImageBuffer",
+                    "method_name": "GetImageBuffer",
+                    "sdk_function": "OrthancPluginGetImageBuffer"
+                }
+            ],
+            "destructor": "OrthancPluginFreeImage",
+            "methods": [
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetImagePixelFormat",
+                    "return_enumeration": "OrthancPluginPixelFormat",
+                    "self": ", self->object_",
+                    "short_name": "GetImagePixelFormat",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetImageWidth",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetImageWidth",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetImageHeight",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetImageHeight",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetImagePitch",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetImagePitch",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginConvertPixelFormat",
+                    "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0)",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_object": "OrthancPluginImage",
+                    "self": ", self->object_",
+                    "short_name": "ConvertPixelFormat",
+                    "tuple_format": "\"l\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg3",
+                            "orthanc_cast": "arg3",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg4",
+                            "orthanc_cast": "arg4",
+                            "python_format": "b",
+                            "python_type": "unsigned char"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg5",
+                            "orthanc_cast": "arg5",
+                            "python_format": "b",
+                            "python_type": "unsigned char"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg6",
+                            "orthanc_cast": "arg6",
+                            "python_format": "b",
+                            "python_type": "unsigned char"
+                        }
+                    ],
+                    "c_function": "OrthancPluginDrawText",
+                    "call_args": ", arg0, arg1, arg2, arg3, arg4, arg5, arg6",
+                    "count_args": 7,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "DrawText",
+                    "tuple_format": "\"ksllbbb\", &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6"
+                }
+            ],
+            "short_name": "Image"
+        },
+        {
+            "class_name": "OrthancPluginJob",
+            "custom_methods": [],
+            "destructor": "OrthancPluginFreeJob",
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "i",
+                            "python_type": "int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSubmitJob",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_dynamic_string": true,
+                    "self": ", self->object_",
+                    "short_name": "SubmitJob",
+                    "tuple_format": "\"i\", &arg0"
+                }
+            ],
+            "short_name": "Job"
+        },
+        {
+            "class_name": "OrthancPluginPeers",
+            "custom_methods": [],
+            "destructor": "OrthancPluginFreePeers",
+            "methods": [
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginGetPeersCount",
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "GetPeersCount",
+                    "tuple_format": "\"\", "
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetPeerName",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_static_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetPeerName",
+                    "tuple_format": "\"k\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetPeerUrl",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_static_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetPeerUrl",
+                    "tuple_format": "\"k\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginGetPeerUserProperty",
+                    "call_args": ", arg0, arg1",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_static_string": true,
+                    "self": ", self->object_",
+                    "short_name": "GetPeerUserProperty",
+                    "tuple_format": "\"ks\", &arg0, &arg1"
+                }
+            ],
+            "short_name": "Peers"
+        },
+        {
+            "class_name": "OrthancPluginRestOutput",
+            "custom_methods": [],
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "name": "arg0",
+                            "orthanc_cast": "arg0.buf, arg0.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg0);"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginAnswerBuffer",
+                    "call_args": ", arg0.buf, arg0.len, arg2",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "AnswerBuffer",
+                    "tuple_format": "\"s*s\", &arg0, &arg2"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg3",
+                            "orthanc_cast": "arg3",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "name": "arg4",
+                            "orthanc_cast": "arg4.buf",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg4);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginCompressAndAnswerPngImage",
+                    "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0), arg1, arg2, arg3, arg4.buf",
+                    "count_args": 5,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "CompressAndAnswerPngImage",
+                    "tuple_format": "\"lkkks*\", &arg0, &arg1, &arg2, &arg3, &arg4"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginRedirect",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "Redirect",
+                    "tuple_format": "\"s\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "H",
+                            "python_type": "unsigned short"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSendHttpStatusCode",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SendHttpStatusCode",
+                    "tuple_format": "\"H\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSendUnauthorized",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SendUnauthorized",
+                    "tuple_format": "\"s\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSendMethodNotAllowed",
+                    "call_args": ", arg0",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SendMethodNotAllowed",
+                    "tuple_format": "\"s\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSetCookie",
+                    "call_args": ", arg0, arg1",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SetCookie",
+                    "tuple_format": "\"ss\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSetHttpHeader",
+                    "call_args": ", arg0, arg1",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SetHttpHeader",
+                    "tuple_format": "\"ss\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        }
+                    ],
+                    "c_function": "OrthancPluginStartMultipartAnswer",
+                    "call_args": ", arg0, arg1",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "StartMultipartAnswer",
+                    "tuple_format": "\"ss\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "name": "arg0",
+                            "orthanc_cast": "arg0.buf, arg0.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg0);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSendMultipartItem",
+                    "call_args": ", arg0.buf, arg0.len",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "SendMultipartItem",
+                    "tuple_format": "\"s*\", &arg0"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "H",
+                            "python_type": "unsigned short"
+                        },
+                        {
+                            "name": "arg1",
+                            "orthanc_cast": "arg1.buf, arg1.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg1);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSendHttpStatus",
+                    "call_args": ", arg0, arg1.buf, arg1.len",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SendHttpStatus",
+                    "tuple_format": "\"Hs*\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg3",
+                            "orthanc_cast": "arg3",
+                            "python_format": "k",
+                            "python_type": "unsigned long"
+                        },
+                        {
+                            "name": "arg4",
+                            "orthanc_cast": "arg4.buf",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg4);"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg5",
+                            "orthanc_cast": "arg5",
+                            "python_format": "b",
+                            "python_type": "unsigned char"
+                        }
+                    ],
+                    "c_function": "OrthancPluginCompressAndAnswerJpegImage",
+                    "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0), arg1, arg2, arg3, arg4.buf, arg5",
+                    "count_args": 6,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "CompressAndAnswerJpegImage",
+                    "tuple_format": "\"lkkks*b\", &arg0, &arg1, &arg2, &arg3, &arg4, &arg5"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "arg1",
+                            "python_format": "b",
+                            "python_type": "unsigned char"
+                        }
+                    ],
+                    "c_function": "OrthancPluginSetHttpErrorDetails",
+                    "call_args": ", arg0, arg1",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_void": true,
+                    "self": ", self->object_",
+                    "short_name": "SetHttpErrorDetails",
+                    "tuple_format": "\"sb\", &arg0, &arg1"
+                }
+            ],
+            "short_name": "RestOutput"
+        },
+        {
+            "class_name": "OrthancPluginServerChunkedRequestReader",
+            "custom_methods": [],
+            "methods": [],
+            "short_name": "ServerChunkedRequestReader"
+        },
+        {
+            "class_name": "OrthancPluginStorageArea",
+            "custom_methods": [],
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "name": "arg1",
+                            "orthanc_cast": "arg1.buf",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg1);"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg2",
+                            "orthanc_cast": "arg2",
+                            "python_format": "K",
+                            "python_type": "unsigned long long"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg3",
+                            "orthanc_cast": "static_cast<OrthancPluginContentType>(arg3)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginStorageAreaCreate",
+                    "call_args": ", arg0, arg1.buf, arg2, static_cast<OrthancPluginContentType>(arg3)",
+                    "count_args": 4,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "StorageAreaCreate",
+                    "tuple_format": "\"ss*Kl\", &arg0, &arg1, &arg2, &arg3"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "static_cast<OrthancPluginContentType>(arg1)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginStorageAreaRead",
+                    "call_args": ", arg0, static_cast<OrthancPluginContentType>(arg1)",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_bytes": true,
+                    "self": ", self->object_",
+                    "short_name": "StorageAreaRead",
+                    "tuple_format": "\"sl\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = NULL",
+                            "name": "arg0",
+                            "orthanc_cast": "arg0",
+                            "python_format": "s",
+                            "python_type": "const char*"
+                        },
+                        {
+                            "initialization": " = 0",
+                            "name": "arg1",
+                            "orthanc_cast": "static_cast<OrthancPluginContentType>(arg1)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginStorageAreaRemove",
+                    "call_args": ", arg0, static_cast<OrthancPluginContentType>(arg1)",
+                    "count_args": 2,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "StorageAreaRemove",
+                    "tuple_format": "\"sl\", &arg0, &arg1"
+                },
+                {
+                    "args": [
+                        {
+                            "initialization": " = 0",
+                            "name": "arg0",
+                            "orthanc_cast": "static_cast<OrthancPluginResourceType>(arg0)",
+                            "python_format": "l",
+                            "python_type": "long int"
+                        }
+                    ],
+                    "c_function": "OrthancPluginReconstructMainDicomTags",
+                    "call_args": ", static_cast<OrthancPluginResourceType>(arg0)",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "ReconstructMainDicomTags",
+                    "tuple_format": "\"l\", &arg0"
+                }
+            ],
+            "short_name": "StorageArea"
+        },
+        {
+            "class_name": "OrthancPluginWorklistAnswers",
+            "custom_methods": [
+                {
+                    "class_name": "OrthancPluginWorklistAnswers",
+                    "implementation": "WorklistAddAnswer",
+                    "method_name": "WorklistAddAnswer",
+                    "sdk_function": "OrthancPluginWorklistAddAnswer"
+                }
+            ],
+            "methods": [
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginWorklistMarkIncomplete",
+                    "return_error": true,
+                    "self": ", self->object_",
+                    "short_name": "WorklistMarkIncomplete",
+                    "tuple_format": "\"\", "
+                }
+            ],
+            "short_name": "WorklistAnswers"
+        },
+        {
+            "class_name": "OrthancPluginWorklistQuery",
+            "custom_methods": [],
+            "methods": [
+                {
+                    "args": [
+                        {
+                            "name": "arg0",
+                            "orthanc_cast": "arg0.buf, arg0.len",
+                            "python_format": "s*",
+                            "python_type": "Py_buffer",
+                            "release": "PyBuffer_Release(&arg0);"
+                        }
+                    ],
+                    "c_function": "OrthancPluginWorklistIsMatch",
+                    "call_args": ", arg0.buf, arg0.len",
+                    "count_args": 1,
+                    "has_args": true,
+                    "return_long": true,
+                    "self": ", self->object_",
+                    "short_name": "WorklistIsMatch",
+                    "tuple_format": "\"s*\", &arg0"
+                },
+                {
+                    "args": [],
+                    "c_function": "OrthancPluginWorklistGetDicomQuery",
+                    "return_bytes": true,
+                    "self": ", self->object_",
+                    "short_name": "WorklistGetDicomQuery",
+                    "tuple_format": "\"\", "
+                }
+            ],
+            "short_name": "WorklistQuery"
+        }
+    ],
+    "enumerations": [
+        {
+            "name": "OrthancPluginChangeType",
+            "path": "sdk_OrthancPluginChangeType.impl.h",
+            "values": [
+                {
+                    "key": "COMPLETED_SERIES",
+                    "value": 0
+                },
+                {
+                    "key": "DELETED",
+                    "value": 1
+                },
+                {
+                    "key": "NEW_CHILD_INSTANCE",
+                    "value": 2
+                },
+                {
+                    "key": "NEW_INSTANCE",
+                    "value": 3
+                },
+                {
+                    "key": "NEW_PATIENT",
+                    "value": 4
+                },
+                {
+                    "key": "NEW_SERIES",
+                    "value": 5
+                },
+                {
+                    "key": "NEW_STUDY",
+                    "value": 6
+                },
+                {
+                    "key": "STABLE_PATIENT",
+                    "value": 7
+                },
+                {
+                    "key": "STABLE_SERIES",
+                    "value": 8
+                },
+                {
+                    "key": "STABLE_STUDY",
+                    "value": 9
+                },
+                {
+                    "key": "ORTHANC_STARTED",
+                    "value": 10
+                },
+                {
+                    "key": "ORTHANC_STOPPED",
+                    "value": 11
+                },
+                {
+                    "key": "UPDATED_ATTACHMENT",
+                    "value": 12
+                },
+                {
+                    "key": "UPDATED_METADATA",
+                    "value": 13
+                },
+                {
+                    "key": "UPDATED_PEERS",
+                    "value": 14
+                },
+                {
+                    "key": "UPDATED_MODALITIES",
+                    "value": 15
+                },
+                {
+                    "key": "JOB_SUBMITTED",
+                    "value": 16
+                },
+                {
+                    "key": "JOB_SUCCESS",
+                    "value": 17
+                },
+                {
+                    "key": "JOB_FAILURE",
+                    "value": 18
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginCompressionType",
+            "path": "sdk_OrthancPluginCompressionType.impl.h",
+            "values": [
+                {
+                    "key": "ZLIB",
+                    "value": 0
+                },
+                {
+                    "key": "ZLIB_WITH_SIZE",
+                    "value": 1
+                },
+                {
+                    "key": "GZIP",
+                    "value": 2
+                },
+                {
+                    "key": "GZIP_WITH_SIZE",
+                    "value": 3
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginConstraintType",
+            "path": "sdk_OrthancPluginConstraintType.impl.h",
+            "values": [
+                {
+                    "key": "EQUAL",
+                    "value": 1
+                },
+                {
+                    "key": "SMALLER_OR_EQUAL",
+                    "value": 2
+                },
+                {
+                    "key": "GREATER_OR_EQUAL",
+                    "value": 3
+                },
+                {
+                    "key": "WILDCARD",
+                    "value": 4
+                },
+                {
+                    "key": "LIST",
+                    "value": 5
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginContentType",
+            "path": "sdk_OrthancPluginContentType.impl.h",
+            "values": [
+                {
+                    "key": "UNKNOWN",
+                    "value": 0
+                },
+                {
+                    "key": "DICOM",
+                    "value": 1
+                },
+                {
+                    "key": "DICOM_AS_JSON",
+                    "value": 2
+                },
+                {
+                    "key": "DICOM_UNTIL_PIXEL_DATA",
+                    "value": 3
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginCreateDicomFlags",
+            "path": "sdk_OrthancPluginCreateDicomFlags.impl.h",
+            "values": [
+                {
+                    "key": "NONE",
+                    "value": 0
+                },
+                {
+                    "key": "DECODE_DATA_URI_SCHEME",
+                    "value": 1
+                },
+                {
+                    "key": "GENERATE_IDENTIFIERS",
+                    "value": 2
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginDicomToJsonFlags",
+            "path": "sdk_OrthancPluginDicomToJsonFlags.impl.h",
+            "values": [
+                {
+                    "key": "NONE",
+                    "value": 0
+                },
+                {
+                    "key": "INCLUDE_BINARY",
+                    "value": 1
+                },
+                {
+                    "key": "INCLUDE_PRIVATE_TAGS",
+                    "value": 2
+                },
+                {
+                    "key": "INCLUDE_UNKNOWN_TAGS",
+                    "value": 4
+                },
+                {
+                    "key": "INCLUDE_PIXEL_DATA",
+                    "value": 8
+                },
+                {
+                    "key": "CONVERT_BINARY_TO_ASCII",
+                    "value": 16
+                },
+                {
+                    "key": "CONVERT_BINARY_TO_NULL",
+                    "value": 32
+                },
+                {
+                    "key": "STOP_AFTER_PIXEL_DATA",
+                    "value": 64
+                },
+                {
+                    "key": "SKIP_GROUP_LENGTHS",
+                    "value": 128
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginDicomToJsonFormat",
+            "path": "sdk_OrthancPluginDicomToJsonFormat.impl.h",
+            "values": [
+                {
+                    "key": "FULL",
+                    "value": 1
+                },
+                {
+                    "key": "SHORT",
+                    "value": 2
+                },
+                {
+                    "key": "HUMAN",
+                    "value": 3
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginDicomWebBinaryMode",
+            "path": "sdk_OrthancPluginDicomWebBinaryMode.impl.h",
+            "values": [
+                {
+                    "key": "IGNORE",
+                    "value": 0
+                },
+                {
+                    "key": "INLINE_BINARY",
+                    "value": 1
+                },
+                {
+                    "key": "BULK_DATA_URI",
+                    "value": 2
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginErrorCode",
+            "path": "sdk_OrthancPluginErrorCode.impl.h",
+            "values": [
+                {
+                    "key": "INTERNAL_ERROR",
+                    "value": -1
+                },
+                {
+                    "key": "SUCCESS",
+                    "value": 0
+                },
+                {
+                    "key": "PLUGIN",
+                    "value": 1
+                },
+                {
+                    "key": "NOT_IMPLEMENTED",
+                    "value": 2
+                },
+                {
+                    "key": "PARAMETER_OUT_OF_RANGE",
+                    "value": 3
+                },
+                {
+                    "key": "NOT_ENOUGH_MEMORY",
+                    "value": 4
+                },
+                {
+                    "key": "BAD_PARAMETER_TYPE",
+                    "value": 5
+                },
+                {
+                    "key": "BAD_SEQUENCE_OF_CALLS",
+                    "value": 6
+                },
+                {
+                    "key": "INEXISTENT_ITEM",
+                    "value": 7
+                },
+                {
+                    "key": "BAD_REQUEST",
+                    "value": 8
+                },
+                {
+                    "key": "NETWORK_PROTOCOL",
+                    "value": 9
+                },
+                {
+                    "key": "SYSTEM_COMMAND",
+                    "value": 10
+                },
+                {
+                    "key": "DATABASE",
+                    "value": 11
+                },
+                {
+                    "key": "URI_SYNTAX",
+                    "value": 12
+                },
+                {
+                    "key": "INEXISTENT_FILE",
+                    "value": 13
+                },
+                {
+                    "key": "CANNOT_WRITE_FILE",
+                    "value": 14
+                },
+                {
+                    "key": "BAD_FILE_FORMAT",
+                    "value": 15
+                },
+                {
+                    "key": "TIMEOUT",
+                    "value": 16
+                },
+                {
+                    "key": "UNKNOWN_RESOURCE",
+                    "value": 17
+                },
+                {
+                    "key": "INCOMPATIBLE_DATABASE_VERSION",
+                    "value": 18
+                },
+                {
+                    "key": "FULL_STORAGE",
+                    "value": 19
+                },
+                {
+                    "key": "CORRUPTED_FILE",
+                    "value": 20
+                },
+                {
+                    "key": "INEXISTENT_TAG",
+                    "value": 21
+                },
+                {
+                    "key": "READ_ONLY",
+                    "value": 22
+                },
+                {
+                    "key": "INCOMPATIBLE_IMAGE_FORMAT",
+                    "value": 23
+                },
+                {
+                    "key": "INCOMPATIBLE_IMAGE_SIZE",
+                    "value": 24
+                },
+                {
+                    "key": "SHARED_LIBRARY",
+                    "value": 25
+                },
+                {
+                    "key": "UNKNOWN_PLUGIN_SERVICE",
+                    "value": 26
+                },
+                {
+                    "key": "UNKNOWN_DICOM_TAG",
+                    "value": 27
+                },
+                {
+                    "key": "BAD_JSON",
+                    "value": 28
+                },
+                {
+                    "key": "UNAUTHORIZED",
+                    "value": 29
+                },
+                {
+                    "key": "BAD_FONT",
+                    "value": 30
+                },
+                {
+                    "key": "DATABASE_PLUGIN",
+                    "value": 31
+                },
+                {
+                    "key": "STORAGE_AREA_PLUGIN",
+                    "value": 32
+                },
+                {
+                    "key": "EMPTY_REQUEST",
+                    "value": 33
+                },
+                {
+                    "key": "NOT_ACCEPTABLE",
+                    "value": 34
+                },
+                {
+                    "key": "NULL_POINTER",
+                    "value": 35
+                },
+                {
+                    "key": "DATABASE_UNAVAILABLE",
+                    "value": 36
+                },
+                {
+                    "key": "CANCELED_JOB",
+                    "value": 37
+                },
+                {
+                    "key": "BAD_GEOMETRY",
+                    "value": 38
+                },
+                {
+                    "key": "SSL_INITIALIZATION",
+                    "value": 39
+                },
+                {
+                    "key": "DISCONTINUED_ABI",
+                    "value": 40
+                },
+                {
+                    "key": "BAD_RANGE",
+                    "value": 41
+                },
+                {
+                    "key": "DATABASE_CANNOT_SERIALIZE",
+                    "value": 42
+                },
+                {
+                    "key": "REVISION",
+                    "value": 43
+                },
+                {
+                    "key": "SQLITE_NOT_OPENED",
+                    "value": 1000
+                },
+                {
+                    "key": "SQLITE_ALREADY_OPENED",
+                    "value": 1001
+                },
+                {
+                    "key": "SQLITE_CANNOT_OPEN",
+                    "value": 1002
+                },
+                {
+                    "key": "SQLITE_STATEMENT_ALREADY_USED",
+                    "value": 1003
+                },
+                {
+                    "key": "SQLITE_EXECUTE",
+                    "value": 1004
+                },
+                {
+                    "key": "SQLITE_ROLLBACK_WITHOUT_TRANSACTION",
+                    "value": 1005
+                },
+                {
+                    "key": "SQLITE_COMMIT_WITHOUT_TRANSACTION",
+                    "value": 1006
+                },
+                {
+                    "key": "SQLITE_REGISTER_FUNCTION",
+                    "value": 1007
+                },
+                {
+                    "key": "SQLITE_FLUSH",
+                    "value": 1008
+                },
+                {
+                    "key": "SQLITE_CANNOT_RUN",
+                    "value": 1009
+                },
+                {
+                    "key": "SQLITE_CANNOT_STEP",
+                    "value": 1010
+                },
+                {
+                    "key": "SQLITE_BIND_OUT_OF_RANGE",
+                    "value": 1011
+                },
+                {
+                    "key": "SQLITE_PREPARE_STATEMENT",
+                    "value": 1012
+                },
+                {
+                    "key": "SQLITE_TRANSACTION_ALREADY_STARTED",
+                    "value": 1013
+                },
+                {
+                    "key": "SQLITE_TRANSACTION_COMMIT",
+                    "value": 1014
+                },
+                {
+                    "key": "SQLITE_TRANSACTION_BEGIN",
+                    "value": 1015
+                },
+                {
+                    "key": "DIRECTORY_OVER_FILE",
+                    "value": 2000
+                },
+                {
+                    "key": "FILE_STORAGE_CANNOT_WRITE",
+                    "value": 2001
+                },
+                {
+                    "key": "DIRECTORY_EXPECTED",
+                    "value": 2002
+                },
+                {
+                    "key": "HTTP_PORT_IN_USE",
+                    "value": 2003
+                },
+                {
+                    "key": "DICOM_PORT_IN_USE",
+                    "value": 2004
+                },
+                {
+                    "key": "BAD_HTTP_STATUS_IN_REST",
+                    "value": 2005
+                },
+                {
+                    "key": "REGULAR_FILE_EXPECTED",
+                    "value": 2006
+                },
+                {
+                    "key": "PATH_TO_EXECUTABLE",
+                    "value": 2007
+                },
+                {
+                    "key": "MAKE_DIRECTORY",
+                    "value": 2008
+                },
+                {
+                    "key": "BAD_APPLICATION_ENTITY_TITLE",
+                    "value": 2009
+                },
+                {
+                    "key": "NO_CFIND_HANDLER",
+                    "value": 2010
+                },
+                {
+                    "key": "NO_CMOVE_HANDLER",
+                    "value": 2011
+                },
+                {
+                    "key": "NO_CSTORE_HANDLER",
+                    "value": 2012
+                },
+                {
+                    "key": "NO_APPLICATION_ENTITY_FILTER",
+                    "value": 2013
+                },
+                {
+                    "key": "NO_SOP_CLASS_OR_INSTANCE",
+                    "value": 2014
+                },
+                {
+                    "key": "NO_PRESENTATION_CONTEXT",
+                    "value": 2015
+                },
+                {
+                    "key": "DICOM_FIND_UNAVAILABLE",
+                    "value": 2016
+                },
+                {
+                    "key": "DICOM_MOVE_UNAVAILABLE",
+                    "value": 2017
+                },
+                {
+                    "key": "CANNOT_STORE_INSTANCE",
+                    "value": 2018
+                },
+                {
+                    "key": "CREATE_DICOM_NOT_STRING",
+                    "value": 2019
+                },
+                {
+                    "key": "CREATE_DICOM_OVERRIDE_TAG",
+                    "value": 2020
+                },
+                {
+                    "key": "CREATE_DICOM_USE_CONTENT",
+                    "value": 2021
+                },
+                {
+                    "key": "CREATE_DICOM_NO_PAYLOAD",
+                    "value": 2022
+                },
+                {
+                    "key": "CREATE_DICOM_USE_DATA_URI_SCHEME",
+                    "value": 2023
+                },
+                {
+                    "key": "CREATE_DICOM_BAD_PARENT",
+                    "value": 2024
+                },
+                {
+                    "key": "CREATE_DICOM_PARENT_IS_INSTANCE",
+                    "value": 2025
+                },
+                {
+                    "key": "CREATE_DICOM_PARENT_ENCODING",
+                    "value": 2026
+                },
+                {
+                    "key": "UNKNOWN_MODALITY",
+                    "value": 2027
+                },
+                {
+                    "key": "BAD_JOB_ORDERING",
+                    "value": 2028
+                },
+                {
+                    "key": "JSON_TO_LUA_TABLE",
+                    "value": 2029
+                },
+                {
+                    "key": "CANNOT_CREATE_LUA",
+                    "value": 2030
+                },
+                {
+                    "key": "CANNOT_EXECUTE_LUA",
+                    "value": 2031
+                },
+                {
+                    "key": "LUA_ALREADY_EXECUTED",
+                    "value": 2032
+                },
+                {
+                    "key": "LUA_BAD_OUTPUT",
+                    "value": 2033
+                },
+                {
+                    "key": "NOT_LUA_PREDICATE",
+                    "value": 2034
+                },
+                {
+                    "key": "LUA_RETURNS_NO_STRING",
+                    "value": 2035
+                },
+                {
+                    "key": "STORAGE_AREA_ALREADY_REGISTERED",
+                    "value": 2036
+                },
+                {
+                    "key": "DATABASE_BACKEND_ALREADY_REGISTERED",
+                    "value": 2037
+                },
+                {
+                    "key": "DATABASE_NOT_INITIALIZED",
+                    "value": 2038
+                },
+                {
+                    "key": "SSL_DISABLED",
+                    "value": 2039
+                },
+                {
+                    "key": "CANNOT_ORDER_SLICES",
+                    "value": 2040
+                },
+                {
+                    "key": "NO_WORKLIST_HANDLER",
+                    "value": 2041
+                },
+                {
+                    "key": "ALREADY_EXISTING_TAG",
+                    "value": 2042
+                },
+                {
+                    "key": "NO_STORAGE_COMMITMENT_HANDLER",
+                    "value": 2043
+                },
+                {
+                    "key": "NO_CGET_HANDLER",
+                    "value": 2044
+                },
+                {
+                    "key": "UNSUPPORTED_MEDIA_TYPE",
+                    "value": 3000
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginHttpMethod",
+            "path": "sdk_OrthancPluginHttpMethod.impl.h",
+            "values": [
+                {
+                    "key": "GET",
+                    "value": 1
+                },
+                {
+                    "key": "POST",
+                    "value": 2
+                },
+                {
+                    "key": "PUT",
+                    "value": 3
+                },
+                {
+                    "key": "DELETE",
+                    "value": 4
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginIdentifierConstraint",
+            "path": "sdk_OrthancPluginIdentifierConstraint.impl.h",
+            "values": [
+                {
+                    "key": "EQUAL",
+                    "value": 1
+                },
+                {
+                    "key": "SMALLER_OR_EQUAL",
+                    "value": 2
+                },
+                {
+                    "key": "GREATER_OR_EQUAL",
+                    "value": 3
+                },
+                {
+                    "key": "WILDCARD",
+                    "value": 4
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginImageFormat",
+            "path": "sdk_OrthancPluginImageFormat.impl.h",
+            "values": [
+                {
+                    "key": "PNG",
+                    "value": 0
+                },
+                {
+                    "key": "JPEG",
+                    "value": 1
+                },
+                {
+                    "key": "DICOM",
+                    "value": 2
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginInstanceOrigin",
+            "path": "sdk_OrthancPluginInstanceOrigin.impl.h",
+            "values": [
+                {
+                    "key": "UNKNOWN",
+                    "value": 1
+                },
+                {
+                    "key": "DICOM_PROTOCOL",
+                    "value": 2
+                },
+                {
+                    "key": "REST_API",
+                    "value": 3
+                },
+                {
+                    "key": "PLUGIN",
+                    "value": 4
+                },
+                {
+                    "key": "LUA",
+                    "value": 5
+                },
+                {
+                    "key": "WEB_DAV",
+                    "value": 6
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginJobStepStatus",
+            "path": "sdk_OrthancPluginJobStepStatus.impl.h",
+            "values": [
+                {
+                    "key": "SUCCESS",
+                    "value": 1
+                },
+                {
+                    "key": "FAILURE",
+                    "value": 2
+                },
+                {
+                    "key": "CONTINUE",
+                    "value": 3
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginJobStopReason",
+            "path": "sdk_OrthancPluginJobStopReason.impl.h",
+            "values": [
+                {
+                    "key": "SUCCESS",
+                    "value": 1
+                },
+                {
+                    "key": "PAUSED",
+                    "value": 2
+                },
+                {
+                    "key": "FAILURE",
+                    "value": 3
+                },
+                {
+                    "key": "CANCELED",
+                    "value": 4
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginMetricsType",
+            "path": "sdk_OrthancPluginMetricsType.impl.h",
+            "values": [
+                {
+                    "key": "DEFAULT",
+                    "value": 0
+                },
+                {
+                    "key": "TIMER",
+                    "value": 1
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginPixelFormat",
+            "path": "sdk_OrthancPluginPixelFormat.impl.h",
+            "values": [
+                {
+                    "key": "GRAYSCALE8",
+                    "value": 1
+                },
+                {
+                    "key": "GRAYSCALE16",
+                    "value": 2
+                },
+                {
+                    "key": "SIGNED_GRAYSCALE16",
+                    "value": 3
+                },
+                {
+                    "key": "RGB24",
+                    "value": 4
+                },
+                {
+                    "key": "RGBA32",
+                    "value": 5
+                },
+                {
+                    "key": "UNKNOWN",
+                    "value": 6
+                },
+                {
+                    "key": "RGB48",
+                    "value": 7
+                },
+                {
+                    "key": "GRAYSCALE32",
+                    "value": 8
+                },
+                {
+                    "key": "FLOAT32",
+                    "value": 9
+                },
+                {
+                    "key": "BGRA32",
+                    "value": 10
+                },
+                {
+                    "key": "GRAYSCALE64",
+                    "value": 11
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginReceivedInstanceAction",
+            "path": "sdk_OrthancPluginReceivedInstanceAction.impl.h",
+            "values": [
+                {
+                    "key": "KEEP_AS_IS",
+                    "value": 1
+                },
+                {
+                    "key": "MODIFY",
+                    "value": 2
+                },
+                {
+                    "key": "DISCARD",
+                    "value": 3
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginResourceType",
+            "path": "sdk_OrthancPluginResourceType.impl.h",
+            "values": [
+                {
+                    "key": "PATIENT",
+                    "value": 0
+                },
+                {
+                    "key": "STUDY",
+                    "value": 1
+                },
+                {
+                    "key": "SERIES",
+                    "value": 2
+                },
+                {
+                    "key": "INSTANCE",
+                    "value": 3
+                },
+                {
+                    "key": "NONE",
+                    "value": 4
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginStorageCommitmentFailureReason",
+            "path": "sdk_OrthancPluginStorageCommitmentFailureReason.impl.h",
+            "values": [
+                {
+                    "key": "SUCCESS",
+                    "value": 0
+                },
+                {
+                    "key": "PROCESSING_FAILURE",
+                    "value": 1
+                },
+                {
+                    "key": "NO_SUCH_OBJECT_INSTANCE",
+                    "value": 2
+                },
+                {
+                    "key": "RESOURCE_LIMITATION",
+                    "value": 3
+                },
+                {
+                    "key": "REFERENCED_SOPCLASS_NOT_SUPPORTED",
+                    "value": 4
+                },
+                {
+                    "key": "CLASS_INSTANCE_CONFLICT",
+                    "value": 5
+                },
+                {
+                    "key": "DUPLICATE_TRANSACTION_UID",
+                    "value": 6
+                }
+            ]
+        },
+        {
+            "name": "OrthancPluginValueRepresentation",
+            "path": "sdk_OrthancPluginValueRepresentation.impl.h",
+            "values": [
+                {
+                    "key": "AE",
+                    "value": 1
+                },
+                {
+                    "key": "AS",
+                    "value": 2
+                },
+                {
+                    "key": "AT",
+                    "value": 3
+                },
+                {
+                    "key": "CS",
+                    "value": 4
+                },
+                {
+                    "key": "DA",
+                    "value": 5
+                },
+                {
+                    "key": "DS",
+                    "value": 6
+                },
+                {
+                    "key": "DT",
+                    "value": 7
+                },
+                {
+                    "key": "FD",
+                    "value": 8
+                },
+                {
+                    "key": "FL",
+                    "value": 9
+                },
+                {
+                    "key": "IS",
+                    "value": 10
+                },
+                {
+                    "key": "LO",
+                    "value": 11
+                },
+                {
+                    "key": "LT",
+                    "value": 12
+                },
+                {
+                    "key": "OB",
+                    "value": 13
+                },
+                {
+                    "key": "OF",
+                    "value": 14
+                },
+                {
+                    "key": "OW",
+                    "value": 15
+                },
+                {
+                    "key": "PN",
+                    "value": 16
+                },
+                {
+                    "key": "SH",
+                    "value": 17
+                },
+                {
+                    "key": "SL",
+                    "value": 18
+                },
+                {
+                    "key": "SQ",
+                    "value": 19
+                },
+                {
+                    "key": "SS",
+                    "value": 20
+                },
+                {
+                    "key": "ST",
+                    "value": 21
+                },
+                {
+                    "key": "TM",
+                    "value": 22
+                },
+                {
+                    "key": "UI",
+                    "value": 23
+                },
+                {
+                    "key": "UL",
+                    "value": 24
+                },
+                {
+                    "key": "UN",
+                    "value": 25
+                },
+                {
+                    "key": "US",
+                    "value": 26
+                },
+                {
+                    "key": "UT",
+                    "value": 27
+                }
+            ]
+        }
+    ],
+    "global_functions": [
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "i",
+                    "python_type": "int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "i",
+                    "python_type": "int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "i",
+                    "python_type": "int"
+                }
+            ],
+            "c_function": "OrthancPluginCheckVersionAdvanced",
+            "call_args": ", arg0, arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_long": true,
+            "short_name": "CheckVersionAdvanced",
+            "tuple_format": "\"iii\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginCheckVersion",
+            "return_long": true,
+            "short_name": "CheckVersion",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLogError",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "LogError",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLogWarning",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "LogWarning",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLogInfo",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "LogInfo",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginGetDicomForInstance",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "GetDicomForInstance",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiGet",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiGet",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiGetAfterPlugins",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiGetAfterPlugins",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiPost",
+            "call_args": ", arg0, arg1.buf, arg1.len",
+            "count_args": 2,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiPost",
+            "tuple_format": "\"ss*\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiPostAfterPlugins",
+            "call_args": ", arg0, arg1.buf, arg1.len",
+            "count_args": 2,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiPostAfterPlugins",
+            "tuple_format": "\"ss*\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiDelete",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "RestApiDelete",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiDeleteAfterPlugins",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "RestApiDeleteAfterPlugins",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiPut",
+            "call_args": ", arg0, arg1.buf, arg1.len",
+            "count_args": 2,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiPut",
+            "tuple_format": "\"ss*\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                }
+            ],
+            "c_function": "OrthancPluginRestApiPutAfterPlugins",
+            "call_args": ", arg0, arg1.buf, arg1.len",
+            "count_args": 2,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "RestApiPutAfterPlugins",
+            "tuple_format": "\"ss*\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLookupPatient",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "LookupPatient",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLookupStudy",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "LookupStudy",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLookupStudyWithAccessionNumber",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "LookupStudyWithAccessionNumber",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLookupSeries",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "LookupSeries",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginLookupInstance",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "LookupInstance",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetOrthancPath",
+            "return_dynamic_string": true,
+            "short_name": "GetOrthancPath",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetOrthancDirectory",
+            "return_dynamic_string": true,
+            "short_name": "GetOrthancDirectory",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetConfigurationPath",
+            "return_dynamic_string": true,
+            "short_name": "GetConfigurationPath",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginSetRootUri",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "SetRootUri",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginSetDescription",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "SetDescription",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginExtendOrthancExplorer",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "ExtendOrthancExplorer",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginGetGlobalProperty",
+            "call_args": ", arg0, arg1",
+            "count_args": 2,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "GetGlobalProperty",
+            "tuple_format": "\"ls\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginSetGlobalProperty",
+            "call_args": ", arg0, arg1",
+            "count_args": 2,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "SetGlobalProperty",
+            "tuple_format": "\"ls\", &arg0, &arg1"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetCommandLineArgumentsCount",
+            "return_long": true,
+            "short_name": "GetCommandLineArgumentsCount",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginGetCommandLineArgument",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "GetCommandLineArgument",
+            "tuple_format": "\"k\", &arg0"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetExpectedDatabaseVersion",
+            "return_long": true,
+            "short_name": "GetExpectedDatabaseVersion",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetConfiguration",
+            "return_dynamic_string": true,
+            "short_name": "GetConfiguration",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginCompressionType>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "b",
+                    "python_type": "unsigned char"
+                }
+            ],
+            "c_function": "OrthancPluginBufferCompression",
+            "call_args": ", arg0.buf, arg0.len, static_cast<OrthancPluginCompressionType>(arg2), arg3",
+            "count_args": 3,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "BufferCompression",
+            "tuple_format": "\"s*lb\", &arg0, &arg2, &arg3"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginReadFile",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "ReadFile",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                }
+            ],
+            "c_function": "OrthancPluginWriteFile",
+            "call_args": ", arg0, arg1.buf, arg1.len",
+            "count_args": 2,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "WriteFile",
+            "tuple_format": "\"ss*\", &arg0, &arg1"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "static_cast<OrthancPluginErrorCode>(arg0)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                }
+            ],
+            "c_function": "OrthancPluginGetErrorDescription",
+            "call_args": ", static_cast<OrthancPluginErrorCode>(arg0)",
+            "count_args": 1,
+            "has_args": true,
+            "return_static_string": true,
+            "short_name": "GetErrorDescription",
+            "tuple_format": "\"l\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginImageFormat>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                }
+            ],
+            "c_function": "OrthancPluginUncompressImage",
+            "call_args": ", arg0.buf, arg0.len, static_cast<OrthancPluginImageFormat>(arg2)",
+            "count_args": 2,
+            "has_args": true,
+            "return_object": "OrthancPluginImage",
+            "short_name": "UncompressImage",
+            "tuple_format": "\"s*l\", &arg0, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "name": "arg4",
+                    "orthanc_cast": "arg4.buf",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg4);"
+                }
+            ],
+            "c_function": "OrthancPluginCompressPngImage",
+            "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0), arg1, arg2, arg3, arg4.buf",
+            "count_args": 5,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "CompressPngImage",
+            "tuple_format": "\"lkkks*\", &arg0, &arg1, &arg2, &arg3, &arg4"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "name": "arg4",
+                    "orthanc_cast": "arg4.buf",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg4);"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg5",
+                    "orthanc_cast": "arg5",
+                    "python_format": "b",
+                    "python_type": "unsigned char"
+                }
+            ],
+            "c_function": "OrthancPluginCompressJpegImage",
+            "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0), arg1, arg2, arg3, arg4.buf, arg5",
+            "count_args": 6,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "CompressJpegImage",
+            "tuple_format": "\"lkkks*b\", &arg0, &arg1, &arg2, &arg3, &arg4, &arg5"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginHttpGet",
+            "call_args": ", arg0, arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "HttpGet",
+            "tuple_format": "\"sss\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg4",
+                    "orthanc_cast": "arg4",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginHttpPost",
+            "call_args": ", arg0, arg1.buf, arg1.len, arg3, arg4",
+            "count_args": 4,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "HttpPost",
+            "tuple_format": "\"ss*ss\", &arg0, &arg1, &arg3, &arg4"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "name": "arg1",
+                    "orthanc_cast": "arg1.buf, arg1.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg1);"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg4",
+                    "orthanc_cast": "arg4",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginHttpPut",
+            "call_args": ", arg0, arg1.buf, arg1.len, arg3, arg4",
+            "count_args": 4,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "HttpPut",
+            "tuple_format": "\"ss*ss\", &arg0, &arg1, &arg3, &arg4"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginHttpDelete",
+            "call_args": ", arg0, arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "HttpDelete",
+            "tuple_format": "\"sss\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetFontsCount",
+            "return_long": true,
+            "short_name": "GetFontsCount",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginGetFontName",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_static_string": true,
+            "short_name": "GetFontName",
+            "tuple_format": "\"k\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginGetFontSize",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_long": true,
+            "short_name": "GetFontSize",
+            "tuple_format": "\"k\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRegisterErrorCode",
+            "call_args": ", arg0, arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "RegisterErrorCode",
+            "tuple_format": "\"lHs\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginValueRepresentation>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg4",
+                    "orthanc_cast": "arg4",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg5",
+                    "orthanc_cast": "arg5",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginRegisterDictionaryTag",
+            "call_args": ", arg0, arg1, static_cast<OrthancPluginValueRepresentation>(arg2), arg3, arg4, arg5",
+            "count_args": 6,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "RegisterDictionaryTag",
+            "tuple_format": "\"HHlskk\", &arg0, &arg1, &arg2, &arg3, &arg4, &arg5"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginValueRepresentation>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg4",
+                    "orthanc_cast": "arg4",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg5",
+                    "orthanc_cast": "arg5",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg6",
+                    "orthanc_cast": "arg6",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginRegisterPrivateDictionaryTag",
+            "call_args": ", arg0, arg1, static_cast<OrthancPluginValueRepresentation>(arg2), arg3, arg4, arg5, arg6",
+            "count_args": 7,
+            "has_args": true,
+            "return_error": true,
+            "short_name": "RegisterPrivateDictionaryTag",
+            "tuple_format": "\"HHlskks\", &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFormat>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg3",
+                    "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFlags>(arg3)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg4",
+                    "orthanc_cast": "arg4",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginDicomBufferToJson",
+            "call_args": ", arg0.buf, arg0.len, static_cast<OrthancPluginDicomToJsonFormat>(arg2), static_cast<OrthancPluginDicomToJsonFlags>(arg3), arg4",
+            "count_args": 4,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "DicomBufferToJson",
+            "tuple_format": "\"s*llk\", &arg0, &arg2, &arg3, &arg4"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFormat>(arg1)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginDicomToJsonFlags>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg3",
+                    "orthanc_cast": "arg3",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginDicomInstanceToJson",
+            "call_args": ", arg0, static_cast<OrthancPluginDicomToJsonFormat>(arg1), static_cast<OrthancPluginDicomToJsonFlags>(arg2), arg3",
+            "count_args": 4,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "DicomInstanceToJson",
+            "tuple_format": "\"sllk\", &arg0, &arg1, &arg2, &arg3"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "static_cast<OrthancPluginPixelFormat>(arg0)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginCreateImage",
+            "call_args": ", static_cast<OrthancPluginPixelFormat>(arg0), arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_object": "OrthancPluginImage",
+            "short_name": "CreateImage",
+            "tuple_format": "\"lkk\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginDecodeDicomImage",
+            "call_args": ", arg0.buf, arg0.len, arg2",
+            "count_args": 2,
+            "has_args": true,
+            "return_object": "OrthancPluginImage",
+            "short_name": "DecodeDicomImage",
+            "tuple_format": "\"s*k\", &arg0, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                }
+            ],
+            "c_function": "OrthancPluginComputeMd5",
+            "call_args": ", arg0.buf, arg0.len",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "ComputeMd5",
+            "tuple_format": "\"s*\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                }
+            ],
+            "c_function": "OrthancPluginComputeSha1",
+            "call_args": ", arg0.buf, arg0.len",
+            "count_args": 1,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "ComputeSha1",
+            "tuple_format": "\"s*\", &arg0"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGenerateUuid",
+            "return_dynamic_string": true,
+            "short_name": "GenerateUuid",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                }
+            ],
+            "c_function": "OrthancPluginCreateFindMatcher",
+            "call_args": ", arg0.buf, arg0.len",
+            "count_args": 1,
+            "has_args": true,
+            "return_object": "OrthancPluginFindMatcher",
+            "short_name": "CreateFindMatcher",
+            "tuple_format": "\"s*\", &arg0"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGetPeers",
+            "return_object": "OrthancPluginPeers",
+            "short_name": "GetPeers",
+            "tuple_format": "\"\", "
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginAutodetectMimeType",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_static_string": true,
+            "short_name": "AutodetectMimeType",
+            "tuple_format": "\"s\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = NULL",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "f",
+                    "python_type": "float"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg2",
+                    "orthanc_cast": "static_cast<OrthancPluginMetricsType>(arg2)",
+                    "python_format": "l",
+                    "python_type": "long int"
+                }
+            ],
+            "c_function": "OrthancPluginSetMetricsValue",
+            "call_args": ", arg0, arg1, static_cast<OrthancPluginMetricsType>(arg2)",
+            "count_args": 3,
+            "has_args": true,
+            "return_void": true,
+            "short_name": "SetMetricsValue",
+            "tuple_format": "\"sfl\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = 0",
+                    "name": "arg1",
+                    "orthanc_cast": "arg1",
+                    "python_format": "H",
+                    "python_type": "unsigned short"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginGetTagName",
+            "call_args": ", arg0, arg1, arg2",
+            "count_args": 3,
+            "has_args": true,
+            "return_dynamic_string": true,
+            "short_name": "GetTagName",
+            "tuple_format": "\"HHs\", &arg0, &arg1, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                }
+            ],
+            "c_function": "OrthancPluginCreateDicomInstance",
+            "call_args": ", arg0.buf, arg0.len",
+            "count_args": 1,
+            "has_args": true,
+            "return_object": "OrthancPluginDicomInstance",
+            "short_name": "CreateDicomInstance",
+            "tuple_format": "\"s*\", &arg0"
+        },
+        {
+            "args": [
+                {
+                    "name": "arg0",
+                    "orthanc_cast": "arg0.buf, arg0.len",
+                    "python_format": "s*",
+                    "python_type": "Py_buffer",
+                    "release": "PyBuffer_Release(&arg0);"
+                },
+                {
+                    "initialization": " = NULL",
+                    "name": "arg2",
+                    "orthanc_cast": "arg2",
+                    "python_format": "s",
+                    "python_type": "const char*"
+                }
+            ],
+            "c_function": "OrthancPluginTranscodeDicomInstance",
+            "call_args": ", arg0.buf, arg0.len, arg2",
+            "count_args": 2,
+            "has_args": true,
+            "return_object": "OrthancPluginDicomInstance",
+            "short_name": "TranscodeDicomInstance",
+            "tuple_format": "\"s*s\", &arg0, &arg2"
+        },
+        {
+            "args": [
+                {
+                    "initialization": " = 0",
+                    "name": "arg0",
+                    "orthanc_cast": "arg0",
+                    "python_format": "k",
+                    "python_type": "unsigned long"
+                }
+            ],
+            "c_function": "OrthancPluginCreateMemoryBuffer",
+            "call_args": ", arg0",
+            "count_args": 1,
+            "has_args": true,
+            "return_bytes": true,
+            "short_name": "CreateMemoryBuffer",
+            "tuple_format": "\"k\", &arg0"
+        },
+        {
+            "args": [],
+            "c_function": "OrthancPluginGenerateRestApiAuthorizationToken",
+            "return_dynamic_string": true,
+            "short_name": "GenerateRestApiAuthorizationToken",
+            "tuple_format": "\"\", "
+        }
+    ]
+}
\ No newline at end of file