117 # define ORTHANC_PLUGINS_API __declspec(dllexport)
119 # define ORTHANC_PLUGINS_API __attribute__ ((visibility ("default")))
121 # define ORTHANC_PLUGINS_API
124 #define ORTHANC_PLUGINS_MINIMAL_MAJOR_NUMBER 1
125 #define ORTHANC_PLUGINS_MINIMAL_MINOR_NUMBER 12
126 #define ORTHANC_PLUGINS_MINIMAL_REVISION_NUMBER 9
129 #if !defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE)
130 #define ORTHANC_PLUGINS_VERSION_IS_ABOVE(major, minor, revision) \
131 (ORTHANC_PLUGINS_MINIMAL_MAJOR_NUMBER > major || \
132 (ORTHANC_PLUGINS_MINIMAL_MAJOR_NUMBER == major && \
133 (ORTHANC_PLUGINS_MINIMAL_MINOR_NUMBER > minor || \
134 (ORTHANC_PLUGINS_MINIMAL_MINOR_NUMBER == minor && \
135 ORTHANC_PLUGINS_MINIMAL_REVISION_NUMBER >= revision))))
154 #ifndef ORTHANC_PLUGIN_INLINE
155 # if __STDC_VERSION__ >= 199901L
157 # define ORTHANC_PLUGIN_INLINE static inline
158 # elif defined(__cplusplus)
160 # define ORTHANC_PLUGIN_INLINE static inline
161 # elif defined(__GNUC__)
163 # define ORTHANC_PLUGIN_INLINE static __inline
164 # elif defined(_MSC_VER)
166 # define ORTHANC_PLUGIN_INLINE static __inline
168 # error Your compiler is not known to support the "inline" keyword
173 #ifndef ORTHANC_PLUGIN_DEPRECATED
174 # if defined(_MSC_VER)
175 # define ORTHANC_PLUGIN_DEPRECATED __declspec(deprecated)
177 # define ORTHANC_PLUGIN_DEPRECATED __attribute__ ((deprecated))
178 # elif defined(__clang__)
179 # define ORTHANC_PLUGIN_DEPRECATED __attribute__ ((deprecated))
181 # pragma message("WARNING: You need to implement ORTHANC_PLUGINS_DEPRECATED for this compiler")
182 # define ORTHANC_PLUGIN_DEPRECATED
187 #ifndef ORTHANC_PLUGIN_SINCE_SDK
194 # if defined(__clang__)
195 # define ORTHANC_PLUGIN_SINCE_SDK(version) __attribute__ ((annotate("ORTHANC_PLUGIN_SINCE_SDK " version)))
197 # define ORTHANC_PLUGIN_SINCE_SDK(version)
347 _OrthancPluginErrorCode_INTERNAL = 0x7fffffff
355 ORTHANC_PLUGINS_API
const char* OrthancPluginGetName();
368 _OrthancPluginHttpMethod_INTERNAL = 0x7fffffff
461 _OrthancPluginService_LogInfo = 1,
462 _OrthancPluginService_LogWarning = 2,
463 _OrthancPluginService_LogError = 3,
464 _OrthancPluginService_GetOrthancPath = 4,
465 _OrthancPluginService_GetOrthancDirectory = 5,
466 _OrthancPluginService_GetConfigurationPath = 6,
467 _OrthancPluginService_SetPluginProperty = 7,
468 _OrthancPluginService_GetGlobalProperty = 8,
469 _OrthancPluginService_SetGlobalProperty = 9,
470 _OrthancPluginService_GetCommandLineArgumentsCount = 10,
471 _OrthancPluginService_GetCommandLineArgument = 11,
472 _OrthancPluginService_GetExpectedDatabaseVersion = 12,
473 _OrthancPluginService_GetConfiguration = 13,
474 _OrthancPluginService_BufferCompression = 14,
475 _OrthancPluginService_ReadFile = 15,
476 _OrthancPluginService_WriteFile = 16,
477 _OrthancPluginService_GetErrorDescription = 17,
478 _OrthancPluginService_CallHttpClient = 18,
479 _OrthancPluginService_RegisterErrorCode = 19,
480 _OrthancPluginService_RegisterDictionaryTag = 20,
481 _OrthancPluginService_DicomBufferToJson = 21,
482 _OrthancPluginService_DicomInstanceToJson = 22,
483 _OrthancPluginService_CreateDicom = 23,
484 _OrthancPluginService_ComputeMd5 = 24,
485 _OrthancPluginService_ComputeSha1 = 25,
486 _OrthancPluginService_LookupDictionary = 26,
487 _OrthancPluginService_CallHttpClient2 = 27,
488 _OrthancPluginService_GenerateUuid = 28,
489 _OrthancPluginService_RegisterPrivateDictionaryTag = 29,
490 _OrthancPluginService_AutodetectMimeType = 30,
491 _OrthancPluginService_SetMetricsValue = 31,
492 _OrthancPluginService_EncodeDicomWebJson = 32,
493 _OrthancPluginService_EncodeDicomWebXml = 33,
494 _OrthancPluginService_ChunkedHttpClient = 34,
495 _OrthancPluginService_GetTagName = 35,
496 _OrthancPluginService_EncodeDicomWebJson2 = 36,
497 _OrthancPluginService_EncodeDicomWebXml2 = 37,
498 _OrthancPluginService_CreateMemoryBuffer = 38,
499 _OrthancPluginService_GenerateRestApiAuthorizationToken = 39,
500 _OrthancPluginService_CreateMemoryBuffer64 = 40,
501 _OrthancPluginService_CreateDicom2 = 41,
502 _OrthancPluginService_GetDatabaseServerIdentifier = 42,
503 _OrthancPluginService_SetMetricsIntegerValue = 43,
504 _OrthancPluginService_SetCurrentThreadName = 44,
505 _OrthancPluginService_LogMessage = 45,
506 _OrthancPluginService_AdoptDicomInstance = 46,
507 _OrthancPluginService_GetAttachmentCustomData = 47,
508 _OrthancPluginService_SetAttachmentCustomData = 48,
509 _OrthancPluginService_StoreKeyValue = 49,
510 _OrthancPluginService_DeleteKeyValue = 50,
511 _OrthancPluginService_GetKeyValue = 51,
512 _OrthancPluginService_CreateKeysValuesIterator = 52,
513 _OrthancPluginService_FreeKeysValuesIterator = 53,
514 _OrthancPluginService_KeysValuesIteratorNext = 54,
515 _OrthancPluginService_KeysValuesIteratorGetKey = 55,
516 _OrthancPluginService_KeysValuesIteratorGetValue = 56,
517 _OrthancPluginService_EnqueueValue = 57,
518 _OrthancPluginService_DequeueValue = 58,
519 _OrthancPluginService_GetQueueSize = 59,
520 _OrthancPluginService_SetStableStatus = 60,
521 _OrthancPluginService_EmitAuditLog = 61,
524 _OrthancPluginService_RegisterRestCallback = 1000,
525 _OrthancPluginService_RegisterOnStoredInstanceCallback = 1001,
526 _OrthancPluginService_RegisterStorageArea = 1002,
527 _OrthancPluginService_RegisterOnChangeCallback = 1003,
528 _OrthancPluginService_RegisterRestCallbackNoLock = 1004,
529 _OrthancPluginService_RegisterWorklistCallback = 1005,
530 _OrthancPluginService_RegisterDecodeImageCallback = 1006,
531 _OrthancPluginService_RegisterIncomingHttpRequestFilter = 1007,
532 _OrthancPluginService_RegisterFindCallback = 1008,
533 _OrthancPluginService_RegisterMoveCallback = 1009,
534 _OrthancPluginService_RegisterIncomingHttpRequestFilter2 = 1010,
535 _OrthancPluginService_RegisterRefreshMetricsCallback = 1011,
536 _OrthancPluginService_RegisterChunkedRestCallback = 1012,
537 _OrthancPluginService_RegisterStorageCommitmentScpCallback = 1013,
538 _OrthancPluginService_RegisterIncomingDicomInstanceFilter = 1014,
539 _OrthancPluginService_RegisterTranscoderCallback = 1015,
540 _OrthancPluginService_RegisterStorageArea2 = 1016,
541 _OrthancPluginService_RegisterIncomingCStoreInstanceFilter = 1017,
542 _OrthancPluginService_RegisterReceivedInstanceCallback = 1018,
543 _OrthancPluginService_RegisterWebDavCollection = 1019,
544 _OrthancPluginService_RegisterStorageArea3 = 1020,
545 _OrthancPluginService_RegisterHttpAuthentication = 1021,
546 _OrthancPluginService_RegisterAuditLogHandler = 1022,
549 _OrthancPluginService_AnswerBuffer = 2000,
550 _OrthancPluginService_CompressAndAnswerPngImage = 2001,
551 _OrthancPluginService_Redirect = 2002,
552 _OrthancPluginService_SendHttpStatusCode = 2003,
553 _OrthancPluginService_SendUnauthorized = 2004,
554 _OrthancPluginService_SendMethodNotAllowed = 2005,
555 _OrthancPluginService_SetCookie = 2006,
556 _OrthancPluginService_SetHttpHeader = 2007,
557 _OrthancPluginService_StartMultipartAnswer = 2008,
558 _OrthancPluginService_SendMultipartItem = 2009,
559 _OrthancPluginService_SendHttpStatus = 2010,
560 _OrthancPluginService_CompressAndAnswerImage = 2011,
561 _OrthancPluginService_SendMultipartItem2 = 2012,
562 _OrthancPluginService_SetHttpErrorDetails = 2013,
563 _OrthancPluginService_StartStreamAnswer = 2014,
564 _OrthancPluginService_SendStreamChunk = 2015,
567 _OrthancPluginService_GetDicomForInstance = 3000,
568 _OrthancPluginService_RestApiGet = 3001,
569 _OrthancPluginService_RestApiPost = 3002,
570 _OrthancPluginService_RestApiDelete = 3003,
571 _OrthancPluginService_RestApiPut = 3004,
572 _OrthancPluginService_LookupPatient = 3005,
573 _OrthancPluginService_LookupStudy = 3006,
574 _OrthancPluginService_LookupSeries = 3007,
575 _OrthancPluginService_LookupInstance = 3008,
576 _OrthancPluginService_LookupStudyWithAccessionNumber = 3009,
577 _OrthancPluginService_RestApiGetAfterPlugins = 3010,
578 _OrthancPluginService_RestApiPostAfterPlugins = 3011,
579 _OrthancPluginService_RestApiDeleteAfterPlugins = 3012,
580 _OrthancPluginService_RestApiPutAfterPlugins = 3013,
581 _OrthancPluginService_ReconstructMainDicomTags = 3014,
582 _OrthancPluginService_RestApiGet2 = 3015,
583 _OrthancPluginService_CallRestApi = 3016,
586 _OrthancPluginService_GetInstanceRemoteAet = 4000,
587 _OrthancPluginService_GetInstanceSize = 4001,
588 _OrthancPluginService_GetInstanceData = 4002,
589 _OrthancPluginService_GetInstanceJson = 4003,
590 _OrthancPluginService_GetInstanceSimplifiedJson = 4004,
591 _OrthancPluginService_HasInstanceMetadata = 4005,
592 _OrthancPluginService_GetInstanceMetadata = 4006,
593 _OrthancPluginService_GetInstanceOrigin = 4007,
594 _OrthancPluginService_GetInstanceTransferSyntaxUid = 4008,
595 _OrthancPluginService_HasInstancePixelData = 4009,
596 _OrthancPluginService_CreateDicomInstance = 4010,
597 _OrthancPluginService_FreeDicomInstance = 4011,
598 _OrthancPluginService_GetInstanceFramesCount = 4012,
599 _OrthancPluginService_GetInstanceRawFrame = 4013,
600 _OrthancPluginService_GetInstanceDecodedFrame = 4014,
601 _OrthancPluginService_TranscodeDicomInstance = 4015,
602 _OrthancPluginService_SerializeDicomInstance = 4016,
603 _OrthancPluginService_GetInstanceAdvancedJson = 4017,
604 _OrthancPluginService_GetInstanceDicomWebJson = 4018,
605 _OrthancPluginService_GetInstanceDicomWebXml = 4019,
606 _OrthancPluginService_LoadDicomInstance = 4020,
609 _OrthancPluginService_RegisterDatabaseBackend = 5000,
610 _OrthancPluginService_DatabaseAnswer = 5001,
611 _OrthancPluginService_RegisterDatabaseBackendV2 = 5002,
612 _OrthancPluginService_StorageAreaCreate = 5003,
613 _OrthancPluginService_StorageAreaRead = 5004,
614 _OrthancPluginService_StorageAreaRemove = 5005,
615 _OrthancPluginService_RegisterDatabaseBackendV3 = 5006,
616 _OrthancPluginService_RegisterDatabaseBackendV4 = 5007,
619 _OrthancPluginService_GetImagePixelFormat = 6000,
620 _OrthancPluginService_GetImageWidth = 6001,
621 _OrthancPluginService_GetImageHeight = 6002,
622 _OrthancPluginService_GetImagePitch = 6003,
623 _OrthancPluginService_GetImageBuffer = 6004,
624 _OrthancPluginService_UncompressImage = 6005,
625 _OrthancPluginService_FreeImage = 6006,
626 _OrthancPluginService_CompressImage = 6007,
627 _OrthancPluginService_ConvertPixelFormat = 6008,
628 _OrthancPluginService_GetFontsCount = 6009,
629 _OrthancPluginService_GetFontInfo = 6010,
630 _OrthancPluginService_DrawText = 6011,
631 _OrthancPluginService_CreateImage = 6012,
632 _OrthancPluginService_CreateImageAccessor = 6013,
633 _OrthancPluginService_DecodeDicomImage = 6014,
636 _OrthancPluginService_WorklistAddAnswer = 7000,
637 _OrthancPluginService_WorklistMarkIncomplete = 7001,
638 _OrthancPluginService_WorklistIsMatch = 7002,
639 _OrthancPluginService_WorklistGetDicomQuery = 7003,
640 _OrthancPluginService_FindAddAnswer = 7004,
641 _OrthancPluginService_FindMarkIncomplete = 7005,
642 _OrthancPluginService_GetFindQuerySize = 7006,
643 _OrthancPluginService_GetFindQueryTag = 7007,
644 _OrthancPluginService_GetFindQueryTagName = 7008,
645 _OrthancPluginService_GetFindQueryValue = 7009,
646 _OrthancPluginService_CreateFindMatcher = 7010,
647 _OrthancPluginService_FreeFindMatcher = 7011,
648 _OrthancPluginService_FindMatcherIsMatch = 7012,
651 _OrthancPluginService_GetPeers = 8000,
652 _OrthancPluginService_FreePeers = 8001,
653 _OrthancPluginService_GetPeersCount = 8003,
654 _OrthancPluginService_GetPeerName = 8004,
655 _OrthancPluginService_GetPeerUrl = 8005,
656 _OrthancPluginService_CallPeerApi = 8006,
657 _OrthancPluginService_GetPeerUserProperty = 8007,
660 _OrthancPluginService_CreateJob = 9000,
661 _OrthancPluginService_FreeJob = 9001,
662 _OrthancPluginService_SubmitJob = 9002,
663 _OrthancPluginService_RegisterJobsUnserializer = 9003,
664 _OrthancPluginService_CreateJob2 = 9004,
666 _OrthancPluginService_INTERNAL = 0x7fffffff
667 } _OrthancPluginService;
672 _OrthancPluginProperty_Description = 1,
673 _OrthancPluginProperty_RootUri = 2,
674 _OrthancPluginProperty_OrthancExplorer = 3,
676 _OrthancPluginProperty_INTERNAL = 0x7fffffff
677 } _OrthancPluginProperty;
769 _OrthancPluginPixelFormat_INTERNAL = 0x7fffffff
784 _OrthancPluginContentType_INTERNAL = 0x7fffffff
800 _OrthancPluginResourceType_INTERNAL = 0x7fffffff
832 _OrthancPluginChangeType_INTERNAL = 0x7fffffff
848 _OrthancPluginCompressionType_INTERNAL = 0x7fffffff
862 _OrthancPluginImageFormat_INTERNAL = 0x7fffffff
900 _OrthancPluginValueRepresentation_INTERNAL = 0x7fffffff
915 _OrthancPluginDicomToJsonFormat_INTERNAL = 0x7fffffff
936 _OrthancPluginDicomToJsonFlags_INTERNAL = 0x7fffffff
951 _OrthancPluginCreateDicomFlags_INTERNAL = 0x7fffffff
967 _OrthancPluginIdentifierConstraint_INTERNAL = 0x7fffffff
983 _OrthancPluginConstraintType_INTERNAL = 0x7fffffff
999 _OrthancPluginInstanceOrigin_INTERNAL = 0x7fffffff
1006 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
1020 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
1032 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
1049 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
1062 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.6.0")
1110 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.10.0")
1116 _OrthancPluginReceivedInstanceAction_INTERNAL = 0x7fffffff
1124 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.1")
1144 _OrthancPluginLoadDicomInstanceMode_INTERNAL = 0x7fffffff
1154 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.4")
1161 _OrthancPluginLogLevel_INTERNAL = 0x7fffffff
1171 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.4")
1181 _OrthancPluginLogCategory_INTERNAL = 0x7fffffff
1188 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
1196 _OrthancPluginStoreStatus_INTERNAL = 0x7fffffff
1203 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
1208 _OrthancPluginQueueOrigin_INTERNAL = 0x7fffffff
1215 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
1220 _OrthancPluginStableStatus_INTERNAL = 0x7fffffff
1227 typedef enum ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
1234 _OrthancPluginHttpAuthenticationStatus_INTERNAL = 0x7fffffff
1267 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.0") typedef struct
1335 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.1.0")
1344 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.1.0")
1353 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.2.0")
1362 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.4.2")
1371 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.4.2")
1381 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.5.4")
1403 const char* instanceId);
1414 const char* resourceId);
1425 const uint32_t size,
1426 uint32_t frameIndex);
1447 const char* bulkDataUri);
1465 const void* content,
1536 uint64_t rangeStart);
1577 const void* content,
1607 uint64_t rangeStart,
1608 const void* customData,
1609 uint32_t customDataSize);
1629 const void* customData,
1630 uint32_t customDataSize);
1649 const char* issuerAet,
1650 const char* calledAet);
1681 uint32_t headersCount,
1682 const char*
const* headersKeys,
1683 const char*
const* headersValues);
1720 uint32_t headersCount,
1721 const char*
const* headersKeys,
1722 const char*
const* headersValues,
1723 uint32_t getArgumentsCount,
1724 const char*
const* getArgumentsKeys,
1725 const char*
const* getArgumentsValues);
1746 const char* issuerAet,
1747 const char* calledAet);
1786 typedef void* (*OrthancPluginMoveCallback) (
1788 const char* patientId,
1789 const char* accessionNumber,
1790 const char* studyInstanceUid,
1791 const char* seriesInstanceUid,
1792 const char* sopInstanceUid,
1793 const char* originatorAet,
1794 const char* sourceAet,
1795 const char* targetAet,
1796 uint16_t originatorId);
1882 typedef const char* (*OrthancPluginJobGetContent) (
void* job);
1920 typedef const char* (*OrthancPluginJobGetSerialized) (
void* job);
2014 const char* serialized);
2063 uint32_t levelDepth,
2064 const uint16_t* levelTagGroup,
2065 const uint16_t* levelTagElement,
2066 const uint32_t* levelIndex,
2068 uint16_t tagElement,
2101 uint32_t levelDepth,
2102 const uint16_t* levelTagGroup,
2103 const uint16_t* levelTagElement,
2104 const uint32_t* levelIndex,
2106 uint16_t tagElement,
2115 typedef struct _OrthancPluginContext_t
2117 void* pluginsManager;
2118 const char* orthancVersion;
2121 _OrthancPluginService service,
2122 const void* params);
2179 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.0")
2182 int32_t expectedMajor,
2183 int32_t expectedMinor,
2184 int32_t expectedRevision)
2186 int32_t major, minor, revision;
2188 if (
sizeof(
int) !=
sizeof(int32_t) ||
2191 sizeof(int32_t) !=
sizeof(_OrthancPluginService) ||
2192 sizeof(int32_t) !=
sizeof(_OrthancPluginProperty) ||
2225 if (!strcmp(context->orthancVersion,
"mainline"))
2237 (context->orthancVersion,
"%4d.%4d.%4d", &major, &minor, &revision) != 3)
2244 if (major > expectedMajor)
2249 if (major < expectedMajor)
2256 if (minor > expectedMinor)
2261 if (minor < expectedMinor)
2268 if (revision >= expectedRevision)
2300 ORTHANC_PLUGINS_MINIMAL_MAJOR_NUMBER,
2301 ORTHANC_PLUGINS_MINIMAL_MINOR_NUMBER,
2302 ORTHANC_PLUGINS_MINIMAL_REVISION_NUMBER);
2318 context->Free(buffer->
data);
2330 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.0")
2335 context->Free(buffer->data);
2349 const char* message)
2351 context->InvokeService(context, _OrthancPluginService_LogError, message);
2365 const char* message)
2367 context->InvokeService(context, _OrthancPluginService_LogWarning, message);
2381 const char* message)
2383 context->InvokeService(context, _OrthancPluginService_LogInfo, message);
2390 const char* pathRegularExpression;
2392 } _OrthancPluginRestCallback;
2417 const char* pathRegularExpression,
2420 _OrthancPluginRestCallback params;
2421 params.pathRegularExpression = pathRegularExpression;
2422 params.callback = callback;
2423 context->InvokeService(context, _OrthancPluginService_RegisterRestCallback, ¶ms);
2457 const char* pathRegularExpression,
2460 _OrthancPluginRestCallback params;
2461 params.pathRegularExpression = pathRegularExpression;
2462 params.callback = callback;
2463 context->InvokeService(context, _OrthancPluginService_RegisterRestCallbackNoLock, ¶ms);
2471 } _OrthancPluginOnStoredInstanceCallback;
2497 _OrthancPluginOnStoredInstanceCallback params;
2498 params.callback = callback;
2500 context->InvokeService(context, _OrthancPluginService_RegisterOnStoredInstanceCallback, ¶ms);
2509 uint32_t answerSize;
2510 const char* mimeType;
2511 } _OrthancPluginAnswerBuffer;
2529 uint32_t answerSize,
2530 const char* mimeType)
2532 _OrthancPluginAnswerBuffer params;
2533 params.output = output;
2534 params.answer = answer;
2535 params.answerSize = answerSize;
2536 params.mimeType = mimeType;
2537 context->InvokeService(context, _OrthancPluginService_AnswerBuffer, ¶ms);
2549 } _OrthancPluginCompressAndAnswerPngImage;
2561 } _OrthancPluginCompressAndAnswerImage;
2591 _OrthancPluginCompressAndAnswerImage params;
2592 params.output = output;
2594 params.pixelFormat = format;
2595 params.width = width;
2596 params.height = height;
2597 params.pitch = pitch;
2598 params.buffer = buffer;
2600 context->InvokeService(context, _OrthancPluginService_CompressAndAnswerImage, ¶ms);
2608 const char* instanceId;
2609 } _OrthancPluginGetDicomForInstance;
2626 const char* instanceId)
2628 _OrthancPluginGetDicomForInstance params;
2629 params.target = target;
2630 params.instanceId = instanceId;
2631 return context->InvokeService(context, _OrthancPluginService_GetDicomForInstance, ¶ms);
2640 } _OrthancPluginRestApiGet;
2661 _OrthancPluginRestApiGet params;
2662 params.target = target;
2664 return context->InvokeService(context, _OrthancPluginService_RestApiGet, ¶ms);
2691 _OrthancPluginRestApiGet params;
2692 params.target = target;
2694 return context->InvokeService(context, _OrthancPluginService_RestApiGetAfterPlugins, ¶ms);
2705 } _OrthancPluginRestApiPostPut;
2730 _OrthancPluginRestApiPostPut params;
2731 params.target = target;
2734 params.bodySize = bodySize;
2735 return context->InvokeService(context, _OrthancPluginService_RestApiPost, ¶ms);
2765 _OrthancPluginRestApiPostPut params;
2766 params.target = target;
2769 params.bodySize = bodySize;
2770 return context->InvokeService(context, _OrthancPluginService_RestApiPostAfterPlugins, ¶ms);
2791 return context->InvokeService(context, _OrthancPluginService_RestApiDelete, uri);
2814 return context->InvokeService(context, _OrthancPluginService_RestApiDeleteAfterPlugins, uri);
2842 _OrthancPluginRestApiPostPut params;
2843 params.target = target;
2846 params.bodySize = bodySize;
2847 return context->InvokeService(context, _OrthancPluginService_RestApiPut, ¶ms);
2878 _OrthancPluginRestApiPostPut params;
2879 params.target = target;
2882 params.bodySize = bodySize;
2883 return context->InvokeService(context, _OrthancPluginService_RestApiPutAfterPlugins, ¶ms);
2891 const char* argument;
2892 } _OrthancPluginOutputPlusArgument;
2908 const char* redirection)
2910 _OrthancPluginOutputPlusArgument params;
2911 params.output = output;
2912 params.argument = redirection;
2913 context->InvokeService(context, _OrthancPluginService_Redirect, ¶ms);
2921 const char* argument;
2922 } _OrthancPluginRetrieveDynamicString;
2939 const char* patientID)
2943 _OrthancPluginRetrieveDynamicString params;
2944 params.result = &result;
2945 params.argument = patientID;
2974 const char* studyUID)
2978 _OrthancPluginRetrieveDynamicString params;
2979 params.result = &result;
2980 params.argument = studyUID;
3009 const char* accessionNumber)
3013 _OrthancPluginRetrieveDynamicString params;
3014 params.result = &result;
3015 params.argument = accessionNumber;
3044 const char* seriesUID)
3048 _OrthancPluginRetrieveDynamicString params;
3049 params.result = &result;
3050 params.argument = seriesUID;
3079 const char* sopInstanceUID)
3083 _OrthancPluginRetrieveDynamicString params;
3084 params.result = &result;
3085 params.argument = sopInstanceUID;
3104 } _OrthancPluginSendHttpStatusCode;
3127 _OrthancPluginSendHttpStatusCode params;
3128 params.output = output;
3129 params.status = status;
3130 context->InvokeService(context, _OrthancPluginService_SendHttpStatusCode, ¶ms);
3150 _OrthancPluginOutputPlusArgument params;
3151 params.output = output;
3152 params.argument = realm;
3153 context->InvokeService(context, _OrthancPluginService_SendUnauthorized, ¶ms);
3171 const char* allowedMethods)
3173 _OrthancPluginOutputPlusArgument params;
3174 params.output = output;
3175 params.argument = allowedMethods;
3176 context->InvokeService(context, _OrthancPluginService_SendMethodNotAllowed, ¶ms);
3185 } _OrthancPluginSetHttpHeader;
3204 _OrthancPluginSetHttpHeader params;
3205 params.output = output;
3206 params.key = cookie;
3207 params.value = value;
3208 context->InvokeService(context, _OrthancPluginService_SetCookie, ¶ms);
3229 _OrthancPluginSetHttpHeader params;
3230 params.output = output;
3232 params.value = value;
3233 context->InvokeService(context, _OrthancPluginService_SetHttpHeader, ¶ms);
3239 char** resultStringToFree;
3240 const char** resultString;
3241 int64_t* resultInt64;
3245 } _OrthancPluginAccessDicomInstance;
3265 _OrthancPluginAccessDicomInstance params;
3266 memset(¶ms, 0,
sizeof(params));
3267 params.resultString = &result;
3268 params.instance = instance;
3298 _OrthancPluginAccessDicomInstance params;
3299 memset(¶ms, 0,
sizeof(params));
3300 params.resultInt64 = &size;
3301 params.instance = instance;
3331 _OrthancPluginAccessDicomInstance params;
3332 memset(¶ms, 0,
sizeof(params));
3333 params.resultString = &result;
3334 params.instance = instance;
3367 _OrthancPluginAccessDicomInstance params;
3368 memset(¶ms, 0,
sizeof(params));
3369 params.resultStringToFree = &result;
3370 params.instance = instance;
3405 _OrthancPluginAccessDicomInstance params;
3406 memset(¶ms, 0,
sizeof(params));
3407 params.resultStringToFree = &result;
3408 params.instance = instance;
3441 const char* metadata)
3445 _OrthancPluginAccessDicomInstance params;
3446 memset(¶ms, 0,
sizeof(params));
3447 params.resultInt64 = &result;
3448 params.instance = instance;
3449 params.key = metadata;
3458 return (result != 0);
3482 const char* metadata)
3486 _OrthancPluginAccessDicomInstance params;
3487 memset(¶ms, 0,
sizeof(params));
3488 params.resultString = &result;
3489 params.instance = instance;
3490 params.key = metadata;
3511 } _OrthancPluginRegisterStorageArea;
3534 _OrthancPluginRegisterStorageArea params;
3535 params.create = create;
3537 params.remove = remove;
3540 params.free = ::free;
3545 context->InvokeService(context, _OrthancPluginService_RegisterStorageArea, ¶ms);
3564 _OrthancPluginRetrieveDynamicString params;
3565 params.result = &result;
3566 params.argument = NULL;
3594 _OrthancPluginRetrieveDynamicString params;
3595 params.result = &result;
3596 params.argument = NULL;
3629 _OrthancPluginRetrieveDynamicString params;
3630 params.result = &result;
3631 params.argument = NULL;
3649 } _OrthancPluginOnChangeCallback;
3675 _OrthancPluginOnChangeCallback params;
3676 params.callback = callback;
3678 context->InvokeService(context, _OrthancPluginService_RegisterOnChangeCallback, ¶ms);
3686 _OrthancPluginProperty property;
3688 } _OrthancPluginSetPluginProperty;
3710 _OrthancPluginSetPluginProperty params;
3711 params.plugin = OrthancPluginGetName();
3712 params.property = _OrthancPluginProperty_RootUri;
3715 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3736 _OrthancPluginSetPluginProperty params;
3737 params.plugin = plugin;
3738 params.property = _OrthancPluginProperty_RootUri;
3741 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3760 const char* description)
3762 _OrthancPluginSetPluginProperty params;
3763 params.plugin = OrthancPluginGetName();
3764 params.property = _OrthancPluginProperty_Description;
3765 params.value = description;
3767 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3784 const char* description)
3786 _OrthancPluginSetPluginProperty params;
3787 params.plugin = plugin;
3788 params.property = _OrthancPluginProperty_Description;
3789 params.value = description;
3791 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3810 const char* javascript)
3812 _OrthancPluginSetPluginProperty params;
3813 params.plugin = OrthancPluginGetName();
3814 params.property = _OrthancPluginProperty_OrthancExplorer;
3815 params.value = javascript;
3817 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3834 const char* javascript)
3836 _OrthancPluginSetPluginProperty params;
3837 params.plugin = plugin;
3838 params.property = _OrthancPluginProperty_OrthancExplorer;
3839 params.value = javascript;
3841 context->InvokeService(context, _OrthancPluginService_SetPluginProperty, ¶ms);
3850 } _OrthancPluginGlobalProperty;
3869 const char* defaultValue)
3873 _OrthancPluginGlobalProperty params;
3874 params.result = &result;
3875 params.property = property;
3876 params.value = defaultValue;
3910 _OrthancPluginGlobalProperty params;
3911 params.result = NULL;
3912 params.property = property;
3913 params.value = value;
3915 return context->InvokeService(context, _OrthancPluginService_SetGlobalProperty, ¶ms);
3922 int32_t *resultInt32;
3923 uint32_t *resultUint32;
3924 int64_t *resultInt64;
3925 uint64_t *resultUint64;
3926 } _OrthancPluginReturnSingleValue;
3941 _OrthancPluginReturnSingleValue params;
3942 memset(¶ms, 0,
sizeof(params));
3943 params.resultUint32 = &count;
3976 _OrthancPluginGlobalProperty params;
3977 params.result = &result;
3978 params.property = (int32_t) argument;
3979 params.value = NULL;
4007 _OrthancPluginReturnSingleValue params;
4008 memset(¶ms, 0,
sizeof(params));
4009 params.resultUint32 = &count;
4039 _OrthancPluginRetrieveDynamicString params;
4040 params.result = &result;
4041 params.argument = NULL;
4059 const char* subType;
4060 const char* contentType;
4061 } _OrthancPluginStartMultipartAnswer;
4079 const char* subType,
4080 const char* contentType)
4082 _OrthancPluginStartMultipartAnswer params;
4083 params.output = output;
4084 params.subType = subType;
4085 params.contentType = contentType;
4086 return context->InvokeService(context, _OrthancPluginService_StartMultipartAnswer, ¶ms);
4109 uint32_t answerSize)
4111 _OrthancPluginAnswerBuffer params;
4112 params.output = output;
4113 params.answer = answer;
4114 params.answerSize = answerSize;
4115 params.mimeType = NULL;
4116 return context->InvokeService(context, _OrthancPluginService_SendMultipartItem, ¶ms);
4128 } _OrthancPluginBufferCompression;
4155 _OrthancPluginBufferCompression params;
4156 params.target = target;
4157 params.source = source;
4159 params.compression = compression;
4160 params.uncompress = uncompress;
4162 return context->InvokeService(context, _OrthancPluginService_BufferCompression, ¶ms);
4171 } _OrthancPluginReadFile;
4189 _OrthancPluginReadFile params;
4190 params.target = target;
4192 return context->InvokeService(context, _OrthancPluginService_ReadFile, ¶ms);
4202 } _OrthancPluginWriteFile;
4221 _OrthancPluginWriteFile params;
4225 return context->InvokeService(context, _OrthancPluginService_WriteFile, ¶ms);
4232 const char** target;
4234 } _OrthancPluginGetErrorDescription;
4250 const char* result = NULL;
4252 _OrthancPluginGetErrorDescription params;
4253 params.target = &result;
4254 params.error = error;
4259 return "Unknown error code";
4275 } _OrthancPluginSendHttpStatus;
4306 _OrthancPluginSendHttpStatus params;
4307 params.output = output;
4308 params.status = status;
4310 params.bodySize = bodySize;
4311 context->InvokeService(context, _OrthancPluginService_SendHttpStatus, ¶ms);
4319 uint32_t* resultUint32;
4321 void** resultBuffer;
4322 } _OrthancPluginGetImageInfo;
4341 _OrthancPluginGetImageInfo params;
4342 memset(¶ms, 0,
sizeof(params));
4343 params.image = image;
4344 params.resultPixelFormat = ⌖
4374 _OrthancPluginGetImageInfo params;
4375 memset(¶ms, 0,
sizeof(params));
4376 params.image = image;
4377 params.resultUint32 = &width;
4407 _OrthancPluginGetImageInfo params;
4408 memset(¶ms, 0,
sizeof(params));
4409 params.image = image;
4410 params.resultUint32 = &height;
4442 _OrthancPluginGetImageInfo params;
4443 memset(¶ms, 0,
sizeof(params));
4444 params.image = image;
4445 params.resultUint32 = &pitch;
4474 void* target = NULL;
4476 _OrthancPluginGetImageInfo params;
4477 memset(¶ms, 0,
sizeof(params));
4478 params.resultBuffer = ⌖
4479 params.image = image;
4498 } _OrthancPluginUncompressImage;
4521 _OrthancPluginUncompressImage params;
4522 memset(¶ms, 0,
sizeof(params));
4523 params.target = ⌖
4526 params.format = format;
4544 } _OrthancPluginFreeImage;
4559 _OrthancPluginFreeImage params;
4560 params.image = image;
4562 context->InvokeService(context, _OrthancPluginService_FreeImage, ¶ms);
4578 } _OrthancPluginCompressImage;
4609 _OrthancPluginCompressImage params;
4610 memset(¶ms, 0,
sizeof(params));
4611 params.target = target;
4613 params.pixelFormat = format;
4614 params.width = width;
4615 params.height = height;
4616 params.pitch = pitch;
4617 params.buffer = buffer;
4620 return context->InvokeService(context, _OrthancPluginService_CompressImage, ¶ms);
4655 _OrthancPluginCompressImage params;
4656 memset(¶ms, 0,
sizeof(params));
4657 params.target = target;
4659 params.pixelFormat = format;
4660 params.width = width;
4661 params.height = height;
4662 params.pitch = pitch;
4663 params.buffer = buffer;
4664 params.quality = quality;
4666 return context->InvokeService(context, _OrthancPluginService_CompressImage, ¶ms);
4702 _OrthancPluginCompressAndAnswerImage params;
4703 params.output = output;
4705 params.pixelFormat = format;
4706 params.width = width;
4707 params.height = height;
4708 params.pitch = pitch;
4709 params.buffer = buffer;
4710 params.quality = quality;
4711 context->InvokeService(context, _OrthancPluginService_CompressAndAnswerImage, ¶ms);
4722 const char* username;
4723 const char* password;
4726 } _OrthancPluginCallHttpClient;
4749 const char* username,
4750 const char* password)
4752 _OrthancPluginCallHttpClient params;
4753 memset(¶ms, 0,
sizeof(params));
4755 params.target = target;
4758 params.username = username;
4759 params.password = password;
4761 return context->InvokeService(context, _OrthancPluginService_CallHttpClient, ¶ms);
4789 const char* username,
4790 const char* password)
4792 _OrthancPluginCallHttpClient params;
4793 memset(¶ms, 0,
sizeof(params));
4795 params.target = target;
4799 params.bodySize = bodySize;
4800 params.username = username;
4801 params.password = password;
4803 return context->InvokeService(context, _OrthancPluginService_CallHttpClient, ¶ms);
4831 const char* username,
4832 const char* password)
4834 _OrthancPluginCallHttpClient params;
4835 memset(¶ms, 0,
sizeof(params));
4837 params.target = target;
4841 params.bodySize = bodySize;
4842 params.username = username;
4843 params.password = password;
4845 return context->InvokeService(context, _OrthancPluginService_CallHttpClient, ¶ms);
4866 const char* username,
4867 const char* password)
4869 _OrthancPluginCallHttpClient params;
4870 memset(¶ms, 0,
sizeof(params));
4874 params.username = username;
4875 params.password = password;
4877 return context->InvokeService(context, _OrthancPluginService_CallHttpClient, ¶ms);
4887 } _OrthancPluginConvertPixelFormat;
4908 _OrthancPluginConvertPixelFormat params;
4909 params.target = ⌖
4910 params.source = source;
4911 params.targetFormat = targetFormat;
4941 _OrthancPluginReturnSingleValue params;
4942 memset(¶ms, 0,
sizeof(params));
4943 params.resultUint32 = &count;
4964 } _OrthancPluginGetFontInfo;
4980 const char* result = NULL;
4982 _OrthancPluginGetFontInfo params;
4983 memset(¶ms, 0,
sizeof(params));
4984 params.name = &result;
4985 params.fontIndex = fontIndex;
5014 _OrthancPluginGetFontInfo params;
5015 memset(¶ms, 0,
sizeof(params));
5016 params.size = &result;
5017 params.fontIndex = fontIndex;
5035 const char* utf8Text;
5041 } _OrthancPluginDrawText;
5065 const char* utf8Text,
5072 _OrthancPluginDrawText params;
5073 memset(¶ms, 0,
sizeof(params));
5074 params.image = image;
5075 params.fontIndex = fontIndex;
5076 params.utf8Text = utf8Text;
5083 return context->InvokeService(context, _OrthancPluginService_DrawText, ¶ms);
5092 const void* content;
5095 } _OrthancPluginStorageAreaCreate;
5121 const void* content,
5125 _OrthancPluginStorageAreaCreate params;
5126 params.storageArea = storageArea;
5128 params.content = content;
5132 return context->InvokeService(context, _OrthancPluginService_StorageAreaCreate, ¶ms);
5142 } _OrthancPluginStorageAreaRead;
5170 _OrthancPluginStorageAreaRead params;
5171 params.target = target;
5172 params.storageArea = storageArea;
5176 return context->InvokeService(context, _OrthancPluginService_StorageAreaRead, ¶ms);
5185 } _OrthancPluginStorageAreaRemove;
5210 _OrthancPluginStorageAreaRemove params;
5211 params.storageArea = storageArea;
5215 return context->InvokeService(context, _OrthancPluginService_StorageAreaRemove, ¶ms);
5224 uint16_t httpStatus;
5225 const char* message;
5226 } _OrthancPluginRegisterErrorCode;
5246 uint16_t httpStatus,
5247 const char* message)
5251 _OrthancPluginRegisterErrorCode params;
5252 params.target = ⌖
5254 params.httpStatus = httpStatus;
5255 params.message = message;
5276 uint32_t minMultiplicity;
5277 uint32_t maxMultiplicity;
5278 } _OrthancPluginRegisterDictionaryTag;
5305 uint32_t minMultiplicity,
5306 uint32_t maxMultiplicity)
5308 _OrthancPluginRegisterDictionaryTag params;
5309 params.group = group;
5310 params.element = element;
5313 params.minMultiplicity = minMultiplicity;
5314 params.maxMultiplicity = maxMultiplicity;
5316 return context->InvokeService(context, _OrthancPluginService_RegisterDictionaryTag, ¶ms);
5327 uint32_t minMultiplicity;
5328 uint32_t maxMultiplicity;
5329 const char* privateCreator;
5330 } _OrthancPluginRegisterPrivateDictionaryTag;
5352 ORTHANC_PLUGIN_SINCE_SDK(
"1.2.0")
5359 uint32_t minMultiplicity,
5360 uint32_t maxMultiplicity,
5361 const
char* privateCreator)
5363 _OrthancPluginRegisterPrivateDictionaryTag params;
5364 params.group = group;
5365 params.element = element;
5368 params.minMultiplicity = minMultiplicity;
5369 params.maxMultiplicity = maxMultiplicity;
5370 params.privateCreator = privateCreator;
5372 return context->InvokeService(context, _OrthancPluginService_RegisterPrivateDictionaryTag, ¶ms);
5381 } _OrthancPluginReconstructMainDicomTags;
5402 _OrthancPluginReconstructMainDicomTags params;
5403 params.level = level;
5404 params.storageArea = storageArea;
5406 return context->InvokeService(context, _OrthancPluginService_ReconstructMainDicomTags, ¶ms);
5413 const char* instanceId;
5418 uint32_t maxStringLength;
5419 } _OrthancPluginDicomToJson;
5447 uint32_t maxStringLength)
5451 _OrthancPluginDicomToJson params;
5452 memset(¶ms, 0,
sizeof(params));
5453 params.result = &result;
5454 params.buffer = buffer;
5456 params.format = format;
5457 params.flags = flags;
5458 params.maxStringLength = maxStringLength;
5492 const char* instanceId,
5495 uint32_t maxStringLength)
5499 _OrthancPluginDicomToJson params;
5500 memset(¶ms, 0,
sizeof(params));
5501 params.result = &result;
5502 params.instanceId = instanceId;
5503 params.format = format;
5504 params.flags = flags;
5505 params.maxStringLength = maxStringLength;
5523 uint32_t headersCount;
5524 const char*
const* headersKeys;
5525 const char*
const* headersValues;
5526 int32_t afterPlugins;
5527 } _OrthancPluginRestApiGet2;
5552 uint32_t headersCount,
5553 const char*
const* headersKeys,
5554 const char*
const* headersValues,
5555 int32_t afterPlugins)
5557 _OrthancPluginRestApiGet2 params;
5558 params.target = target;
5560 params.headersCount = headersCount;
5561 params.headersKeys = headersKeys;
5562 params.headersValues = headersValues;
5563 params.afterPlugins = afterPlugins;
5565 return context->InvokeService(context, _OrthancPluginService_RestApiGet2, ¶ms);
5573 } _OrthancPluginWorklistCallback;
5590 _OrthancPluginWorklistCallback params;
5591 params.callback = callback;
5593 return context->InvokeService(context, _OrthancPluginService_RegisterWorklistCallback, ¶ms);
5604 } _OrthancPluginWorklistAnswersOperation;
5629 _OrthancPluginWorklistAnswersOperation params;
5630 params.answers = answers;
5631 params.query = query;
5632 params.dicom = dicom;
5635 return context->InvokeService(context, _OrthancPluginService_WorklistAddAnswer, ¶ms);
5656 _OrthancPluginWorklistAnswersOperation params;
5657 params.answers = answers;
5658 params.query = NULL;
5659 params.dicom = NULL;
5662 return context->InvokeService(context, _OrthancPluginService_WorklistMarkIncomplete, ¶ms);
5673 } _OrthancPluginWorklistQueryOperation;
5696 int32_t isMatch = 0;
5698 _OrthancPluginWorklistQueryOperation params;
5699 params.query = query;
5700 params.dicom = dicom;
5702 params.isMatch = &isMatch;
5703 params.target = NULL;
5734 _OrthancPluginWorklistQueryOperation params;
5735 params.query = query;
5736 params.dicom = NULL;
5738 params.isMatch = NULL;
5739 params.target = target;
5741 return context->InvokeService(context, _OrthancPluginService_WorklistGetDicomQuery, ¶ms);
5761 _OrthancPluginAccessDicomInstance params;
5762 memset(¶ms, 0,
sizeof(params));
5763 params.resultOrigin = &origin;
5764 params.instance = instance;
5784 } _OrthancPluginCreateDicom;
5818 _OrthancPluginCreateDicom params;
5819 params.target = target;
5821 params.pixelData = pixelData;
5822 params.flags = flags;
5824 return context->InvokeService(context, _OrthancPluginService_CreateDicom, ¶ms);
5831 } _OrthancPluginDecodeImageCallback;
5851 _OrthancPluginDecodeImageCallback params;
5852 params.callback = callback;
5854 return context->InvokeService(context, _OrthancPluginService_RegisterDecodeImageCallback, ¶ms);
5867 const void* constBuffer;
5868 uint32_t bufferSize;
5869 uint32_t frameIndex;
5870 } _OrthancPluginCreateImage;
5893 _OrthancPluginCreateImage params;
5894 memset(¶ms, 0,
sizeof(params));
5895 params.target = ⌖
5896 params.format = format;
5897 params.width = width;
5898 params.height = height;
5938 _OrthancPluginCreateImage params;
5939 memset(¶ms, 0,
sizeof(params));
5940 params.target = ⌖
5941 params.format = format;
5942 params.width = width;
5943 params.height = height;
5944 params.pitch = pitch;
5945 params.buffer = buffer;
5977 uint32_t bufferSize,
5978 uint32_t frameIndex)
5982 _OrthancPluginCreateImage params;
5983 memset(¶ms, 0,
sizeof(params));
5984 params.target = ⌖
5985 params.constBuffer = buffer;
5986 params.bufferSize = bufferSize;
5987 params.frameIndex = frameIndex;
6006 } _OrthancPluginComputeHash;
6027 _OrthancPluginComputeHash params;
6028 params.result = &result;
6029 params.buffer = buffer;
6063 _OrthancPluginComputeHash params;
6064 params.result = &result;
6065 params.buffer = buffer;
6085 } _OrthancPluginLookupDictionary;
6107 _OrthancPluginLookupDictionary params;
6108 params.target = target;
6110 return context->InvokeService(context, _OrthancPluginService_LookupDictionary, ¶ms);
6119 uint32_t answerSize;
6120 uint32_t headersCount;
6121 const char*
const* headersKeys;
6122 const char*
const* headersValues;
6123 } _OrthancPluginSendMultipartItem2;
6145 ORTHANC_PLUGIN_SINCE_SDK(
"1.0.0")
6150 uint32_t answerSize,
6151 uint32_t headersCount,
6152 const
char* const* headersKeys,
6153 const
char* const* headersValues)
6155 _OrthancPluginSendMultipartItem2 params;
6156 params.output = output;
6157 params.answer = answer;
6158 params.answerSize = answerSize;
6159 params.headersCount = headersCount;
6160 params.headersKeys = headersKeys;
6161 params.headersValues = headersValues;
6163 return context->InvokeService(context, _OrthancPluginService_SendMultipartItem2, ¶ms);
6170 } _OrthancPluginIncomingHttpRequestFilter;
6184 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6189 _OrthancPluginIncomingHttpRequestFilter params;
6190 params.callback = callback;
6192 return context->InvokeService(context, _OrthancPluginService_RegisterIncomingHttpRequestFilter, ¶ms);
6201 uint16_t* httpStatus;
6204 uint32_t headersCount;
6205 const char*
const* headersKeys;
6206 const char*
const* headersValues;
6209 const char* username;
6210 const char* password;
6212 const char* certificateFile;
6213 const char* certificateKeyFile;
6214 const char* certificateKeyPassword;
6216 } _OrthancPluginCallHttpClient2;
6260 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6265 uint16_t* httpStatus,
6268 uint32_t headersCount,
6269 const
char* const* headersKeys,
6270 const
char* const* headersValues,
6273 const
char* username,
6274 const
char* password,
6276 const
char* certificateFile,
6277 const
char* certificateKeyFile,
6278 const
char* certificateKeyPassword,
6281 _OrthancPluginCallHttpClient2 params;
6282 memset(¶ms, 0,
sizeof(params));
6284 params.answerBody = answerBody;
6285 params.answerHeaders = answerHeaders;
6286 params.httpStatus = httpStatus;
6287 params.method = method;
6289 params.headersCount = headersCount;
6290 params.headersKeys = headersKeys;
6291 params.headersValues = headersValues;
6293 params.bodySize = bodySize;
6294 params.username = username;
6295 params.password = password;
6296 params.timeout = timeout;
6297 params.certificateFile = certificateFile;
6298 params.certificateKeyFile = certificateKeyFile;
6299 params.certificateKeyPassword = certificateKeyPassword;
6300 params.pkcs11 = pkcs11;
6302 return context->InvokeService(context, _OrthancPluginService_CallHttpClient2, ¶ms);
6316 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6322 _OrthancPluginRetrieveDynamicString params;
6323 params.result = &result;
6324 params.argument = NULL;
6343 } _OrthancPluginFindCallback;
6356 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6361 _OrthancPluginFindCallback params;
6362 params.callback = callback;
6364 return context->InvokeService(context, _OrthancPluginService_RegisterFindCallback, ¶ms);
6375 uint32_t *resultUint32;
6376 uint16_t *resultGroup;
6377 uint16_t *resultElement;
6378 char **resultString;
6379 } _OrthancPluginFindOperation;
6396 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6403 _OrthancPluginFindOperation params;
6404 memset(¶ms, 0,
sizeof(params));
6405 params.answers = answers;
6406 params.dicom = dicom;
6409 return context->InvokeService(context, _OrthancPluginService_FindAddAnswer, ¶ms);
6426 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6431 _OrthancPluginFindOperation params;
6432 memset(¶ms, 0,
sizeof(params));
6433 params.answers = answers;
6435 return context->InvokeService(context, _OrthancPluginService_FindMarkIncomplete, ¶ms);
6451 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6458 _OrthancPluginFindOperation params;
6459 memset(¶ms, 0,
sizeof(params));
6460 params.query = query;
6461 params.resultUint32 = &count;
6489 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6497 _OrthancPluginFindOperation params;
6498 memset(¶ms, 0,
sizeof(params));
6499 params.query = query;
6500 params.index = index;
6501 params.resultGroup = group;
6502 params.resultElement = element;
6504 return context->InvokeService(context, _OrthancPluginService_GetFindQueryTag, ¶ms);
6521 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6529 _OrthancPluginFindOperation params;
6530 memset(¶ms, 0,
sizeof(params));
6531 params.query = query;
6532 params.index = index;
6533 params.resultString = &result;
6560 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6568 _OrthancPluginFindOperation params;
6569 memset(¶ms, 0,
sizeof(params));
6570 params.query = query;
6571 params.index = index;
6572 params.resultString = &result;
6594 } _OrthancPluginMoveCallback;
6609 ORTHANC_PLUGIN_SINCE_SDK(
"1.1.0")
6617 _OrthancPluginMoveCallback params;
6618 params.callback = callback;
6619 params.getMoveSize = getMoveSize;
6620 params.applyMove = applyMove;
6621 params.freeMove = freeMove;
6623 return context->InvokeService(context, _OrthancPluginService_RegisterMoveCallback, ¶ms);
6633 } _OrthancPluginCreateFindMatcher;
6649 ORTHANC_PLUGIN_SINCE_SDK(
"1.2.0")
6657 _OrthancPluginCreateFindMatcher params;
6658 memset(¶ms, 0,
sizeof(params));
6659 params.target = ⌖
6660 params.query = query;
6677 } _OrthancPluginFreeFindMatcher;
6688 ORTHANC_PLUGIN_SINCE_SDK(
"1.2.0")
6693 _OrthancPluginFreeFindMatcher params;
6694 params.matcher = matcher;
6696 context->InvokeService(context, _OrthancPluginService_FreeFindMatcher, ¶ms);
6706 } _OrthancPluginFindMatcherIsMatch;
6722 ORTHANC_PLUGIN_SINCE_SDK(
"1.2.0")
6729 int32_t isMatch = 0;
6731 _OrthancPluginFindMatcherIsMatch params;
6732 params.matcher = matcher;
6733 params.dicom = dicom;
6735 params.isMatch = &isMatch;
6752 } _OrthancPluginIncomingHttpRequestFilter2;
6765 ORTHANC_PLUGIN_SINCE_SDK(
"1.3.0")
6770 _OrthancPluginIncomingHttpRequestFilter2 params;
6771 params.callback = callback;
6773 return context->InvokeService(context, _OrthancPluginService_RegisterIncomingHttpRequestFilter2, ¶ms);
6781 } _OrthancPluginGetPeers;
6794 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
6800 _OrthancPluginGetPeers params;
6801 memset(¶ms, 0,
sizeof(params));
6802 params.peers = &peers;
6818 } _OrthancPluginFreePeers;
6829 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
6834 _OrthancPluginFreePeers params;
6835 params.peers = peers;
6837 context->InvokeService(context, _OrthancPluginService_FreePeers, ¶ms);
6845 } _OrthancPluginGetPeersCount;
6860 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
6865 uint32_t target = 0;
6867 _OrthancPluginGetPeersCount params;
6868 memset(¶ms, 0,
sizeof(params));
6869 params.target = ⌖
6870 params.peers = peers;
6886 const char** target;
6889 const char* userProperty;
6890 } _OrthancPluginGetPeerProperty;
6909 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
6915 const char* target = NULL;
6917 _OrthancPluginGetPeerProperty params;
6918 memset(¶ms, 0,
sizeof(params));
6919 params.target = ⌖
6920 params.peers = peers;
6921 params.peerIndex = peerIndex;
6922 params.userProperty = NULL;
6951 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
6957 const char* target = NULL;
6959 _OrthancPluginGetPeerProperty params;
6960 memset(¶ms, 0,
sizeof(params));
6961 params.target = ⌖
6962 params.peers = peers;
6963 params.peerIndex = peerIndex;
6964 params.userProperty = NULL;
6998 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7003 const
char* userProperty)
7005 const char* target = NULL;
7007 _OrthancPluginGetPeerProperty params;
7008 memset(¶ms, 0,
sizeof(params));
7009 params.target = ⌖
7010 params.peers = peers;
7011 params.peerIndex = peerIndex;
7012 params.userProperty = userProperty;
7031 uint16_t* httpStatus;
7036 uint32_t additionalHeadersCount;
7037 const char*
const* additionalHeadersKeys;
7038 const char*
const* additionalHeadersValues;
7042 } _OrthancPluginCallPeerApi;
7080 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7085 uint16_t* httpStatus,
7090 uint32_t additionalHeadersCount,
7091 const
char* const* additionalHeadersKeys,
7092 const
char* const* additionalHeadersValues,
7097 _OrthancPluginCallPeerApi params;
7098 memset(¶ms, 0,
sizeof(params));
7100 params.answerBody = answerBody;
7101 params.answerHeaders = answerHeaders;
7102 params.httpStatus = httpStatus;
7103 params.peers = peers;
7104 params.peerIndex = peerIndex;
7105 params.method = method;
7107 params.additionalHeadersCount = additionalHeadersCount;
7108 params.additionalHeadersKeys = additionalHeadersKeys;
7109 params.additionalHeadersValues = additionalHeadersValues;
7111 params.bodySize = bodySize;
7112 params.timeout = timeout;
7114 return context->InvokeService(context, _OrthancPluginService_CallPeerApi, ¶ms);
7133 } _OrthancPluginCreateJob;
7167 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7182 _OrthancPluginCreateJob params;
7183 memset(¶ms, 0,
sizeof(params));
7185 params.target = ⌖
7187 params.finalize = finalize;
7189 params.getProgress = getProgress;
7190 params.getContent = getContent;
7191 params.getSerialized = getSerialized;
7194 params.reset = reset;
7221 } _OrthancPluginCreateJob2;
7254 ORTHANC_PLUGIN_SINCE_SDK(
"1.11.3")
7269 _OrthancPluginCreateJob2 params;
7270 memset(¶ms, 0,
sizeof(params));
7272 params.target = ⌖
7274 params.finalize = finalize;
7276 params.getProgress = getProgress;
7277 params.getContent = getContent;
7278 params.getSerialized = getSerialized;
7281 params.reset = reset;
7299 } _OrthancPluginFreeJob;
7310 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7315 _OrthancPluginFreeJob params;
7318 context->InvokeService(context, _OrthancPluginService_FreeJob, ¶ms);
7328 } _OrthancPluginSubmitJob;
7343 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7349 char* resultId = NULL;
7351 _OrthancPluginSubmitJob params;
7352 memset(¶ms, 0,
sizeof(params));
7354 params.resultId = &resultId;
7356 params.priority = priority;
7375 } _OrthancPluginJobsUnserializer;
7389 ORTHANC_PLUGIN_SINCE_SDK(
"1.4.2")
7394 _OrthancPluginJobsUnserializer params;
7395 params.unserializer = unserializer;
7397 context->InvokeService(context, _OrthancPluginService_RegisterJobsUnserializer, ¶ms);
7405 const char* details;
7407 } _OrthancPluginSetHttpErrorDetails;
7426 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.0")
7430 const
char* details,
7433 _OrthancPluginSetHttpErrorDetails params;
7434 params.output = output;
7435 params.details = details;
7437 context->InvokeService(context, _OrthancPluginService_SetHttpErrorDetails, ¶ms);
7444 const char** result;
7445 const char* argument;
7446 } _OrthancPluginRetrieveStaticString;
7459 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.0")
7464 const char* result = NULL;
7466 _OrthancPluginRetrieveStaticString params;
7467 params.result = &result;
7468 params.argument = path;
7488 } _OrthancPluginSetMetricsValue;
7506 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
7513 _OrthancPluginSetMetricsValue params;
7515 params.value = value;
7517 context->InvokeService(context, _OrthancPluginService_SetMetricsValue, ¶ms);
7525 } _OrthancPluginRegisterRefreshMetricsCallback;
7538 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
7543 _OrthancPluginRegisterRefreshMetricsCallback params;
7544 params.callback = callback;
7545 context->InvokeService(context, _OrthancPluginService_RegisterRefreshMetricsCallback, ¶ms);
7557 } _OrthancPluginEncodeDicomWeb;
7575 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
7582 char* target = NULL;
7584 _OrthancPluginEncodeDicomWeb params;
7585 params.target = ⌖
7586 params.dicom = dicom;
7587 params.dicomSize = dicomSize;
7588 params.callback = callback;
7618 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.4")
7625 char* target = NULL;
7627 _OrthancPluginEncodeDicomWeb params;
7628 params.target = ⌖
7629 params.dicom = dicom;
7630 params.dicomSize = dicomSize;
7631 params.callback = callback;
7653 } _OrthancPluginEncodeDicomWeb2;
7671 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
7679 char* target = NULL;
7681 _OrthancPluginEncodeDicomWeb2 params;
7682 params.target = ⌖
7683 params.dicom = dicom;
7684 params.dicomSize = dicomSize;
7685 params.callback = callback;
7686 params.payload = payload;
7716 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
7724 char* target = NULL;
7726 _OrthancPluginEncodeDicomWeb2 params;
7727 params.target = ⌖
7728 params.dicom = dicom;
7729 params.dicomSize = dicomSize;
7730 params.callback = callback;
7731 params.payload = payload;
7835 typedef const void* (*OrthancPluginChunkedClientRequestGetChunkData) (
void* request);
7859 uint16_t* httpStatus;
7862 uint32_t headersCount;
7863 const char*
const* headersKeys;
7864 const char*
const* headersValues;
7870 const char* username;
7871 const char* password;
7873 const char* certificateFile;
7874 const char* certificateKeyFile;
7875 const char* certificateKeyPassword;
7877 } _OrthancPluginChunkedHttpClient;
7930 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.7")
7936 uint16_t* httpStatus,
7939 uint32_t headersCount,
7940 const
char* const* headersKeys,
7941 const
char* const* headersValues,
7947 const
char* username,
7948 const
char* password,
7950 const
char* certificateFile,
7951 const
char* certificateKeyFile,
7952 const
char* certificateKeyPassword,
7955 _OrthancPluginChunkedHttpClient params;
7956 memset(¶ms, 0,
sizeof(params));
7959 params.httpStatus = httpStatus;
7960 params.method = method;
7962 params.headersCount = headersCount;
7963 params.headersKeys = headersKeys;
7964 params.headersValues = headersValues;
7965 params.username = username;
7966 params.password = password;
7967 params.timeout = timeout;
7968 params.certificateFile = certificateFile;
7969 params.certificateKeyFile = certificateKeyFile;
7970 params.certificateKeyPassword = certificateKeyPassword;
7971 params.pkcs11 = pkcs11;
7974 params.answer = answer;
7975 params.answerAddChunk = answerAddChunk;
7976 params.answerAddHeader = answerAddHeader;
7977 params.request = request;
7978 params.requestIsDone = requestIsDone;
7979 params.requestChunkData = requestChunkData;
7980 params.requestChunkSize = requestChunkSize;
7981 params.requestNext = requestNext;
7983 return context->InvokeService(context, _OrthancPluginService_ChunkedHttpClient, ¶ms);
7992 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.5.7")
8074 const char* pathRegularExpression;
8082 } _OrthancPluginChunkedRestCallback;
8114 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.7")
8117 const
char* pathRegularExpression,
8126 _OrthancPluginChunkedRestCallback params;
8127 params.pathRegularExpression = pathRegularExpression;
8128 params.getHandler = getHandler;
8129 params.postHandler = postHandler;
8130 params.deleteHandler = deleteHandler;
8131 params.putHandler = putHandler;
8132 params.addChunk = addChunk;
8133 params.execute = execute;
8134 params.finalize = finalize;
8136 context->InvokeService(context, _OrthancPluginService_RegisterChunkedRestCallback, ¶ms);
8148 const char* privateCreator;
8149 } _OrthancPluginGetTagName;
8166 ORTHANC_PLUGIN_SINCE_SDK(
"1.5.7")
8171 const
char* privateCreator)
8175 _OrthancPluginGetTagName params;
8176 params.result = &result;
8177 params.group = group;
8178 params.element = element;
8179 params.privateCreator = privateCreator;
8225 const char* transactionUid,
8226 const char*
const* sopClassUids,
8227 const char*
const* sopInstanceUids,
8228 uint32_t countInstances,
8229 const char* remoteAet,
8230 const char* calledAet);
8268 const char* sopClassUid,
8269 const char* sopInstanceUid);
8277 } _OrthancPluginRegisterStorageCommitmentScpCallback;
8292 ORTHANC_PLUGIN_SINCE_SDK(
"1.6.0")
8299 _OrthancPluginRegisterStorageCommitmentScpCallback params;
8300 params.factory = factory;
8301 params.destructor = destructor;
8302 params.lookup = lookup;
8303 return context->InvokeService(context, _OrthancPluginService_RegisterStorageCommitmentScpCallback, ¶ms);
8340 } _OrthancPluginIncomingDicomInstanceFilter;
8354 ORTHANC_PLUGIN_SINCE_SDK(
"1.6.1")
8359 _OrthancPluginIncomingDicomInstanceFilter params;
8360 params.callback = callback;
8362 return context->InvokeService(context, _OrthancPluginService_RegisterIncomingDicomInstanceFilter, ¶ms);
8397 uint16_t* dimseStatus ,
8404 } _OrthancPluginIncomingCStoreInstanceFilter;
8418 ORTHANC_PLUGIN_SINCE_SDK(
"1.10.0")
8423 _OrthancPluginIncomingCStoreInstanceFilter params;
8424 params.callback = callback;
8426 return context->InvokeService(context, _OrthancPluginService_RegisterIncomingCStoreInstanceFilter, ¶ms);
8466 const void* receivedDicomBuffer,
8467 uint64_t receivedDicomBufferSize,
8474 } _OrthancPluginReceivedInstanceCallback;
8496 ORTHANC_PLUGIN_SINCE_SDK(
"1.10.0")
8501 _OrthancPluginReceivedInstanceCallback params;
8502 params.callback = callback;
8504 return context->InvokeService(context, _OrthancPluginService_RegisterReceivedInstanceCallback, ¶ms);
8520 ORTHANC_PLUGIN_SINCE_SDK(
"1.6.1")
8527 _OrthancPluginAccessDicomInstance params;
8528 memset(¶ms, 0,
sizeof(params));
8529 params.resultStringToFree = &result;
8530 params.instance = instance;
8556 ORTHANC_PLUGIN_SINCE_SDK(
"1.6.1")
8561 int64_t hasPixelData;
8563 _OrthancPluginAccessDicomInstance params;
8564 memset(¶ms, 0,
sizeof(params));
8565 params.resultInt64 = &hasPixelData;
8566 params.instance = instance;
8577 return (hasPixelData != 0);
8591 const char* transferSyntax;
8592 } _OrthancPluginCreateDicomInstance;
8607 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8615 _OrthancPluginCreateDicomInstance params;
8616 params.target = ⌖
8617 params.buffer = buffer;
8634 } _OrthancPluginFreeDicomInstance;
8646 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8651 _OrthancPluginFreeDicomInstance params;
8652 params.dicom = dicom;
8654 context->InvokeService(context, _OrthancPluginService_FreeDicomInstance, ¶ms);
8660 uint32_t* targetUint32;
8663 char** targetStringToFree;
8665 uint32_t frameIndex;
8668 uint32_t maxStringLength;
8670 void* dicomWebPayload;
8671 } _OrthancPluginAccessDicomInstance2;
8684 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8691 _OrthancPluginAccessDicomInstance2 params;
8692 memset(¶ms, 0,
sizeof(params));
8693 params.targetUint32 = &count;
8694 params.instance = instance;
8725 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8730 uint32_t frameIndex)
8732 _OrthancPluginAccessDicomInstance2 params;
8733 memset(¶ms, 0,
sizeof(params));
8734 params.targetBuffer = target;
8735 params.instance = instance;
8736 params.frameIndex = frameIndex;
8738 return context->InvokeService(context, _OrthancPluginService_GetInstanceRawFrame, ¶ms);
8754 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8758 uint32_t frameIndex)
8762 _OrthancPluginAccessDicomInstance2 params;
8763 memset(¶ms, 0,
sizeof(params));
8764 params.targetImage = ⌖
8765 params.instance = instance;
8766 params.frameIndex = frameIndex;
8794 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8799 const
char* transferSyntax)
8803 _OrthancPluginCreateDicomInstance params;
8804 params.target = ⌖
8805 params.buffer = buffer;
8807 params.transferSyntax = transferSyntax;
8833 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8839 _OrthancPluginAccessDicomInstance2 params;
8840 memset(¶ms, 0,
sizeof(params));
8841 params.targetBuffer = target;
8842 params.instance = instance;
8844 return context->InvokeService(context, _OrthancPluginService_SerializeDicomInstance, ¶ms);
8866 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8872 uint32_t maxStringLength)
8874 char* result = NULL;
8876 _OrthancPluginAccessDicomInstance2 params;
8877 memset(¶ms, 0,
sizeof(params));
8878 params.targetStringToFree = &result;
8879 params.instance = instance;
8880 params.format = format;
8881 params.flags = flags;
8882 params.maxStringLength = maxStringLength;
8910 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8917 char* target = NULL;
8919 _OrthancPluginAccessDicomInstance2 params;
8920 params.targetStringToFree = ⌖
8921 params.instance = instance;
8922 params.dicomWebCallback = callback;
8923 params.dicomWebPayload = payload;
8951 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
8958 char* target = NULL;
8960 _OrthancPluginAccessDicomInstance2 params;
8961 params.targetStringToFree = ⌖
8962 params.instance = instance;
8963 params.dicomWebCallback = callback;
8964 params.dicomWebPayload = payload;
9001 const char*
const* allowedSyntaxes,
9002 uint32_t countSyntaxes,
9003 uint8_t allowNewSopInstanceUid);
9009 } _OrthancPluginTranscoderCallback;
9024 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
9029 _OrthancPluginTranscoderCallback params;
9030 params.callback = callback;
9032 return context->InvokeService(context, _OrthancPluginService_RegisterTranscoderCallback, ¶ms);
9041 } _OrthancPluginCreateMemoryBuffer;
9060 ORTHANC_PLUGIN_SINCE_SDK(
"1.7.0")
9066 _OrthancPluginCreateMemoryBuffer params;
9067 params.target = target;
9070 return context->InvokeService(context, _OrthancPluginService_CreateMemoryBuffer, ¶ms);
9099 ORTHANC_PLUGIN_SINCE_SDK(
"1.8.1")
9105 _OrthancPluginRetrieveDynamicString params;
9106 params.result = &result;
9107 params.argument = NULL;
9109 if (context->InvokeService(context, _OrthancPluginService_GenerateRestApiAuthorizationToken,
9127 } _OrthancPluginCreateMemoryBuffer64;
9146 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.0")
9152 _OrthancPluginCreateMemoryBuffer64 params;
9153 params.target = target;
9156 return context->InvokeService(context, _OrthancPluginService_CreateMemoryBuffer64, ¶ms);
9166 } _OrthancPluginRegisterStorageArea2;
9185 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.0")
9193 _OrthancPluginRegisterStorageArea2 params;
9194 params.create = create;
9195 params.readWhole = readWhole;
9196 params.readRange = readRange;
9197 params.remove = remove;
9198 context->InvokeService(context, _OrthancPluginService_RegisterStorageArea2, ¶ms);
9205 _OrthancPluginCreateDicom createDicom;
9206 const char* privateCreator;
9207 } _OrthancPluginCreateDicom2;
9233 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.0")
9240 const
char* privateCreator)
9242 _OrthancPluginCreateDicom2 params;
9243 params.createDicom.target = target;
9244 params.createDicom.json = json;
9245 params.createDicom.pixelData = pixelData;
9246 params.createDicom.flags = flags;
9247 params.privateCreator = privateCreator;
9249 return context->InvokeService(context, _OrthancPluginService_CreateDicom2, ¶ms);
9261 uint16_t* httpStatus;
9264 uint32_t headersCount;
9265 const char*
const* headersKeys;
9266 const char*
const* headersValues;
9269 uint8_t afterPlugins;
9270 } _OrthancPluginCallRestApi;
9302 ORTHANC_PLUGIN_SINCE_SDK(
"1.9.2")
9307 uint16_t* httpStatus,
9310 uint32_t headersCount,
9311 const
char* const* headersKeys,
9312 const
char* const* headersValues,
9315 uint8_t afterPlugins)
9317 _OrthancPluginCallRestApi params;
9318 memset(¶ms, 0,
sizeof(params));
9320 params.answerBody = answerBody;
9321 params.answerHeaders = answerHeaders;
9322 params.httpStatus = httpStatus;
9323 params.method = method;
9325 params.headersCount = headersCount;
9326 params.headersKeys = headersKeys;
9327 params.headersValues = headersValues;
9329 params.bodySize = bodySize;
9330 params.afterPlugins = afterPlugins;
9332 return context->InvokeService(context, _OrthancPluginService_CallRestApi, ¶ms);
9341 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.10.1")
9365 const char* mimeType,
9366 const char* dateTime);
9385 const char* dateTime);
9413 const char* mimeType,
9414 const char* dateTime);
9431 uint8_t* isExisting,
9433 const char*
const* pathItems,
9456 uint8_t* isExisting,
9461 const char*
const* pathItems,
9485 const char*
const* pathItems,
9505 uint8_t* isReadOnly,
9507 const char*
const* pathItems,
9527 uint8_t* isReadOnly,
9529 const char*
const* pathItems,
9547 uint8_t* isReadOnly,
9549 const char*
const* pathItems,
9563 } _OrthancPluginRegisterWebDavCollection;
9585 ORTHANC_PLUGIN_SINCE_SDK(
"1.10.1")
9597 _OrthancPluginRegisterWebDavCollection params;
9599 params.isExistingFolder = isExistingFolder;
9600 params.listFolder = listFolder;
9601 params.retrieveFile = retrieveFile;
9602 params.storeFile = storeFile;
9603 params.createFolder = createFolder;
9604 params.deleteItem = deleteItem;
9605 params.payload = payload;
9607 return context->InvokeService(context, _OrthancPluginService_RegisterWebDavCollection, ¶ms);
9619 ORTHANC_PLUGIN_SINCE_SDK(
"1.11.1")
9625 _OrthancPluginRetrieveStaticString params;
9626 params.result = &result;
9627 params.argument = NULL;
9646 } _OrthancPluginRegisterStorageArea3;
9662 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
9669 _OrthancPluginRegisterStorageArea3 params;
9670 params.create = create;
9671 params.readRange = readRange;
9672 params.remove = remove;
9673 context->InvokeService(context, _OrthancPluginService_RegisterStorageArea3, ¶ms);
9685 const void* request,
9686 uint64_t requestSize);
9698 uint32_t maxDatabaseRetries;
9701 } _OrthancPluginRegisterDatabaseBackendV4;
9720 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.0")
9724 uint32_t maxDatabaseRetries,
9728 _OrthancPluginRegisterDatabaseBackendV4 params;
9729 params.backend = backend;
9730 params.maxDatabaseRetries = maxDatabaseRetries;
9731 params.operations = operations;
9732 params.finalize = finalize;
9734 return context->InvokeService(context, _OrthancPluginService_RegisterDatabaseBackendV4, ¶ms);
9741 const char* instanceId;
9743 } _OrthancPluginLoadDicomInstance;
9758 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.1")
9761 const
char* instanceId,
9766 _OrthancPluginLoadDicomInstance params;
9767 params.target = ⌖
9768 params.instanceId = instanceId;
9788 } _OrthancPluginSetMetricsIntegerValue;
9805 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.1")
9812 _OrthancPluginSetMetricsIntegerValue params;
9814 params.value = value;
9816 context->InvokeService(context, _OrthancPluginService_SetMetricsIntegerValue, ¶ms);
9833 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.2")
9836 const
char* threadName)
9838 return context->InvokeService(context, _OrthancPluginService_SetCurrentThreadName, threadName);
9845 const char* message;
9851 } _OrthancPluginLogMessage;
9867 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.4")
9870 const
char* message,
9877 _OrthancPluginLogMessage m;
9878 m.message = message;
9882 m.category = category;
9884 context->InvokeService(context, _OrthancPluginService_LogMessage, &m);
9891 const char* contentType;
9892 } _OrthancPluginStartStreamAnswer;
9906 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.6")
9910 const
char* contentType)
9912 _OrthancPluginStartStreamAnswer params;
9913 params.output = output;
9914 params.contentType = contentType;
9915 return context->InvokeService(context, _OrthancPluginService_StartStreamAnswer, ¶ms);
9934 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.6")
9939 uint32_t answerSize)
9941 _OrthancPluginAnswerBuffer params;
9942 params.output = output;
9943 params.answer = answer;
9944 params.answerSize = answerSize;
9945 params.mimeType = NULL;
9946 return context->InvokeService(context, _OrthancPluginService_SendStreamChunk, ¶ms);
9957 const void* customData;
9958 uint32_t customDataSize;
9959 } _OrthancPluginAdoptDicomInstance;
9999 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10006 uint64_t dicomSize,
10007 const
void* customData,
10008 uint32_t customDataSize)
10010 _OrthancPluginAdoptDicomInstance params;
10011 params.instanceId = instanceId;
10012 params.attachmentUuid = attachmentUuid;
10013 params.storeStatus = storeStatus;
10014 params.dicom = dicom;
10015 params.dicomSize = dicomSize;
10016 params.customData = customData;
10017 params.customDataSize = customDataSize;
10019 return context->InvokeService(context, _OrthancPluginService_AdoptDicomInstance, ¶ms);
10026 const char* attachmentUuid;
10027 } _OrthancPluginGetAttachmentCustomData;
10041 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10045 const
char* attachmentUuid )
10047 _OrthancPluginGetAttachmentCustomData params;
10048 params.customData = customData;
10049 params.attachmentUuid = attachmentUuid;
10051 return context->InvokeService(context, _OrthancPluginService_GetAttachmentCustomData, ¶ms);
10057 const char* attachmentUuid;
10058 const void* customData;
10059 uint32_t customDataSize;
10060 } _OrthancPluginSetAttachmentCustomData;
10074 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10077 const
char* attachmentUuid,
10078 const
void* customData,
10079 uint32_t customDataSize )
10081 _OrthancPluginSetAttachmentCustomData params;
10082 params.attachmentUuid = attachmentUuid;
10083 params.customData = customData;
10084 params.customDataSize = customDataSize;
10086 return context->InvokeService(context, _OrthancPluginService_SetAttachmentCustomData, ¶ms);
10092 const char* storeId;
10095 uint32_t valueSize;
10096 } _OrthancPluginStoreKeyValue;
10108 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10111 const
char* storeId,
10114 uint32_t valueSize )
10116 _OrthancPluginStoreKeyValue params;
10117 params.storeId = storeId;
10119 params.value = value;
10120 params.valueSize = valueSize;
10122 return context->InvokeService(context, _OrthancPluginService_StoreKeyValue, ¶ms);
10128 const char* storeId;
10130 } _OrthancPluginDeleteKeyValue;
10140 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10143 const
char* storeId,
10146 _OrthancPluginDeleteKeyValue params;
10147 params.storeId = storeId;
10150 return context->InvokeService(context, _OrthancPluginService_DeleteKeyValue, ¶ms);
10158 const char* storeId;
10160 } _OrthancPluginGetKeyValue;
10173 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10178 const
char* storeId,
10181 _OrthancPluginGetKeyValue params;
10182 params.found = found;
10183 params.target = target;
10184 params.storeId = storeId;
10187 return context->InvokeService(context, _OrthancPluginService_GetKeyValue, ¶ms);
10196 typedef struct ORTHANC_PLUGIN_SINCE_SDK("1.12.8")
10203 const char* storeId;
10204 } _OrthancPluginCreateKeysValuesIterator;
10217 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10220 const
char* storeId)
10224 _OrthancPluginCreateKeysValuesIterator params;
10225 params.target = ⌖
10226 params.storeId = storeId;
10242 } _OrthancPluginFreeKeysValuesIterator;
10250 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10255 _OrthancPluginFreeKeysValuesIterator params;
10256 params.iterator = iterator;
10258 context->InvokeService(context, _OrthancPluginService_FreeKeysValuesIterator, ¶ms);
10266 } _OrthancPluginKeysValuesIteratorNext;
10278 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10284 _OrthancPluginKeysValuesIteratorNext params;
10285 params.done = done;
10286 params.iterator = iterator;
10288 return context->InvokeService(context, _OrthancPluginService_KeysValuesIteratorNext, ¶ms);
10294 const char** target;
10296 } _OrthancPluginKeysValuesIteratorGetKey;
10308 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10313 const char* target = NULL;
10315 _OrthancPluginKeysValuesIteratorGetKey params;
10316 params.target = ⌖
10317 params.iterator = iterator;
10334 } _OrthancPluginKeysValuesIteratorGetValue;
10348 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10354 _OrthancPluginKeysValuesIteratorGetValue params;
10355 params.target = target;
10356 params.iterator = iterator;
10358 return context->InvokeService(context, _OrthancPluginService_KeysValuesIteratorGetValue, ¶ms);
10364 const char* queueId;
10366 uint32_t valueSize;
10367 } _OrthancPluginEnqueueValue;
10378 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10381 const
char* queueId,
10383 uint32_t valueSize )
10385 _OrthancPluginEnqueueValue params;
10386 params.queueId = queueId;
10387 params.value = value;
10388 params.valueSize = valueSize;
10390 return context->InvokeService(context, _OrthancPluginService_EnqueueValue, ¶ms);
10398 const char* queueId;
10400 } _OrthancPluginDequeueValue;
10413 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10418 const
char* queueId,
10421 _OrthancPluginDequeueValue params;
10422 params.found = found;
10423 params.target = target;
10424 params.queueId = queueId;
10425 params.origin = origin;
10427 return context->InvokeService(context, _OrthancPluginService_DequeueValue, ¶ms);
10433 const char* queueId;
10435 } _OrthancPluginGetQueueSize;
10445 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.8")
10448 const
char* queueId,
10451 _OrthancPluginGetQueueSize params;
10452 params.queueId = queueId;
10453 params.size = size;
10455 return context->InvokeService(context, _OrthancPluginService_GetQueueSize, ¶ms);
10461 const char* resourceId;
10463 uint8_t* statusHasChanged;
10464 } _OrthancPluginSetStableStatus;
10486 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
10489 uint8_t* statusHasChanged,
10490 const
char* resourceId,
10493 _OrthancPluginSetStableStatus params;
10494 params.resourceId = resourceId;
10495 params.stableStatus= stableStatus;
10496 params.statusHasChanged = statusHasChanged;
10498 return context->InvokeService(context, _OrthancPluginService_SetStableStatus, ¶ms);
10530 uint32_t headersCount,
10531 const char*
const* headersKeys,
10532 const char*
const* headersValues,
10534 const char*
const* getKeys,
10535 const char*
const* getValues);
10541 } _OrthancPluginHttpAuthentication;
10582 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
10587 _OrthancPluginHttpAuthentication params;
10588 params.callback = callback;
10590 return context->InvokeService(context, _OrthancPluginService_RegisterHttpAuthentication, ¶ms);
10596 const char* sourcePlugin;
10597 const char* userId;
10599 const char* resourceId;
10600 const char* action;
10601 const void* logData;
10602 uint32_t logDataSize;
10603 } _OrthancPluginEmitAuditLog;
10628 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
10631 const
char* sourcePlugin,
10632 const
char* userId,
10634 const
char* resourceId,
10635 const
char* action,
10636 const
void* logData,
10637 uint32_t logDataSize)
10639 _OrthancPluginEmitAuditLog m;
10640 m.sourcePlugin = sourcePlugin;
10642 m.resourceType = resourceType;
10643 m.resourceId = resourceId;
10645 m.logData = logData;
10646 m.logDataSize = logDataSize;
10647 context->InvokeService(context, _OrthancPluginService_EmitAuditLog, &m);
10670 const char* sourcePlugin,
10671 const char* userId,
10673 const char* resourceId,
10674 const char* action,
10675 const void* logData,
10676 uint32_t logDataSize);
10681 } _OrthancPluginAuditLogHandler;
10694 ORTHANC_PLUGIN_SINCE_SDK(
"1.12.9")
10699 _OrthancPluginAuditLogHandler params;
10700 params.handler = handler;
10702 return context->InvokeService(context, _OrthancPluginService_RegisterAuditLogHandler, ¶ms);
OrthancPluginErrorCode OrthancPluginRegisterDatabaseBackendV4(OrthancPluginContext *context, void *backend, uint32_t maxDatabaseRetries, OrthancPluginCallDatabaseBackendV4 operations, OrthancPluginFinalizeDatabaseBackendV4 finalize)
Register a custom database back-end.
Definition: OrthancCPlugin.h:9721
OrthancPluginErrorCode(* OrthancPluginHttpAuthentication)(OrthancPluginHttpAuthenticationStatus *status, OrthancPluginMemoryBuffer *customPayload, OrthancPluginMemoryBuffer *redirection, const char *uri, const char *ip, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues, uint32_t getCount, const char *const *getKeys, const char *const *getValues)
Callback to authenticate a HTTP request.
Definition: OrthancCPlugin.h:10524
OrthancPluginErrorCode(* OrthancPluginCallDatabaseBackendV4)(OrthancPluginMemoryBuffer64 *response, void *backend, const void *request, uint64_t requestSize)
Signature of a callback function that is triggered when the Orthanc core requests an operation from t...
Definition: OrthancCPlugin.h:9682
OrthancPluginReceivedInstanceAction(* OrthancPluginReceivedInstanceCallback)(OrthancPluginMemoryBuffer64 *modifiedDicomBuffer, const void *receivedDicomBuffer, uint64_t receivedDicomBufferSize, OrthancPluginInstanceOrigin origin)
Callback to keep/discard/modify a DICOM instance received by Orthanc from any source (C-STORE or REST...
Definition: OrthancCPlugin.h:8464
OrthancPluginErrorCode(* OrthancPluginWebDavAddFile)(OrthancPluginWebDavCollection *collection, const char *name, uint64_t size, const char *mimeType, const char *dateTime)
Declare a file while returning the content of a folder.
Definition: OrthancCPlugin.h:9361
void OrthancPluginRegisterStorageArea(OrthancPluginContext *context, OrthancPluginStorageCreate create, OrthancPluginStorageRead read, OrthancPluginStorageRemove remove)
Register a custom storage area.
Definition: OrthancCPlugin.h:3528
void OrthancPluginRegisterOnStoredInstanceCallback(OrthancPluginContext *context, OrthancPluginOnStoredInstanceCallback callback)
Register a callback for received instances.
Definition: OrthancCPlugin.h:2493
void(* OrthancPluginDicomWebSetBinaryNode)(OrthancPluginDicomWebNode *node, OrthancPluginDicomWebBinaryMode mode, const char *bulkDataUri)
Signature of a function to set the content of a node encoding a binary DICOM tag, into a JSON or XML ...
Definition: OrthancCPlugin.h:1444
OrthancPluginErrorCode OrthancPluginRegisterDecodeImageCallback(OrthancPluginContext *context, OrthancPluginDecodeImageCallback callback)
Register a callback to handle the decoding of DICOM images.
Definition: OrthancCPlugin.h:5847
OrthancPluginChangeType
Definition: OrthancCPlugin.h:811
OrthancPluginErrorCode(* OrthancPluginStorageReadWhole)(OrthancPluginMemoryBuffer64 *target, const char *uuid, OrthancPluginContentType type)
Callback for reading a whole file from the storage area.
Definition: OrthancCPlugin.h:1509
OrthancPluginErrorCode OrthancPluginRegisterIncomingCStoreInstanceFilter(OrthancPluginContext *context, OrthancPluginIncomingCStoreInstanceFilter callback)
Register a callback to filter incoming DICOM instances received by Orthanc through C-STORE.
Definition: OrthancCPlugin.h:8419
OrthancPluginErrorCode(* OrthancPluginDecodeImageCallback)(OrthancPluginImage **target, const void *dicom, const uint32_t size, uint32_t frameIndex)
Signature of a callback function to decode a DICOM instance as an image.
Definition: OrthancCPlugin.h:1422
void OrthancPluginRegisterRefreshMetricsCallback(OrthancPluginContext *context, OrthancPluginRefreshMetricsCallback callback)
Register a callback to refresh the metrics.
Definition: OrthancCPlugin.h:7539
OrthancPluginErrorCode OrthancPluginRegisterHttpAuthentication(OrthancPluginContext *context, OrthancPluginHttpAuthentication callback)
Register a callback to handle HTTP authentication (and possibly HTTP authorization).
Definition: OrthancCPlugin.h:10583
OrthancPluginErrorCode(* OrthancPluginWebDavCreateFolderCallback)(uint8_t *isReadOnly, uint32_t pathSize, const char *const *pathItems, void *payload)
Callback to create a folder.
Definition: OrthancCPlugin.h:9526
OrthancPluginErrorCode(* OrthancPluginStorageReadRange2)(OrthancPluginMemoryBuffer64 *target, const char *uuid, OrthancPluginContentType type, uint64_t rangeStart, const void *customData, uint32_t customDataSize)
Callback for reading a range of a file from the storage area.
Definition: OrthancCPlugin.h:1603
struct _OrthancPluginWebDavCollection_t OrthancPluginWebDavCollection
Opaque structure that represents a WebDAV collection.
Definition: OrthancCPlugin.h:9341
void(* OrthancPluginDicomWebBinaryCallback)(OrthancPluginDicomWebNode *node, OrthancPluginDicomWebSetBinaryNode setter, uint32_t levelDepth, const uint16_t *levelTagGroup, const uint16_t *levelTagElement, const uint32_t *levelIndex, uint16_t tagGroup, uint16_t tagElement, OrthancPluginValueRepresentation vr)
Callback executed to encode a binary tag in DICOMweb.
Definition: OrthancCPlugin.h:2060
OrthancPluginErrorCode(* OrthancPluginWebDavRetrieveFileCallback)(OrthancPluginWebDavCollection *collection, OrthancPluginWebDavRetrieveFile retrieveFile, uint32_t pathSize, const char *const *pathItems, void *payload)
Callback for retrieving the content of a file.
Definition: OrthancCPlugin.h:9481
int32_t(* OrthancPluginIncomingDicomInstanceFilter)(const OrthancPluginDicomInstance *instance)
Callback to filter incoming DICOM instances received by Orthanc.
Definition: OrthancCPlugin.h:8333
OrthancPluginErrorCode OrthancPluginStorageAreaRemove(OrthancPluginContext *context, OrthancPluginStorageArea *storageArea, const char *uuid, OrthancPluginContentType type)
Remove a file from the storage area.
Definition: OrthancCPlugin.h:5204
OrthancPluginErrorCode(* OrthancPluginTranscoderCallback)(OrthancPluginMemoryBuffer *transcoded, const void *buffer, uint64_t size, const char *const *allowedSyntaxes, uint32_t countSyntaxes, uint8_t allowNewSopInstanceUid)
Signature of a callback function to transcode a DICOM instance.
Definition: OrthancCPlugin.h:8997
OrthancPluginErrorCode OrthancPluginRegisterIncomingHttpRequestFilter2(OrthancPluginContext *context, OrthancPluginIncomingHttpRequestFilter2 callback)
Register a callback to filter incoming HTTP requests.
Definition: OrthancCPlugin.h:6766
OrthancPluginErrorCode(* OrthancPluginWebDavRetrieveFile)(OrthancPluginWebDavCollection *collection, const void *data, uint64_t size, const char *mimeType, const char *dateTime)
Retrieve the content of a file.
Definition: OrthancCPlugin.h:9409
void OrthancPluginRegisterStorageArea3(OrthancPluginContext *context, OrthancPluginStorageCreate2 create, OrthancPluginStorageReadRange2 readRange, OrthancPluginStorageRemove2 remove)
Register a custom storage area, with support for custom data.
Definition: OrthancCPlugin.h:9663
OrthancPluginErrorCode(* OrthancPluginStorageRead)(void **content, int64_t *size, const char *uuid, OrthancPluginContentType type)
Callback for reading from the storage area.
Definition: OrthancCPlugin.h:1489
void OrthancPluginRegisterRestCallback(OrthancPluginContext *context, const char *pathRegularExpression, OrthancPluginRestCallback callback)
Register a REST callback.
Definition: OrthancCPlugin.h:2415
uint32_t OrthancPluginGetExpectedDatabaseVersion(OrthancPluginContext *context)
Get the expected version of the database schema.
Definition: OrthancCPlugin.h:4002
OrthancPluginErrorCode OrthancPluginRegisterReceivedInstanceCallback(OrthancPluginContext *context, OrthancPluginReceivedInstanceCallback callback)
Register a callback to keep/discard/modify a DICOM instance received by Orthanc from any source (C-ST...
Definition: OrthancCPlugin.h:8497
int32_t OrthancPluginCheckVersion(OrthancPluginContext *context)
Check the compatibility of the plugin wrt. the version of its hosting Orthanc.
Definition: OrthancCPlugin.h:2295
OrthancPluginErrorCode(* OrthancPluginWebDavListFolderCallback)(uint8_t *isExisting, OrthancPluginWebDavCollection *collection, OrthancPluginWebDavAddFile addFile, OrthancPluginWebDavAddFolder addFolder, uint32_t pathSize, const char *const *pathItems, void *payload)
Callback for listing the content of a folder.
Definition: OrthancCPlugin.h:9455
struct _OrthancPluginRestOutput_t OrthancPluginRestOutput
Opaque structure that represents the HTTP connection to the client application.
Definition: OrthancCPlugin.h:1287
void OrthancPluginRegisterOnChangeCallback(OrthancPluginContext *context, OrthancPluginOnChangeCallback callback)
Register a callback to monitor changes.
Definition: OrthancCPlugin.h:3671
void OrthancPluginRegisterStorageArea2(OrthancPluginContext *context, OrthancPluginStorageCreate create, OrthancPluginStorageReadWhole readWhole, OrthancPluginStorageReadRange readRange, OrthancPluginStorageRemove remove)
Register a custom storage area, with support for range request.
Definition: OrthancCPlugin.h:9186
OrthancPluginErrorCode(* OrthancPluginWebDavAddFolder)(OrthancPluginWebDavCollection *collection, const char *name, const char *dateTime)
Declare a subfolder while returning the content of a folder.
Definition: OrthancCPlugin.h:9382
OrthancPluginErrorCode OrthancPluginRegisterWebDavCollection(OrthancPluginContext *context, const char *uri, OrthancPluginWebDavIsExistingFolderCallback isExistingFolder, OrthancPluginWebDavListFolderCallback listFolder, OrthancPluginWebDavRetrieveFileCallback retrieveFile, OrthancPluginWebDavStoreFileCallback storeFile, OrthancPluginWebDavCreateFolderCallback createFolder, OrthancPluginWebDavDeleteItemCallback deleteItem, void *payload)
Register a WebDAV virtual filesystem.
Definition: OrthancCPlugin.h:9586
int32_t(* OrthancPluginIncomingHttpRequestFilter2)(OrthancPluginHttpMethod method, const char *uri, const char *ip, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues, uint32_t getArgumentsCount, const char *const *getArgumentsKeys, const char *const *getArgumentsValues)
Callback to filter incoming HTTP requests received by Orthanc.
Definition: OrthancCPlugin.h:1716
void(* OrthancPluginRefreshMetricsCallback)()
Callback executed to update the metrics of the plugin.
Definition: OrthancCPlugin.h:2032
OrthancPluginErrorCode OrthancPluginRegisterTranscoderCallback(OrthancPluginContext *context, OrthancPluginTranscoderCallback callback)
Register a callback to handle the transcoding of DICOM images.
Definition: OrthancCPlugin.h:9025
OrthancPluginErrorCode(* OrthancPluginOnStoredInstanceCallback)(const OrthancPluginDicomInstance *instance, const char *instanceId)
Signature of a callback function that is triggered when Orthanc stores a new DICOM instance.
Definition: OrthancCPlugin.h:1401
OrthancPluginErrorCode(* OrthancPluginStorageCreate2)(OrthancPluginMemoryBuffer *customData, const char *uuid, const void *content, uint64_t size, OrthancPluginContentType type, OrthancPluginCompressionType compressionType, const OrthancPluginDicomInstance *dicomInstance)
Callback for writing to the storage area.
Definition: OrthancCPlugin.h:1574
OrthancPluginErrorCode(* OrthancPluginWebDavStoreFileCallback)(uint8_t *isReadOnly, uint32_t pathSize, const char *const *pathItems, const void *data, uint64_t size, void *payload)
Callback to store a file.
Definition: OrthancCPlugin.h:9504
OrthancPluginErrorCode(* OrthancPluginWebDavDeleteItemCallback)(uint8_t *isReadOnly, uint32_t pathSize, const char *const *pathItems, void *payload)
Callback to remove a file or a folder.
Definition: OrthancCPlugin.h:9546
OrthancPluginErrorCode OrthancPluginReconstructMainDicomTags(OrthancPluginContext *context, OrthancPluginStorageArea *storageArea, OrthancPluginResourceType level)
Reconstruct the main DICOM tags.
Definition: OrthancCPlugin.h:5397
OrthancPluginErrorCode(* OrthancPluginStorageRemove)(const char *uuid, OrthancPluginContentType type)
Callback for removing a file from the storage area.
Definition: OrthancCPlugin.h:1550
OrthancPluginErrorCode(* OrthancPluginStorageCreate)(const char *uuid, const void *content, int64_t size, OrthancPluginContentType type)
Callback for writing to the storage area.
Definition: OrthancCPlugin.h:1463
void(* OrthancPluginDicomWebBinaryCallback2)(OrthancPluginDicomWebNode *node, OrthancPluginDicomWebSetBinaryNode setter, uint32_t levelDepth, const uint16_t *levelTagGroup, const uint16_t *levelTagElement, const uint32_t *levelIndex, uint16_t tagGroup, uint16_t tagElement, OrthancPluginValueRepresentation vr, void *payload)
Callback executed to encode a binary tag in DICOMweb.
Definition: OrthancCPlugin.h:2098
OrthancPluginErrorCode OrthancPluginRegisterAuditLogHandler(OrthancPluginContext *context, OrthancPluginAuditLogHandler handler)
Register a callback to handle audit logs.
Definition: OrthancCPlugin.h:10695
OrthancPluginErrorCode(* OrthancPluginOnChangeCallback)(OrthancPluginChangeType changeType, OrthancPluginResourceType resourceType, const char *resourceId)
Signature of a callback function that is triggered when a change happens to some DICOM resource.
Definition: OrthancCPlugin.h:1411
OrthancPluginErrorCode(* OrthancPluginRestCallback)(OrthancPluginRestOutput *output, const char *uri, const OrthancPluginHttpRequest *request)
Signature of a callback function that answers to a REST request.
Definition: OrthancCPlugin.h:1390
void(* OrthancPluginFinalizeDatabaseBackendV4)(void *backend)
Signature of a callback function that is triggered when the database plugin must be finalized.
Definition: OrthancCPlugin.h:9693
struct _OrthancPluginServerChunkedRequestReader_t OrthancPluginServerChunkedRequestReader
Opaque structure that reads the content of a HTTP request body during a chunked HTTP transfer.
Definition: OrthancCPlugin.h:7992
OrthancPluginErrorCode(* OrthancPluginWebDavIsExistingFolderCallback)(uint8_t *isExisting, uint32_t pathSize, const char *const *pathItems, void *payload)
Callback for testing the existence of a folder.
Definition: OrthancCPlugin.h:9430
struct _OrthancPluginKeysValuesIterator_t OrthancPluginKeysValuesIterator
Opaque structure that represents an iterator over the keys and values of a key-value store.
Definition: OrthancCPlugin.h:10196
int32_t(* OrthancPluginIncomingHttpRequestFilter)(OrthancPluginHttpMethod method, const char *uri, const char *ip, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues)
Callback to filter incoming HTTP requests received by Orthanc.
Definition: OrthancCPlugin.h:1677
OrthancPluginJob *(* OrthancPluginJobsUnserializer)(const char *jobType, const char *serialized)
Callback executed to unserialize a custom job.
Definition: OrthancCPlugin.h:2013
void OrthancPluginRegisterJobsUnserializer(OrthancPluginContext *context, OrthancPluginJobsUnserializer unserializer)
Register an unserializer for custom jobs.
Definition: OrthancCPlugin.h:7390
void(* OrthancPluginFree)(void *buffer)
Signature of a function to free dynamic memory.
Definition: OrthancCPlugin.h:1434
OrthancPluginErrorCode(* OrthancPluginAuditLogHandler)(const char *sourcePlugin, const char *userId, OrthancPluginResourceType resourceType, const char *resourceId, const char *action, const void *logData, uint32_t logDataSize)
Callback to handle an audit log.
Definition: OrthancCPlugin.h:10669
void OrthancPluginRegisterRestCallbackNoLock(OrthancPluginContext *context, const char *pathRegularExpression, OrthancPluginRestCallback callback)
Register a REST callback, without locking.
Definition: OrthancCPlugin.h:2455
OrthancPluginErrorCode OrthancPluginStorageAreaRead(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, OrthancPluginStorageArea *storageArea, const char *uuid, OrthancPluginContentType type)
Read a file from the storage area.
Definition: OrthancCPlugin.h:5163
OrthancPluginErrorCode(* OrthancPluginStorageRemove2)(const char *uuid, OrthancPluginContentType type, const void *customData, uint32_t customDataSize)
Callback for removing a file from the storage area.
Definition: OrthancCPlugin.h:1626
int32_t OrthancPluginCheckVersionAdvanced(OrthancPluginContext *context, int32_t expectedMajor, int32_t expectedMinor, int32_t expectedRevision)
Check that the version of the hosting Orthanc is above a given version.
Definition: OrthancCPlugin.h:2180
OrthancPluginErrorCode(* OrthancPluginStorageReadRange)(OrthancPluginMemoryBuffer64 *target, const char *uuid, OrthancPluginContentType type, uint64_t rangeStart)
Callback for reading a range of a file from the storage area.
Definition: OrthancCPlugin.h:1532
void OrthancPluginRegisterChunkedRestCallback(OrthancPluginContext *context, const char *pathRegularExpression, OrthancPluginRestCallback getHandler, OrthancPluginServerChunkedRequestReaderFactory postHandler, OrthancPluginRestCallback deleteHandler, OrthancPluginServerChunkedRequestReaderFactory putHandler, OrthancPluginServerChunkedRequestReaderAddChunk addChunk, OrthancPluginServerChunkedRequestReaderExecute execute, OrthancPluginServerChunkedRequestReaderFinalize finalize)
Register a REST callback to handle chunked HTTP transfers.
Definition: OrthancCPlugin.h:8115
int32_t(* OrthancPluginIncomingCStoreInstanceFilter)(uint16_t *dimseStatus, const OrthancPluginDicomInstance *instance)
Callback to filter incoming DICOM instances received by Orthanc through C-STORE.
Definition: OrthancCPlugin.h:8396
OrthancPluginErrorCode OrthancPluginRegisterIncomingDicomInstanceFilter(OrthancPluginContext *context, OrthancPluginIncomingDicomInstanceFilter callback)
Register a callback to filter incoming DICOM instances.
Definition: OrthancCPlugin.h:8355
OrthancPluginErrorCode OrthancPluginRegisterIncomingHttpRequestFilter(OrthancPluginContext *context, OrthancPluginIncomingHttpRequestFilter callback)
Register a callback to filter incoming HTTP requests.
Definition: OrthancCPlugin.h:6185
OrthancPluginErrorCode OrthancPluginStorageAreaCreate(OrthancPluginContext *context, OrthancPluginStorageArea *storageArea, const char *uuid, const void *content, uint64_t size, OrthancPluginContentType type)
Create a file inside the storage area.
Definition: OrthancCPlugin.h:5117
@ OrthancPluginChangeType_OrthancStopped
Definition: OrthancCPlugin.h:823
@ OrthancPluginChangeType_OrthancStarted
Definition: OrthancCPlugin.h:822
@ OrthancPluginChangeType_Deleted
Definition: OrthancCPlugin.h:813
@ OrthancPluginChangeType_JobFailure
Definition: OrthancCPlugin.h:830
@ OrthancPluginChangeType_NewInstance
Definition: OrthancCPlugin.h:815
@ OrthancPluginChangeType_NewPatient
Definition: OrthancCPlugin.h:816
@ OrthancPluginChangeType_JobSubmitted
Definition: OrthancCPlugin.h:828
@ OrthancPluginChangeType_NewSeries
Definition: OrthancCPlugin.h:817
@ OrthancPluginChangeType_StablePatient
Definition: OrthancCPlugin.h:819
@ OrthancPluginChangeType_UpdatedPeers
Definition: OrthancCPlugin.h:826
@ OrthancPluginChangeType_StableStudy
Definition: OrthancCPlugin.h:821
@ OrthancPluginChangeType_CompletedSeries
Definition: OrthancCPlugin.h:812
@ OrthancPluginChangeType_NewChildInstance
Definition: OrthancCPlugin.h:814
@ OrthancPluginChangeType_UpdatedAttachment
Definition: OrthancCPlugin.h:824
@ OrthancPluginChangeType_UpdatedMetadata
Definition: OrthancCPlugin.h:825
@ OrthancPluginChangeType_StableSeries
Definition: OrthancCPlugin.h:820
@ OrthancPluginChangeType_UpdatedModalities
Definition: OrthancCPlugin.h:827
@ OrthancPluginChangeType_JobSuccess
Definition: OrthancCPlugin.h:829
@ OrthancPluginChangeType_NewStudy
Definition: OrthancCPlugin.h:818
uint32_t OrthancPluginGetFindQuerySize(OrthancPluginContext *context, const OrthancPluginFindQuery *query)
Get the number of tags in a C-Find query.
Definition: OrthancCPlugin.h:6452
struct _OrthancPluginFindQuery_t OrthancPluginFindQuery
Opaque structure to an object that represents a C-Find query.
Definition: OrthancCPlugin.h:1335
OrthancPluginErrorCode(* OrthancPluginApplyMove)(void *moveDriver)
Callback to apply one C-Move suboperation.
Definition: OrthancCPlugin.h:1826
OrthancPluginErrorCode OrthancPluginFindMarkIncomplete(OrthancPluginContext *context, OrthancPluginFindAnswers *answers)
Mark the set of C-Find answers as incomplete.
Definition: OrthancCPlugin.h:6427
char * OrthancPluginGetFindQueryTagName(OrthancPluginContext *context, const OrthancPluginFindQuery *query, uint32_t index)
Get the symbolic name of one tag in a C-Find query.
Definition: OrthancCPlugin.h:6522
void(* OrthancPluginStorageCommitmentDestructor)(void *handler)
Callback to free one storage commitment SCP handler.
Definition: OrthancCPlugin.h:8244
OrthancPluginErrorCode(* OrthancPluginWorklistCallback)(OrthancPluginWorklistAnswers *answers, const OrthancPluginWorklistQuery *query, const char *issuerAet, const char *calledAet)
Callback to handle the C-Find SCP requests for worklists.
Definition: OrthancCPlugin.h:1646
OrthancPluginErrorCode OrthancPluginRegisterMoveCallback(OrthancPluginContext *context, OrthancPluginMoveCallback callback, OrthancPluginGetMoveSize getMoveSize, OrthancPluginApplyMove applyMove, OrthancPluginFreeMove freeMove)
Register a callback to handle C-Move requests.
Definition: OrthancCPlugin.h:6610
OrthancPluginErrorCode(* OrthancPluginStorageCommitmentFactory)(void **handler, const char *jobId, const char *transactionUid, const char *const *sopClassUids, const char *const *sopInstanceUids, uint32_t countInstances, const char *remoteAet, const char *calledAet)
Callback executed by the storage commitment SCP.
Definition: OrthancCPlugin.h:8222
OrthancPluginErrorCode OrthancPluginRegisterFindCallback(OrthancPluginContext *context, OrthancPluginFindCallback callback)
Register a callback to handle C-Find requests.
Definition: OrthancCPlugin.h:6357
OrthancPluginErrorCode OrthancPluginWorklistGetDicomQuery(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const OrthancPluginWorklistQuery *query)
Retrieve the worklist query as a DICOM file.
Definition: OrthancCPlugin.h:5729
OrthancPluginErrorCode(* OrthancPluginStorageCommitmentLookup)(OrthancPluginStorageCommitmentFailureReason *target, void *handler, const char *sopClassUid, const char *sopInstanceUid)
Callback to get the status of one DICOM instance in the storage commitment SCP.
Definition: OrthancCPlugin.h:8265
int32_t OrthancPluginWorklistIsMatch(OrthancPluginContext *context, const OrthancPluginWorklistQuery *query, const void *dicom, uint32_t size)
Test whether a worklist matches the query.
Definition: OrthancCPlugin.h:5690
OrthancPluginErrorCode OrthancPluginFindAddAnswer(OrthancPluginContext *context, OrthancPluginFindAnswers *answers, const void *dicom, uint32_t size)
Add one answer to some C-Find request.
Definition: OrthancCPlugin.h:6397
void *(* OrthancPluginMoveCallback)(OrthancPluginResourceType resourceType, const char *patientId, const char *accessionNumber, const char *studyInstanceUid, const char *seriesInstanceUid, const char *sopInstanceUid, const char *originatorAet, const char *sourceAet, const char *targetAet, uint16_t originatorId)
Callback to handle incoming C-Move SCP requests.
Definition: OrthancCPlugin.h:1786
OrthancPluginErrorCode OrthancPluginRegisterStorageCommitmentScpCallback(OrthancPluginContext *context, OrthancPluginStorageCommitmentFactory factory, OrthancPluginStorageCommitmentDestructor destructor, OrthancPluginStorageCommitmentLookup lookup)
Register a callback to handle incoming requests to the storage commitment SCP.
Definition: OrthancCPlugin.h:8293
struct _OrthancPluginFindAnswers_t OrthancPluginFindAnswers
Opaque structure to an object that represents the answers to a C-Find query for worklists.
Definition: OrthancCPlugin.h:1344
struct _OrthancPluginWorklistAnswers_t OrthancPluginWorklistAnswers
Opaque structure to an object that represents the answers to a C-Find query for worklists.
Definition: OrthancCPlugin.h:1327
OrthancPluginErrorCode(* OrthancPluginFindCallback)(OrthancPluginFindAnswers *answers, const OrthancPluginFindQuery *query, const char *issuerAet, const char *calledAet)
Callback to handle incoming C-Find SCP requests.
Definition: OrthancCPlugin.h:1743
uint32_t(* OrthancPluginGetMoveSize)(void *moveDriver)
Callback to read the size of a C-Move driver.
Definition: OrthancCPlugin.h:1811
OrthancPluginErrorCode OrthancPluginRegisterWorklistCallback(OrthancPluginContext *context, OrthancPluginWorklistCallback callback)
Register a callback to handle modality worklists requests.
Definition: OrthancCPlugin.h:5586
OrthancPluginErrorCode OrthancPluginWorklistMarkIncomplete(OrthancPluginContext *context, OrthancPluginWorklistAnswers *answers)
Mark the set of worklist answers as incomplete.
Definition: OrthancCPlugin.h:5652
char * OrthancPluginGetFindQueryValue(OrthancPluginContext *context, const OrthancPluginFindQuery *query, uint32_t index)
Get the value associated with one tag in a C-Find query.
Definition: OrthancCPlugin.h:6561
OrthancPluginErrorCode OrthancPluginGetFindQueryTag(OrthancPluginContext *context, uint16_t *group, uint16_t *element, const OrthancPluginFindQuery *query, uint32_t index)
Get one tag in a C-Find query.
Definition: OrthancCPlugin.h:6490
void(* OrthancPluginFreeMove)(void *moveDriver)
Callback to free one C-Move driver.
Definition: OrthancCPlugin.h:1840
struct _OrthancPluginWorklistQuery_t OrthancPluginWorklistQuery
Opaque structure to an object that represents a C-Find query for worklists.
Definition: OrthancCPlugin.h:1319
OrthancPluginErrorCode OrthancPluginWorklistAddAnswer(OrthancPluginContext *context, OrthancPluginWorklistAnswers *answers, const OrthancPluginWorklistQuery *query, const void *dicom, uint32_t size)
Add one answer to some modality worklist request.
Definition: OrthancCPlugin.h:5622
int32_t OrthancPluginHasInstancePixelData(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Check whether the DICOM file has pixel data.
Definition: OrthancCPlugin.h:8557
char * OrthancPluginGetInstanceDicomWebXml(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, OrthancPluginDicomWebBinaryCallback2 callback, void *payload)
Convert a DICOM instance to DICOMweb XML.
Definition: OrthancCPlugin.h:8952
struct _OrthancPluginDicomInstance_t OrthancPluginDicomInstance
Opaque structure that represents a DICOM instance that is managed by the Orthanc core.
Definition: OrthancCPlugin.h:1295
char * OrthancPluginGetInstanceTransferSyntaxUid(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the transfer syntax of a DICOM file.
Definition: OrthancCPlugin.h:8521
OrthancPluginErrorCode OrthancPluginGetInstanceRawFrame(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const OrthancPluginDicomInstance *instance, uint32_t frameIndex)
Get the raw content of a frame in a DICOM instance.
Definition: OrthancCPlugin.h:8726
char * OrthancPluginGetInstanceAdvancedJson(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, OrthancPluginDicomToJsonFormat format, OrthancPluginDicomToJsonFlags flags, uint32_t maxStringLength)
Format a DICOM memory buffer as a JSON string.
Definition: OrthancCPlugin.h:8867
const void * OrthancPluginGetInstanceData(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the data of a DICOM file.
Definition: OrthancCPlugin.h:3325
OrthancPluginDicomInstance * OrthancPluginCreateDicomInstance(OrthancPluginContext *context, const void *buffer, uint32_t size)
Parse a DICOM instance.
Definition: OrthancCPlugin.h:8608
int32_t OrthancPluginHasInstanceMetadata(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, const char *metadata)
Check whether a DICOM instance is associated with some metadata.
Definition: OrthancCPlugin.h:3438
uint32_t OrthancPluginGetInstanceFramesCount(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the number of frames in a DICOM instance.
Definition: OrthancCPlugin.h:8685
OrthancPluginImage * OrthancPluginGetInstanceDecodedFrame(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, uint32_t frameIndex)
Decode one frame from a DICOM instance.
Definition: OrthancCPlugin.h:8755
OrthancPluginDicomInstance * OrthancPluginLoadDicomInstance(OrthancPluginContext *context, const char *instanceId, OrthancPluginLoadDicomInstanceMode mode)
Load a DICOM instance from the Orthanc server.
Definition: OrthancCPlugin.h:9759
OrthancPluginInstanceOrigin OrthancPluginGetInstanceOrigin(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the origin of a DICOM file.
Definition: OrthancCPlugin.h:5755
int64_t OrthancPluginGetInstanceSize(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the size of a DICOM file.
Definition: OrthancCPlugin.h:3292
char * OrthancPluginGetInstanceDicomWebJson(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, OrthancPluginDicomWebBinaryCallback2 callback, void *payload)
Convert a DICOM instance to DICOMweb JSON.
Definition: OrthancCPlugin.h:8911
char * OrthancPluginGetInstanceSimplifiedJson(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the DICOM tag hierarchy as a JSON file (with simplification).
Definition: OrthancCPlugin.h:3399
char * OrthancPluginGetInstanceJson(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the DICOM tag hierarchy as a JSON file.
Definition: OrthancCPlugin.h:3361
const char * OrthancPluginGetInstanceMetadata(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance, const char *metadata)
Get the value of some metadata associated with a given DICOM instance.
Definition: OrthancCPlugin.h:3479
void OrthancPluginFreeDicomInstance(OrthancPluginContext *context, OrthancPluginDicomInstance *dicom)
Free a DICOM instance.
Definition: OrthancCPlugin.h:8647
OrthancPluginErrorCode OrthancPluginSerializeDicomInstance(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const OrthancPluginDicomInstance *instance)
Writes a DICOM instance to a memory buffer.
Definition: OrthancCPlugin.h:8834
OrthancPluginDicomInstance * OrthancPluginTranscodeDicomInstance(OrthancPluginContext *context, const void *buffer, uint32_t size, const char *transferSyntax)
Parse and transcode a DICOM instance.
Definition: OrthancCPlugin.h:8795
const char * OrthancPluginGetInstanceRemoteAet(OrthancPluginContext *context, const OrthancPluginDicomInstance *instance)
Get the AET of a DICOM instance.
Definition: OrthancCPlugin.h:3259
OrthancPluginPixelFormat
Definition: OrthancCPlugin.h:686
OrthancPluginErrorCode OrthancPluginDrawText(OrthancPluginContext *context, OrthancPluginImage *image, uint32_t fontIndex, const char *utf8Text, int32_t x, int32_t y, uint8_t r, uint8_t g, uint8_t b)
Draw text on an image.
Definition: OrthancCPlugin.h:5061
OrthancPluginErrorCode OrthancPluginCompressJpegImage(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, OrthancPluginPixelFormat format, uint32_t width, uint32_t height, uint32_t pitch, const void *buffer, uint8_t quality)
Encode a JPEG image.
Definition: OrthancCPlugin.h:4645
uint32_t OrthancPluginGetImagePitch(OrthancPluginContext *context, const OrthancPluginImage *image)
Return the pitch of an image.
Definition: OrthancCPlugin.h:4436
OrthancPluginImage * OrthancPluginConvertPixelFormat(OrthancPluginContext *context, const OrthancPluginImage *source, OrthancPluginPixelFormat targetFormat)
Change the pixel format of an image.
Definition: OrthancCPlugin.h:4901
OrthancPluginPixelFormat OrthancPluginGetImagePixelFormat(OrthancPluginContext *context, const OrthancPluginImage *image)
Return the pixel format of an image.
Definition: OrthancCPlugin.h:4335
uint32_t OrthancPluginGetFontsCount(OrthancPluginContext *context)
Return the number of available fonts.
Definition: OrthancCPlugin.h:4936
uint32_t OrthancPluginGetImageHeight(OrthancPluginContext *context, const OrthancPluginImage *image)
Return the height of an image.
Definition: OrthancCPlugin.h:4401
void OrthancPluginFreeImage(OrthancPluginContext *context, OrthancPluginImage *image)
Free an image.
Definition: OrthancCPlugin.h:4555
OrthancPluginErrorCode OrthancPluginCompressPngImage(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, OrthancPluginPixelFormat format, uint32_t width, uint32_t height, uint32_t pitch, const void *buffer)
Encode a PNG image.
Definition: OrthancCPlugin.h:4600
OrthancPluginImage * OrthancPluginCreateImage(OrthancPluginContext *context, OrthancPluginPixelFormat format, uint32_t width, uint32_t height)
Create an image.
Definition: OrthancCPlugin.h:5885
OrthancPluginImage * OrthancPluginUncompressImage(OrthancPluginContext *context, const void *data, uint32_t size, OrthancPluginImageFormat format)
Decode a compressed image.
Definition: OrthancCPlugin.h:4513
const char * OrthancPluginGetFontName(OrthancPluginContext *context, uint32_t fontIndex)
Return the name of a font.
Definition: OrthancCPlugin.h:4976
void * OrthancPluginGetImageBuffer(OrthancPluginContext *context, const OrthancPluginImage *image)
Return a pointer to the content of an image.
Definition: OrthancCPlugin.h:4470
OrthancPluginImage * OrthancPluginCreateImageAccessor(OrthancPluginContext *context, OrthancPluginPixelFormat format, uint32_t width, uint32_t height, uint32_t pitch, void *buffer)
Create an image pointing to a memory buffer.
Definition: OrthancCPlugin.h:5928
OrthancPluginImageFormat
Definition: OrthancCPlugin.h:857
struct _OrthancPluginStorageArea_t OrthancPluginStorageArea
Opaque structure that represents the storage area that is actually used by Orthanc.
Definition: OrthancCPlugin.h:1311
OrthancPluginCompressionType
Definition: OrthancCPlugin.h:841
uint32_t OrthancPluginGetImageWidth(OrthancPluginContext *context, const OrthancPluginImage *image)
Return the width of an image.
Definition: OrthancCPlugin.h:4368
OrthancPluginErrorCode OrthancPluginBufferCompression(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const void *source, uint32_t size, OrthancPluginCompressionType compression, uint8_t uncompress)
Compress or decompress a buffer.
Definition: OrthancCPlugin.h:4147
OrthancPluginImage * OrthancPluginDecodeDicomImage(OrthancPluginContext *context, const void *buffer, uint32_t bufferSize, uint32_t frameIndex)
Decode one frame from a DICOM instance.
Definition: OrthancCPlugin.h:5974
uint32_t OrthancPluginGetFontSize(OrthancPluginContext *context, uint32_t fontIndex)
Return the size of a font.
Definition: OrthancCPlugin.h:5008
struct _OrthancPluginImage_t OrthancPluginImage
Opaque structure that represents an image that is uncompressed in memory.
Definition: OrthancCPlugin.h:1303
@ OrthancPluginPixelFormat_RGBA32
Color image in RGBA32 format.
Definition: OrthancCPlugin.h:725
@ OrthancPluginPixelFormat_RGB48
Color image in RGB48 format.
Definition: OrthancCPlugin.h:735
@ OrthancPluginPixelFormat_Grayscale8
Graylevel 8bpp image.
Definition: OrthancCPlugin.h:693
@ OrthancPluginPixelFormat_SignedGrayscale16
Graylevel, signed 16bpp image.
Definition: OrthancCPlugin.h:709
@ OrthancPluginPixelFormat_Float32
Graylevel, floating-point 32bpp image.
Definition: OrthancCPlugin.h:751
@ OrthancPluginPixelFormat_RGB24
Color image in RGB24 format.
Definition: OrthancCPlugin.h:717
@ OrthancPluginPixelFormat_BGRA32
Color image in BGRA32 format.
Definition: OrthancCPlugin.h:759
@ OrthancPluginPixelFormat_Unknown
Definition: OrthancCPlugin.h:727
@ OrthancPluginPixelFormat_Grayscale64
Graylevel, unsigned 64bpp image.
Definition: OrthancCPlugin.h:767
@ OrthancPluginPixelFormat_Grayscale32
Graylevel, unsigned 32bpp image.
Definition: OrthancCPlugin.h:743
@ OrthancPluginPixelFormat_Grayscale16
Graylevel, unsigned 16bpp image.
Definition: OrthancCPlugin.h:701
@ OrthancPluginImageFormat_Png
Definition: OrthancCPlugin.h:858
@ OrthancPluginImageFormat_Jpeg
Definition: OrthancCPlugin.h:859
@ OrthancPluginImageFormat_Dicom
Definition: OrthancCPlugin.h:860
@ OrthancPluginCompressionType_Gzip
Definition: OrthancCPlugin.h:844
@ OrthancPluginCompressionType_ZlibWithSize
Definition: OrthancCPlugin.h:843
@ OrthancPluginCompressionType_None
Definition: OrthancCPlugin.h:846
@ OrthancPluginCompressionType_Zlib
Definition: OrthancCPlugin.h:842
@ OrthancPluginCompressionType_GzipWithSize
Definition: OrthancCPlugin.h:845
OrthancPluginErrorCode OrthancPluginRestApiPost(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri, const void *body, uint32_t bodySize)
Make a POST call to the built-in Orthanc REST API.
Definition: OrthancCPlugin.h:2723
OrthancPluginErrorCode OrthancPluginRestApiPostAfterPlugins(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri, const void *body, uint32_t bodySize)
Make a POST call to the REST API, as tainted by the plugins.
Definition: OrthancCPlugin.h:2758
OrthancPluginErrorCode OrthancPluginRestApiPutAfterPlugins(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri, const void *body, uint32_t bodySize)
Make a PUT call to the REST API, as tainted by the plugins.
Definition: OrthancCPlugin.h:2871
char * OrthancPluginLookupStudy(OrthancPluginContext *context, const char *studyUID)
Look for a study.
Definition: OrthancCPlugin.h:2972
OrthancPluginErrorCode OrthancPluginSetGlobalProperty(OrthancPluginContext *context, int32_t property, const char *value)
Set the value of a global property.
Definition: OrthancCPlugin.h:3905
char * OrthancPluginGetGlobalProperty(OrthancPluginContext *context, int32_t property, const char *defaultValue)
Get the value of a global property.
Definition: OrthancCPlugin.h:3866
OrthancPluginErrorCode OrthancPluginRestApiPut(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri, const void *body, uint32_t bodySize)
Make a PUT call to the built-in Orthanc REST API.
Definition: OrthancCPlugin.h:2835
char * OrthancPluginLookupSeries(OrthancPluginContext *context, const char *seriesUID)
Look for a series.
Definition: OrthancCPlugin.h:3042
char * OrthancPluginLookupStudyWithAccessionNumber(OrthancPluginContext *context, const char *accessionNumber)
Look for a study, using the accession number.
Definition: OrthancCPlugin.h:3007
char * OrthancPluginGenerateRestApiAuthorizationToken(OrthancPluginContext *context)
Generate a token to grant full access to the REST API of Orthanc.
Definition: OrthancCPlugin.h:9100
OrthancPluginErrorCode OrthancPluginRestApiGet(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri)
Make a GET call to the built-in Orthanc REST API.
Definition: OrthancCPlugin.h:2656
char * OrthancPluginLookupInstance(OrthancPluginContext *context, const char *sopInstanceUID)
Look for an instance.
Definition: OrthancCPlugin.h:3077
OrthancPluginErrorCode OrthancPluginRestApiGetAfterPlugins(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri)
Make a GET call to the REST API, as tainted by the plugins.
Definition: OrthancCPlugin.h:2686
char * OrthancPluginLookupPatient(OrthancPluginContext *context, const char *patientID)
Look for a patient.
Definition: OrthancCPlugin.h:2937
OrthancPluginErrorCode OrthancPluginRestApiDelete(OrthancPluginContext *context, const char *uri)
Make a DELETE call to the built-in Orthanc REST API.
Definition: OrthancCPlugin.h:2787
OrthancPluginErrorCode OrthancPluginRestApiDeleteAfterPlugins(OrthancPluginContext *context, const char *uri)
Make a DELETE call to the REST API, as tainted by the plugins.
Definition: OrthancCPlugin.h:2810
OrthancPluginErrorCode OrthancPluginCallRestApi(OrthancPluginContext *context, OrthancPluginMemoryBuffer *answerBody, OrthancPluginMemoryBuffer *answerHeaders, uint16_t *httpStatus, OrthancPluginHttpMethod method, const char *uri, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues, const void *body, uint32_t bodySize, uint8_t afterPlugins)
Call the REST API of Orthanc with full flexibility.
Definition: OrthancCPlugin.h:9303
OrthancPluginErrorCode OrthancPluginRestApiGet2(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *uri, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues, int32_t afterPlugins)
Make a GET call to the Orthanc REST API, with custom HTTP headers.
Definition: OrthancCPlugin.h:5548
OrthancPluginErrorCode OrthancPluginGetDicomForInstance(OrthancPluginContext *context, OrthancPluginMemoryBuffer *target, const char *instanceId)
Retrieve a DICOM instance using its Orthanc identifier.
Definition: OrthancCPlugin.h:2623
void OrthancPluginCompressAndAnswerPngImage(OrthancPluginContext *context, OrthancPluginRestOutput *output, OrthancPluginPixelFormat format, uint32_t width, uint32_t height, uint32_t pitch, const void *buffer)
Answer to a REST request with a PNG image.
Definition: OrthancCPlugin.h:2582
void OrthancPluginSendUnauthorized(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *realm)
Signal that a REST request is not authorized.
Definition: OrthancCPlugin.h:3145
void OrthancPluginSetHttpErrorDetails(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *details, uint8_t log)
Provide a detailed description for an HTTP error.
Definition: OrthancCPlugin.h:7427
void OrthancPluginSendMethodNotAllowed(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *allowedMethods)
Signal that this URI does not support this HTTP method.
Definition: OrthancCPlugin.h:3168
OrthancPluginErrorCode OrthancPluginSendStreamChunk(OrthancPluginContext *context, OrthancPluginRestOutput *output, const void *answer, uint32_t answerSize)
Send a chunk as a part of an HTTP stream answer.
Definition: OrthancCPlugin.h:9935
void OrthancPluginAnswerBuffer(OrthancPluginContext *context, OrthancPluginRestOutput *output, const void *answer, uint32_t answerSize, const char *mimeType)
Answer to a REST request.
Definition: OrthancCPlugin.h:2525
void OrthancPluginSendHttpStatusCode(OrthancPluginContext *context, OrthancPluginRestOutput *output, uint16_t status)
Send a HTTP status code.
Definition: OrthancCPlugin.h:3122
void OrthancPluginSetHttpHeader(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *key, const char *value)
Set some HTTP header.
Definition: OrthancCPlugin.h:3223
OrthancPluginErrorCode OrthancPluginStartStreamAnswer(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *contentType)
Start an HTTP stream answer.
Definition: OrthancCPlugin.h:9907
void OrthancPluginSetCookie(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *cookie, const char *value)
Set a cookie.
Definition: OrthancCPlugin.h:3198
void OrthancPluginRedirect(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *redirection)
Redirect a REST request.
Definition: OrthancCPlugin.h:2905
void OrthancPluginCompressAndAnswerJpegImage(OrthancPluginContext *context, OrthancPluginRestOutput *output, OrthancPluginPixelFormat format, uint32_t width, uint32_t height, uint32_t pitch, const void *buffer, uint8_t quality)
Answer to a REST request with a JPEG image.
Definition: OrthancCPlugin.h:4692
OrthancPluginErrorCode OrthancPluginSendMultipartItem(OrthancPluginContext *context, OrthancPluginRestOutput *output, const void *answer, uint32_t answerSize)
Send an item as a part of some HTTP multipart answer.
Definition: OrthancCPlugin.h:4105
OrthancPluginErrorCode OrthancPluginSendMultipartItem2(OrthancPluginContext *context, OrthancPluginRestOutput *output, const void *answer, uint32_t answerSize, uint32_t headersCount, const char *const *headersKeys, const char *const *headersValues)
Send an item as a part of some HTTP multipart answer, with custom headers.
Definition: OrthancCPlugin.h:6146
void OrthancPluginSendHttpStatus(OrthancPluginContext *context, OrthancPluginRestOutput *output, uint16_t status, const void *body, uint32_t bodySize)
Send a HTTP status, with a custom body.
Definition: OrthancCPlugin.h:4299
OrthancPluginErrorCode OrthancPluginStartMultipartAnswer(OrthancPluginContext *context, OrthancPluginRestOutput *output, const char *subType, const char *contentType)
Start an HTTP multipart answer.
Definition: OrthancCPlugin.h:4076
An entry in the dictionary of DICOM tags.
Definition: OrthancCPlugin.h:2131
uint32_t minMultiplicity
Definition: OrthancCPlugin.h:2135
uint32_t maxMultiplicity
Definition: OrthancCPlugin.h:2136
OrthancPluginValueRepresentation vr
Definition: OrthancCPlugin.h:2134
uint16_t element
Definition: OrthancCPlugin.h:2133
uint16_t group
Definition: OrthancCPlugin.h:2132
The parameters of a REST request.
Definition: OrthancCPlugin.h:377
uint32_t authenticationPayloadSize
The size of the custom authentication payload (0 if no authentication callback is registered).
Definition: OrthancCPlugin.h:453
const char *const * getValues
For a GET request, the values of the GET parameters.
Definition: OrthancCPlugin.h:406
const char *const * groups
The matched values for the groups of the regular expression.
Definition: OrthancCPlugin.h:391
const void * authenticationPayload
If a HTTP authentication callback is registered, the content of the custom payload generated by the c...
Definition: OrthancCPlugin.h:447
uint32_t bodySize
For a PUT or POST request, the number of bytes of the body.
Definition: OrthancCPlugin.h:416
uint32_t groupsCount
The number of groups of the regular expression.
Definition: OrthancCPlugin.h:386
const char *const * headersKeys
The keys of the HTTP headers (always converted to low-case).
Definition: OrthancCPlugin.h:431
const void * body
For a PUT or POST request, the content of the body.
Definition: OrthancCPlugin.h:411
const char *const * getKeys
For a GET request, the keys of the GET parameters.
Definition: OrthancCPlugin.h:401
uint32_t headersCount
The number of HTTP headers.
Definition: OrthancCPlugin.h:426
OrthancPluginHttpMethod method
The HTTP method.
Definition: OrthancCPlugin.h:381
uint32_t getCount
For a GET request, the number of GET parameters.
Definition: OrthancCPlugin.h:396
const char *const * headersValues
The values of the HTTP headers.
Definition: OrthancCPlugin.h:436
A 64-bit memory buffer allocated by the core system of Orthanc.
Definition: OrthancCPlugin.h:1268
uint64_t size
The number of bytes in the buffer.
Definition: OrthancCPlugin.h:1277
void * data
The content of the buffer.
Definition: OrthancCPlugin.h:1272
A 32-bit memory buffer allocated by the core system of Orthanc.
Definition: OrthancCPlugin.h:1246
uint32_t size
The number of bytes in the buffer.
Definition: OrthancCPlugin.h:1255
void * data
The content of the buffer.
Definition: OrthancCPlugin.h:1250