MagickCore  6.9.10
Convert, Edit, Or Compose Bitmap Images
opencl.h
Go to the documentation of this file.
1 /*
2  Copyright 1999-2019 ImageMagick Studio LLC, a non-profit organization
3  dedicated to making software imaging solutions freely available.
4 
5  You may not use this file except in compliance with the License.
6  obtain a copy of the License at
7 
8  https://imagemagick.org/script/license.php
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  MagickCore OpenCL public methods.
17 */
18 #ifndef MAGICKCORE_OPENCL_H
19 #define MAGICKCORE_OPENCL_H
20 
21 
22 #if defined(__cplusplus) || defined(c_plusplus)
23 extern "C" {
24 #endif
25 
26 /* OpenCL program modules */
27 typedef enum {
29  MAGICK_OPENCL_NUM_PROGRAMS /* !!! This has to be the last entry !!! */
31 
32 typedef enum {
38 
39 /* Parameter type accepted by SetMagickOpenCLEnvParm and GetMagickOpenCLEnvParm */
40 typedef enum {
41  MAGICK_OPENCL_ENV_PARAM_DEVICE /* cl_device_id (from OpenCL) */
42  , MAGICK_OPENCL_ENV_PARAM_OPENCL_DISABLED /* MagickBooleanType */
45  /* if true, disable the kernel binary cache */
47  /* if true, rerun microbenchmark in auto device selection */
51 
52 typedef struct _MagickCLEnv* MagickCLEnv;
53 
56  ExceptionInfo*),
60  ExceptionInfo*);
61 
64 
65 #if defined(__cplusplus) || defined(c_plusplus)
66 }
67 #endif
68 
69 #endif
DirectorySeparator
#define DirectorySeparator
Definition: studio.h:266
MAGICK_OPENCL_ACCELERATE
@ MAGICK_OPENCL_ACCELERATE
Definition: opencl.h:28
CloneString
MagickExport char * CloneString(char **destination, const char *source)
Definition: string.c:284
QuantumScale
#define QuantumScale
Definition: magick-type.h:120
LockSemaphoreInfo
MagickExport void LockSemaphoreInfo(SemaphoreInfo *semaphore_info)
Definition: semaphore.c:345
MagickExport
#define MagickExport
Definition: method-attribute.h:80
policy.h
magick_unused
#define magick_unused(x)
Definition: method-attribute.h:105
GetDefaultOpenCLEnv
MagickExport MagickCLEnv GetDefaultOpenCLEnv()
Definition: opencl.c:3055
MAGICK_OPENCL_ENV_PARAM_DEVICE
@ MAGICK_OPENCL_ENV_PARAM_DEVICE
Definition: opencl.h:41
cl_event
void * cl_event
Definition: opencl-private.h:32
MAGICK_OPENCL_ENV_PARAM_PROGRAM_CACHE_DISABLED
@ MAGICK_OPENCL_ENV_PARAM_PROGRAM_CACHE_DISABLED
Definition: opencl.h:44
magick_unreferenced
#define magick_unreferenced(x)
Definition: method-attribute.h:106
MAGICK_OPENCL_ENV_PARAM_OPENCL_DISABLED
@ MAGICK_OPENCL_ENV_PARAM_OPENCL_DISABLED
Definition: opencl.h:42
GetMagickModule
#define GetMagickModule()
Definition: log.h:29
nt-base-private.h
statistic.h
distort.h
AcquireImageInfo
MagickExport ImageInfo * AcquireImageInfo(void)
Definition: image.c:332
geometry.h
MagickCoreSignature
#define MagickCoreSignature
Definition: method-attribute.h:86
O_BINARY
#define O_BINARY
Definition: studio.h:354
FormatLocaleString
MagickExport ssize_t FormatLocaleString(char *magick_restrict string, const size_t length, const char *magick_restrict format,...)
Definition: locale.c:502
InitImageMagickOpenCL
MagickExport MagickBooleanType InitImageMagickOpenCL(ImageMagickOpenCLMode magick_unused(mode), void *magick_unused(userSelectedDevice), void *magick_unused(selectedDevice), ExceptionInfo *magick_unused(exception))
Definition: opencl.c:3094
opencl.h
fx.h
memory-private.h
RestoreMSCWarning
#define RestoreMSCWarning
Definition: studio.h:381
property.h
GetDefaultOpenCLEnv
MagickExport MagickCLEnv GetDefaultOpenCLEnv()
Definition: opencl.c:3055
GetPathAttributes
MagickExport MagickBooleanType GetPathAttributes(const char *path, void *attributes)
Definition: utility.c:1160
image-private.h
ModuleFatalError
@ ModuleFatalError
Definition: exception.h:90
monitor.h
artifact.h
UnsharpMaskImage
MagickExport Image * UnsharpMaskImage(const Image *image, const double radius, const double sigma, const double gain, const double threshold, ExceptionInfo *exception)
Definition: effect.c:4571
SetMagickOpenCLEnvParam
MagickExport MagickBooleanType SetMagickOpenCLEnvParam(MagickCLEnv, MagickOpenCLEnvParam, size_t, void *, ExceptionInfo *)
resource_.h
layer.h
compare.h
InitImageMagickOpenCL
MagickExport MagickBooleanType InitImageMagickOpenCL(ImageMagickOpenCLMode, void *, void *, ExceptionInfo *)
ResourceLimitError
@ ResourceLimitError
Definition: exception.h:55
utility.h
S_MODE
#define S_MODE
Definition: studio.h:243
InitOpenCLEnv
MagickExport MagickBooleanType InitOpenCLEnv(MagickCLEnv, ExceptionInfo *)
random_.h
string_.h
DestroyString
MagickExport char * DestroyString(char *string)
Definition: string.c:820
quantum.h
morphology.h
cl_uint
void * cl_uint
Definition: opencl-private.h:34
MAGICK_OPENCL_OFF
@ MAGICK_OPENCL_OFF
Definition: opencl.h:33
MagickTrue
@ MagickTrue
Definition: magick-type.h:194
semaphore.h
CopyMagickString
MagickExport size_t CopyMagickString(char *destination, const char *source, const size_t length)
Definition: string.c:752
SetMagickOpenCLEnvParam
MagickExport MagickBooleanType SetMagickOpenCLEnvParam(MagickCLEnv magick_unused(clEnv), MagickOpenCLEnvParam magick_unused(param), size_t magick_unused(dataSize), void *magick_unused(data), ExceptionInfo *magick_unused(exception))
Definition: opencl.c:3060
AcquireMagickMemory
MagickExport void * AcquireMagickMemory(const size_t size)
Definition: memory.c:473
cache-private.h
SemaphoreInfo
Definition: semaphore.c:60
MAGICK_OPENCL_ENV_PARAM_REGENERATE_PROFILE
@ MAGICK_OPENCL_ENV_PARAM_REGENERATE_PROFILE
Definition: opencl.h:46
_Image
Definition: image.h:153
MAGICK_OPENCL_ENV_PARAM_OPENCL_INITIALIZED
@ MAGICK_OPENCL_ENV_PARAM_OPENCL_INITIALIZED
Definition: opencl.h:43
MagickMax
#define MagickMax(x, y)
Definition: image-private.h:26
nt-base.h
MagickPI
#define MagickPI
Definition: image-private.h:28
MagickOpenCLProgram
MagickOpenCLProgram
Definition: opencl.h:27
GetMagickOpenCLEnvParam
MagickExport MagickBooleanType GetMagickOpenCLEnvParam(MagickCLEnv magick_unused(clEnv), MagickOpenCLEnvParam magick_unused(param), size_t magick_unused(dataSize), void *magick_unused(data), ExceptionInfo *magick_unused(exception))
Definition: opencl.c:3073
quantize.h
splay-tree.h
MagickPrivate
#define MagickPrivate
Definition: method-attribute.h:81
_ImageInfo
Definition: image.h:362
MagickFalse
@ MagickFalse
Definition: magick-type.h:193
DisableMSCWarning
#define DisableMSCWarning(nr)
Definition: studio.h:380
InitOpenCLEnv
MagickExport MagickBooleanType InitOpenCLEnv(MagickCLEnv magick_unused(clEnv), ExceptionInfo *magick_unused(exception))
Definition: opencl.c:3086
LanczosFilter
@ LanczosFilter
Definition: resample.h:56
image.h
_ImageInfo::filename
char filename[MaxTextExtent]
Definition: image.h:473
MAGICK_OPENCL_DEVICE_SELECT_AUTO
@ MAGICK_OPENCL_DEVICE_SELECT_AUTO
Definition: opencl.h:34
MAGICK_OPENCL_ENV_PARAM_PLATFORM_VENDOR
@ MAGICK_OPENCL_ENV_PARAM_PLATFORM_VENDOR
Definition: opencl.h:48
_MagickCLEnv
Definition: opencl.c:3048
MAGICK_OPENCL_ENV_PARAM_DEVICE_NAME
@ MAGICK_OPENCL_ENV_PARAM_DEVICE_NAME
Definition: opencl.h:49
MAGICK_OPENCL_NUM_PROGRAMS
@ MAGICK_OPENCL_NUM_PROGRAMS
Definition: opencl.h:29
ExceptionType
ExceptionType
Definition: exception.h:29
ActivateSemaphoreInfo
MagickExport void ActivateSemaphoreInfo(SemaphoreInfo **semaphore_info)
Definition: semaphore.c:97
draw.h
GetMagickOpenCLEnvParam
MagickExport MagickBooleanType GetMagickOpenCLEnvParam(MagickCLEnv, MagickOpenCLEnvParam, size_t, void *, ExceptionInfo *)
_MagickCLEnv::OpenCLInitialized
MagickBooleanType OpenCLInitialized
Definition: opencl.c:3049
QuantumRange
#define QuantumRange
Definition: magick-type.h:86
ThrowMagickExceptionList
MagickExport MagickBooleanType ThrowMagickExceptionList(ExceptionInfo *exception, const char *module, const char *function, const size_t line, const ExceptionType severity, const char *tag, const char *format, va_list operands)
Definition: exception.c:1017
cache.h
DestroySemaphoreInfo
MagickExport void DestroySemaphoreInfo(SemaphoreInfo **semaphore_info)
Definition: semaphore.c:293
_ExceptionInfo::signature
size_t signature
Definition: exception.h:124
MagickOpenCLEnvParam
MagickOpenCLEnvParam
Definition: opencl.h:40
ImageMagickOpenCLMode
ImageMagickOpenCLMode
Definition: opencl.h:32
constitute.h
ResizeImage
MagickExport Image * ResizeImage(const Image *image, const size_t columns, const size_t rows, const FilterTypes filter, const double blur, ExceptionInfo *exception)
Definition: resize.c:2917
MagickBooleanType
MagickBooleanType
Definition: magick-type.h:192
RelinquishMagickMemory
MagickExport void * RelinquishMagickMemory(void *memory)
Definition: memory.c:1077
MAGICK_OPENCL_DEVICE_SELECT_USER
@ MAGICK_OPENCL_DEVICE_SELECT_USER
Definition: opencl.h:35
_ExceptionInfo
Definition: exception.h:103
utility-private.h
MAGICK_OPENCL_DEVICE_SELECT_AUTO_CLEAR_CACHE
@ MAGICK_OPENCL_DEVICE_SELECT_AUTO_CLEAR_CACHE
Definition: opencl.h:36
studio.h
BlurImage
MagickExport Image * BlurImage(const Image *image, const double radius, const double sigma, ExceptionInfo *exception)
Definition: effect.c:782
resample.h
effect.h
montage.h
MagickCLEnv
struct _MagickCLEnv * MagickCLEnv
Definition: opencl.h:52
DestroyImage
MagickExport Image * DestroyImage(Image *image)
Definition: image.c:1187
opencl-private.h
MAGICKCORE_QUANTUM_DEPTH
#define MAGICKCORE_QUANTUM_DEPTH
Definition: magick-type.h:28
DelegateWarning
@ DelegateWarning
Definition: exception.h:35
memory_.h
color.h
MagickEpsilon
#define MagickEpsilon
Definition: magick-type.h:115
GetEnvironmentValue
MagickExport char * GetEnvironmentValue(const char *name)
Definition: string.c:1242
exception-private.h
ThrowMagickException
MagickExport MagickBooleanType ThrowMagickException(ExceptionInfo *exception, const char *module, const char *function, const size_t line, const ExceptionType severity, const char *tag, const char *format,...)
Definition: exception.c:1068
UnlockSemaphoreInfo
MagickExport void UnlockSemaphoreInfo(SemaphoreInfo *semaphore_info)
Definition: semaphore.c:450
exception.h
option.h
AcquireCriticalMemory
static void * AcquireCriticalMemory(const size_t size)
Definition: memory-private.h:52
random-private.h
ModuleWarning
@ ModuleWarning
Definition: exception.h:44
MaxMap
#define MaxMap
Definition: magick-type.h:78
ReadImage
MagickExport Image * ReadImage(const ImageInfo *image_info, ExceptionInfo *exception)
Definition: constitute.c:415
gem.h
AcquireExceptionInfo
MagickExport ExceptionInfo * AcquireExceptionInfo(void)
Definition: exception.c:106
MaxTextExtent
#define MaxTextExtent
Definition: method-attribute.h:89
token.h
module
const char * module
Definition: static.c:70
open_utf8
static int open_utf8(const char *path, int flags, mode_t mode)
Definition: utility-private.h:166
_ImageInfo::size
char * size
Definition: image.h:376
AcquireQuantumMemory
MagickExport void * AcquireQuantumMemory(const size_t count, const size_t quantum)
Definition: memory.c:544
mime-private.h