Mercurial > hg > orthanc
changeset 6258:676a9929560a
ORTHANC_PLUGIN_SINCE_SDK for classes and enumerations
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sun, 10 Aug 2025 13:20:53 +0200 |
parents | 1d23b1688deb |
children | e1c96ddca883 |
files | OrthancServer/Plugins/Include/orthanc/OrthancCPlugin.h |
diffstat | 1 files changed, 49 insertions(+), 39 deletions(-) [+] |
line wrap: on
line diff
--- a/OrthancServer/Plugins/Include/orthanc/OrthancCPlugin.h Sat Aug 09 10:12:25 2025 +0200 +++ b/OrthancServer/Plugins/Include/orthanc/OrthancCPlugin.h Sun Aug 10 13:20:53 2025 +0200 @@ -732,7 +732,7 @@ * This format describes a color image. The pixels are stored in 6 * consecutive bytes. The memory layout is RRGGBB. **/ - OrthancPluginPixelFormat_RGB48 = 7, + OrthancPluginPixelFormat_RGB48 ORTHANC_PLUGIN_SINCE_SDK("1.3.1") = 7, /** * @brief Graylevel, unsigned 32bpp image. @@ -740,7 +740,7 @@ * The image is graylevel. Each pixel is unsigned and stored in * four bytes. **/ - OrthancPluginPixelFormat_Grayscale32 = 8, + OrthancPluginPixelFormat_Grayscale32 ORTHANC_PLUGIN_SINCE_SDK("1.3.1") = 8, /** * @brief Graylevel, floating-point 32bpp image. @@ -748,7 +748,7 @@ * The image is graylevel. Each pixel is floating-point and stored * in four bytes. **/ - OrthancPluginPixelFormat_Float32 = 9, + OrthancPluginPixelFormat_Float32 ORTHANC_PLUGIN_SINCE_SDK("1.3.1") = 9, /** * @brief Color image in BGRA32 format. @@ -756,7 +756,7 @@ * This format describes a color image. The pixels are stored in 4 * consecutive bytes. The memory layout is BGRA. **/ - OrthancPluginPixelFormat_BGRA32 = 10, + OrthancPluginPixelFormat_BGRA32 ORTHANC_PLUGIN_SINCE_SDK("1.3.1") = 10, /** * @brief Graylevel, unsigned 64bpp image. @@ -764,7 +764,7 @@ * The image is graylevel. Each pixel is unsigned and stored in * eight bytes. **/ - OrthancPluginPixelFormat_Grayscale64 = 11, + OrthancPluginPixelFormat_Grayscale64 ORTHANC_PLUGIN_SINCE_SDK("1.4.0") = 11, _OrthancPluginPixelFormat_INTERNAL = 0x7fffffff } OrthancPluginPixelFormat; @@ -779,7 +779,7 @@ OrthancPluginContentType_Unknown = 0, /*!< Unknown content type */ OrthancPluginContentType_Dicom = 1, /*!< DICOM */ OrthancPluginContentType_DicomAsJson = 2, /*!< JSON summary of a DICOM file */ - OrthancPluginContentType_DicomUntilPixelData = 3, /*!< DICOM Header till pixel data */ + OrthancPluginContentType_DicomUntilPixelData ORTHANC_PLUGIN_SINCE_SDK("1.9.2") = 3, /*!< DICOM Header till pixel data */ _OrthancPluginContentType_INTERNAL = 0x7fffffff } OrthancPluginContentType; @@ -823,11 +823,11 @@ OrthancPluginChangeType_OrthancStopped = 11, /*!< Orthanc is stopping */ OrthancPluginChangeType_UpdatedAttachment = 12, /*!< Some user-defined attachment has changed for this resource */ OrthancPluginChangeType_UpdatedMetadata = 13, /*!< Some user-defined metadata has changed for this resource */ - OrthancPluginChangeType_UpdatedPeers = 14, /*!< The list of Orthanc peers has changed */ - OrthancPluginChangeType_UpdatedModalities = 15, /*!< The list of DICOM modalities has changed */ - OrthancPluginChangeType_JobSubmitted = 16, /*!< New Job submitted */ - OrthancPluginChangeType_JobSuccess = 17, /*!< A Job has completed successfully */ - OrthancPluginChangeType_JobFailure = 18, /*!< A Job has failed */ + OrthancPluginChangeType_UpdatedPeers ORTHANC_PLUGIN_SINCE_SDK("1.4.2") = 14, /*!< The list of Orthanc peers has changed */ + OrthancPluginChangeType_UpdatedModalities ORTHANC_PLUGIN_SINCE_SDK("1.4.2") = 15, /*!< The list of DICOM modalities has changed */ + OrthancPluginChangeType_JobSubmitted ORTHANC_PLUGIN_SINCE_SDK("1.7.2") = 16, /*!< New Job submitted */ + OrthancPluginChangeType_JobSuccess ORTHANC_PLUGIN_SINCE_SDK("1.7.2") = 17, /*!< A Job has completed successfully */ + OrthancPluginChangeType_JobFailure ORTHANC_PLUGIN_SINCE_SDK("1.7.2") = 18, /*!< A Job has failed */ _OrthancPluginChangeType_INTERNAL = 0x7fffffff } OrthancPluginChangeType; @@ -843,7 +843,7 @@ OrthancPluginCompressionType_ZlibWithSize = 1, /*!< zlib, prefixed with uncompressed size (uint64_t) */ OrthancPluginCompressionType_Gzip = 2, /*!< Standard gzip compression */ OrthancPluginCompressionType_GzipWithSize = 3, /*!< gzip, prefixed with uncompressed size (uint64_t) */ - OrthancPluginCompressionType_None = 4, /*!< No compression (new in Orthanc 1.12.8) */ + OrthancPluginCompressionType_None ORTHANC_PLUGIN_SINCE_SDK("1.12.8") = 4, /*!< No compression (new in Orthanc 1.12.8) */ _OrthancPluginCompressionType_INTERNAL = 0x7fffffff } OrthancPluginCompressionType; @@ -930,8 +930,8 @@ OrthancPluginDicomToJsonFlags_IncludePixelData = (1 << 3), /*!< Include the pixel data */ OrthancPluginDicomToJsonFlags_ConvertBinaryToAscii = (1 << 4), /*!< Output binary tags as-is, dropping non-ASCII */ OrthancPluginDicomToJsonFlags_ConvertBinaryToNull = (1 << 5), /*!< Signal binary tags as null values */ - OrthancPluginDicomToJsonFlags_StopAfterPixelData = (1 << 6), /*!< Stop processing after pixel data (new in 1.9.1) */ - OrthancPluginDicomToJsonFlags_SkipGroupLengths = (1 << 7), /*!< Skip tags whose element is zero (new in 1.9.1) */ + OrthancPluginDicomToJsonFlags_StopAfterPixelData ORTHANC_PLUGIN_SINCE_SDK("1.9.1") = (1 << 6), /*!< Stop processing after pixel data (new in 1.9.1) */ + OrthancPluginDicomToJsonFlags_SkipGroupLengths ORTHANC_PLUGIN_SINCE_SDK("1.9.1") = (1 << 7), /*!< Skip tags whose element is zero (new in 1.9.1) */ _OrthancPluginDicomToJsonFlags_INTERNAL = 0x7fffffff } OrthancPluginDicomToJsonFlags; @@ -944,7 +944,7 @@ **/ typedef enum { - OrthancPluginCreateDicomFlags_None = 0, /*!< Default mode */ + OrthancPluginCreateDicomFlags_None ORTHANC_PLUGIN_SINCE_SDK("1.2.0") = 0, /*!< Default mode */ OrthancPluginCreateDicomFlags_DecodeDataUriScheme = (1 << 0), /*!< Decode fields encoded using data URI scheme */ OrthancPluginCreateDicomFlags_GenerateIdentifiers = (1 << 1), /*!< Automatically generate DICOM identifiers */ @@ -994,7 +994,7 @@ OrthancPluginInstanceOrigin_RestApi = 3, /*!< Instance received through REST API of Orthanc */ OrthancPluginInstanceOrigin_Plugin = 4, /*!< Instance added to Orthanc by a plugin */ OrthancPluginInstanceOrigin_Lua = 5, /*!< Instance added to Orthanc by a Lua script */ - OrthancPluginInstanceOrigin_WebDav = 6, /*!< Instance received through WebDAV (new in 1.8.0) */ + OrthancPluginInstanceOrigin_WebDav ORTHANC_PLUGIN_SINCE_SDK("1.8.0") = 6, /*!< Instance received through WebDAV (new in 1.8.0) */ _OrthancPluginInstanceOrigin_INTERNAL = 0x7fffffff } OrthancPluginInstanceOrigin; @@ -1003,7 +1003,7 @@ /** * The possible status for one single step of a job. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.4.2") { OrthancPluginJobStepStatus_Success = 1, /*!< The job has successfully executed all its steps */ OrthancPluginJobStepStatus_Failure = 2, /*!< The job has failed while executing this step */ @@ -1017,7 +1017,7 @@ * the "paused" condition and the "final" conditions (success, * failure, or canceled). **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.4.2") { OrthancPluginJobStopReason_Success = 1, /*!< The job has succeeded */ OrthancPluginJobStopReason_Paused = 2, /*!< The job was paused, and will be resumed later */ @@ -1029,7 +1029,7 @@ /** * The available types of metrics. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.5.4") { OrthancPluginMetricsType_Default = 0, /*!< Default metrics */ @@ -1046,7 +1046,7 @@ * The available modes to export a binary DICOM tag into a DICOMweb * JSON or XML document. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.5.4") { OrthancPluginDicomWebBinaryMode_Ignore = 0, /*!< Don't include binary tags */ OrthancPluginDicomWebBinaryMode_InlineBinary = 1, /*!< Inline encoding using Base64 */ @@ -1059,7 +1059,7 @@ * storage commitment. * http://dicom.nema.org/medical/dicom/2019e/output/chtml/part03/sect_C.14.html#sect_C.14.1.1 **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.6.0") { /** * Success: The DICOM instance is properly stored in the SCP @@ -1107,7 +1107,7 @@ /** * The action to be taken after ReceivedInstanceCallback is triggered **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.10.0") { OrthancPluginReceivedInstanceAction_KeepAsIs = 1, /*!< Keep the instance as is */ OrthancPluginReceivedInstanceAction_Modify = 2, /*!< Modify the instance */ @@ -1121,7 +1121,7 @@ * Mode specifying how to load a DICOM instance. * @see OrthancPluginLoadDicomInstance() **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.1") { /** * Load the whole DICOM file, including pixel data @@ -1151,7 +1151,7 @@ * These values must match those of enumeration "LogLevel" in the * Orthanc Core. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.4") { OrthancPluginLogLevel_Error = 0, /*!< Error log level */ OrthancPluginLogLevel_Warning = 1, /*!< Warning log level */ @@ -1168,7 +1168,7 @@ * These values must match those of enumeration "LogCategory" in the * Orthanc Core. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.4") { OrthancPluginLogCategory_Generic = (1 << 0), /*!< Generic (default) category */ OrthancPluginLogCategory_Plugins = (1 << 1), /*!< Plugin engine related logs (shall not be used by plugins) */ @@ -1185,7 +1185,7 @@ /** * The store status related to the adoption of a DICOM instance. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.8") { OrthancPluginStoreStatus_Success = 0, /*!< The file has been stored/adopted */ OrthancPluginStoreStatus_AlreadyStored = 1, /*!< The file has already been stored/adopted (only if OverwriteInstances is set to false)*/ @@ -1200,7 +1200,7 @@ /** * The supported modes to remove an element from a queue. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.8") { OrthancPluginQueueOrigin_Front = 0, /*!< Dequeue from the front of the queue */ OrthancPluginQueueOrigin_Back = 1, /*!< Dequeue from the back of the queue */ @@ -1212,7 +1212,7 @@ /** * The "Stable" status of a resource. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.9") { OrthancPluginStableStatus_Stable = 0, /*!< The resource is stable */ OrthancPluginStableStatus_Unstable = 1, /*!< The resource is unstable */ @@ -1224,7 +1224,7 @@ /** * The status related to the authentication of a HTTP request. **/ - typedef enum + typedef enum ORTHANC_PLUGIN_SINCE_SDK("1.12.9") { OrthancPluginHttpAuthenticationStatus_Granted = 0, /*!< The authentication has been granted */ OrthancPluginHttpAuthenticationStatus_Unauthorized = 1, /*!< The authentication has failed (401 HTTP status) */ @@ -1264,7 +1264,7 @@ * content of the buffer is not useful anymore, it must be free by a * call to ::OrthancPluginFreeMemoryBuffer64(). **/ - typedef struct + ORTHANC_PLUGIN_SINCE_SDK("1.9.0") typedef struct { /** * @brief The content of the buffer. @@ -1332,7 +1332,8 @@ * @brief Opaque structure to an object that represents a C-Find query. * @ingroup DicomCallbacks **/ - typedef struct _OrthancPluginFindQuery_t OrthancPluginFindQuery; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.1.0") + _OrthancPluginFindQuery_t OrthancPluginFindQuery; @@ -1340,7 +1341,8 @@ * @brief Opaque structure to an object that represents the answers to a C-Find query for worklists. * @ingroup DicomCallbacks **/ - typedef struct _OrthancPluginFindAnswers_t OrthancPluginFindAnswers; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.1.0") + _OrthancPluginFindAnswers_t OrthancPluginFindAnswers; @@ -1348,7 +1350,8 @@ * @brief Opaque structure to an object that can be used to check whether a DICOM instance matches a C-Find query. * @ingroup Toolbox **/ - typedef struct _OrthancPluginFindMatcher_t OrthancPluginFindMatcher; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.2.0") + _OrthancPluginFindMatcher_t OrthancPluginFindMatcher; @@ -1356,7 +1359,8 @@ * @brief Opaque structure to the set of remote Orthanc Peers that are known to the local Orthanc server. * @ingroup Toolbox **/ - typedef struct _OrthancPluginPeers_t OrthancPluginPeers; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.4.2") + _OrthancPluginPeers_t OrthancPluginPeers; @@ -1364,7 +1368,8 @@ * @brief Opaque structure to a job to be executed by Orthanc. * @ingroup Toolbox **/ - typedef struct _OrthancPluginJob_t OrthancPluginJob; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.4.2") + _OrthancPluginJob_t OrthancPluginJob; @@ -1373,7 +1378,8 @@ * document used in DICOMweb. * @ingroup Toolbox **/ - typedef struct _OrthancPluginDicomWebNode_t OrthancPluginDicomWebNode; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.5.4") + _OrthancPluginDicomWebNode_t OrthancPluginDicomWebNode; @@ -2321,6 +2327,7 @@ * @param context The Orthanc plugin context, as received by OrthancPluginInitialize(). * @param buffer The memory buffer to release. **/ + ORTHANC_PLUGIN_SINCE_SDK("1.9.0") ORTHANC_PLUGIN_INLINE void OrthancPluginFreeMemoryBuffer64( OrthancPluginContext* context, OrthancPluginMemoryBuffer64* buffer) @@ -7982,7 +7989,8 @@ * @brief Opaque structure that reads the content of a HTTP request body during a chunked HTTP transfer. * @ingroup Callbacks **/ - typedef struct _OrthancPluginServerChunkedRequestReader_t OrthancPluginServerChunkedRequestReader; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.5.7") + _OrthancPluginServerChunkedRequestReader_t OrthancPluginServerChunkedRequestReader; @@ -9330,7 +9338,8 @@ * @brief Opaque structure that represents a WebDAV collection. * @ingroup Callbacks **/ - typedef struct _OrthancPluginWebDavCollection_t OrthancPluginWebDavCollection; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.10.1") + _OrthancPluginWebDavCollection_t OrthancPluginWebDavCollection; /** @@ -10184,7 +10193,8 @@ * a key-value store. * @ingroup Callbacks **/ - typedef struct _OrthancPluginKeysValuesIterator_t OrthancPluginKeysValuesIterator; + typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.12.8") + _OrthancPluginKeysValuesIterator_t OrthancPluginKeysValuesIterator; typedef struct