13#include <af/compilers.h>
16#if defined(_WIN32) || defined(_MSC_VER)
20 #define AFAPI __declspec(dllexport)
22 #define AFAPI __declspec(dllimport)
27 #define bool unsigned char
31 #define __PRETTY_FUNCTION__ __FUNCSIG__
32 #define SIZE_T_FRMT_SPECIFIER "%Iu"
33 #define AF_DEPRECATED(msg) __declspec(deprecated( msg ))
35 #define AF_HAS_VARIADIC_TEMPLATES
38 #define AFAPI __attribute__((visibility("default")))
40 #define SIZE_T_FRMT_SPECIFIER "%zu"
41#if __GNUC__ >= 4 && __GNUC_MINOR > 4
42 #define AF_DEPRECATED(msg) __attribute__((deprecated( msg )))
44 #define AF_DEPRECATED(msg) __attribute__((deprecated))
49#if defined(__x86_64__) || defined(_M_X64) || defined(_WIN64) || defined(__aarch64__) || defined(__LP64__)
50 typedef long long dim_t;
52#elif defined(__i386__) || defined(_M_IX86) || defined(__arm__) || defined(_M_ARM)
66#include <af/version.h>
68#define AF_API_VERSION AF_API_VERSION_CURRENT
127#if AF_API_VERSION >= 33
146#if AF_API_VERSION >= 32
166#if AF_API_VERSION >= 37
175#if AF_API_VERSION >= 32
182#if AF_API_VERSION >= 32
189#if AF_API_VERSION >= 32
221#if AF_API_VERSION >= 32
224#if AF_API_VERSION >= 32
227#if AF_API_VERSION >= 37
248#if AF_API_VERSION >= 34
251#if AF_API_VERSION >= 34
254#if AF_API_VERSION >= 34
257#if AF_API_VERSION >= 34
260#if AF_API_VERSION >= 34
331#if AF_API_VERSION >= 31
343#if AF_API_VERSION >= 31
376#if AF_API_VERSION >= 31
394#if AF_API_VERSION >=34
404#if AF_API_VERSION >= 32
411#if AF_API_VERSION >= 32
429#if AF_API_VERSION >=34
438#if AF_API_VERSION >=34
468#if AF_API_VERSION >= 32
482#if AF_API_VERSION >= 35
489#if AF_API_VERSION >= 34
498#if AF_API_VERSION >= 36
521#if AF_API_VERSION >= 37
541#if AF_API_VERSION >= 37
567#if AF_API_VERSION >= 31
570#if AF_API_VERSION >= 31
573#if AF_API_VERSION >= 32
576#if AF_API_VERSION >= 32
579#if AF_API_VERSION >= 34
582#if AF_API_VERSION >= 34
585#if AF_API_VERSION >= 34
588#if AF_API_VERSION >= 34
591#if AF_API_VERSION >= 35
594#if AF_API_VERSION >= 36
599#if AF_API_VERSION >= 37
@ u32
32-bit unsigned integral values
@ u64
64-bit unsigned integral values
@ s32
32-bit signed integral values
@ s64
64-bit signed integral values
@ c64
64-bit complex floating point values
@ f32
32-bit floating point values
@ s16
16-bit signed integral values
@ c32
32-bit complex floating point values
@ f64
64-bit floating point values
@ u16
16-bit unsigned integral values
@ f16
16-bit floating point value
@ u8
8-bit unsigned integral values
@ AF_CANNY_THRESHOLD_AUTO_OTSU
Determine canny algorithm thresholds using Otsu algorithm.
@ AF_CANNY_THRESHOLD_MANUAL
User has to define canny thresholds manually.
@ AF_ITERATIVE_DECONV_LANDWEBER
Landweber Deconvolution.
@ AF_ITERATIVE_DECONV_DEFAULT
Default is Landweber deconvolution.
@ AF_ITERATIVE_DECONV_RICHARDSONLUCY
Richardson-Lucy Deconvolution.
@ AF_INVERSE_DECONV_DEFAULT
Default is Tikhonov deconvolution.
@ AF_INVERSE_DECONV_TIKHONOV
Tikhonov Inverse deconvolution.
@ AF_NORM_MATRIX_L_PQ
returns Lpq-norm
@ AF_NORM_VECTOR_2
treats the input as a vector and returns euclidean norm
@ AF_NORM_MATRIX_2
returns the max singular value). Currently NOT SUPPORTED
@ AF_NORM_MATRIX_INF
return the max of row sums
@ AF_NORM_EUCLID
The default. Same as AF_NORM_VECTOR_2.
@ AF_NORM_VECTOR_P
treats the input as a vector and returns the p-norm
@ AF_NORM_VECTOR_INF
treats the input as a vector and returns the max of absolute values
@ AF_NORM_VECTOR_1
treats the input as a vector and returns the sum of absolute values
@ AF_NORM_MATRIX_1
return the max of column sums
@ AF_PAD_SYM
Out of bound values are symmetric over the edge.
@ AF_PAD_PERIODIC
Out of bound values are mapped to range of the dimension in cyclic fashion.
@ AF_PAD_CLAMP_TO_EDGE
Out of bound values are clamped to the edge.
@ AF_PAD_ZERO
Out of bound values are 0.
@ AF_FIF_PNG
FreeImage Enum for Portable Network Graphics File.
@ AF_FIF_PSD
FreeImage Enum for Adobe Photoshop File.
@ AF_FIF_PPMRAW
FreeImage Enum for Portable Pixelmap (Binary) File.
@ AF_FIF_JPEG
FreeImage Enum for JPEG File.
@ AF_FIF_JP2
FreeImage Enum for JPEG-2000 File.
@ AF_FIF_PPM
FreeImage Enum for Portable Pixelmap (ASCII) File.
@ AF_FIF_BMP
FreeImage Enum for Bitmap File.
@ AF_FIF_ICO
FreeImage Enum for Windows Icon File.
@ AF_FIF_RAW
FreeImage Enum for RAW Camera Image File.
@ AF_FIF_EXR
FreeImage Enum for ILM OpenEXR File.
@ AF_FIF_TIFF
FreeImage Enum for Tagged Image File Format File.
@ AF_FIF_HDR
FreeImage Enum for High Dynamic Range File.
@ AF_FIF_JNG
FreeImage Enum for JPEG Network Graphics File.
@ AF_COLORMAP_COLORS
Colors, aka. Rainbow.
@ AF_COLORMAP_SPECTRUM
Spectrum map (390nm-830nm, in sRGB colorspace)
@ AF_COLORMAP_DEFAULT
Default grayscale map.
@ AF_COLORMAP_VIRIDIS
Perceptually uniform shades of blue-green-yellow.
@ AF_COLORMAP_BLUE
Blue hue map.
@ AF_COLORMAP_HEAT
Heat map.
@ AF_COLORMAP_RED
Red hue map.
@ AF_COLORMAP_PLASMA
Perceptually uniform shades of blue-red-yellow.
@ AF_COLORMAP_MAGMA
Perceptually uniform shades of black-red-white.
@ AF_COLORMAP_MOOD
Mood map.
@ AF_COLORMAP_INFERNO
Perceptually uniform shades of black-red-yellow.
@ AF_MAT_CONJ
Data needs to be conjugate.
@ AF_MAT_CTRANS
Data needs to be conjugate tansposed.
@ AF_MAT_LOWER
Matrix is lower triangular.
@ AF_MAT_POSDEF
Matrix is positive definite.
@ AF_MAT_UPPER
Matrix is upper triangular.
@ AF_MAT_SYM
Matrix is symmetric.
@ AF_MAT_ORTHOG
Matrix is orthogonal.
@ AF_MAT_BLOCK_DIAG
Matrix is block diagonal.
@ AF_MAT_TRI_DIAG
Matrix is tri diagonal.
@ AF_MAT_DIAG_UNIT
Matrix diagonal contains unitary values.
@ AF_MAT_TRANS
Data needs to be transposed.
@ AF_STORAGE_CSC
Storage type is CSC.
@ AF_STORAGE_CSR
Storage type is CSR.
@ AF_STORAGE_COO
Storage type is COO.
@ AF_STORAGE_DENSE
Storage type is dense.
@ AF_RANDOM_ENGINE_PHILOX
@ AF_RANDOM_ENGINE_DEFAULT
@ AF_RANDOM_ENGINE_MERSENNE_GP11213
@ AF_RANDOM_ENGINE_THREEFRY
@ AF_RANDOM_ENGINE_PHILOX_4X32_10
@ AF_RANDOM_ENGINE_MERSENNE
@ AF_RANDOM_ENGINE_THREEFRY_2X32_16
@ AF_ERR_ARR_BKND_MISMATCH
@ AF_SUCCESS
The function returned successfully.
@ AF_CONV_FREQ
Perform convolution in frequency domain.
@ AF_CONV_SPATIAL
Perform convolution in spatial domain.
@ AF_CONV_AUTO
ArrayFire automatically picks the right convolution algorithm.
@ AF_HOMOGRAPHY_RANSAC
Computes homography using RANSAC.
@ AF_HOMOGRAPHY_LMEDS
Computes homography using Least Median of Squares.
#define AF_DEPRECATED(msg)
@ AF_LSSD
Match based on Locally scaled SSD.
@ AF_ZNCC
Match based on Zero mean NCC.
@ AF_ZSAD
Match based on Zero mean SAD.
@ AF_SSD
Match based on Sum of Squared Differences (SSD)
@ AF_NCC
Match based on Normalized Cross Correlation (NCC)
@ AF_SHD
Match based on Sum of Hamming Distances (SHD)
@ AF_LSAD
Match based on Locally scaled SAD.
@ AF_ZSSD
Match based on Zero mean SSD.
@ AF_SAD
Match based on Sum of Absolute Differences (SAD)
@ AF_TOPK_STABLE_MAX
Top k max with stable indices.
@ AF_TOPK_STABLE
Preserve order of indices for equal values.
@ AF_TOPK_MIN
Top k min values.
@ AF_TOPK_MAX
Top k max values.
@ AF_TOPK_DEFAULT
Default option (max)
@ AF_TOPK_STABLE_MIN
Top k min with stable indices.
@ AF_YCC_709
ITU-R BT.709 standard.
@ AF_YCC_2020
ITU-R BT.2020 standard.
@ AF_YCC_601
ITU-R BT.601 (formerly CCIR 601) standard.
@ AF_VARIANCE_DEFAULT
Default (Population) variance.
@ AF_VARIANCE_SAMPLE
Sample variance.
@ AF_VARIANCE_POPULATION
Population variance.
@ afDevice
Device pointer.
@ AF_INTERP_CUBIC
Cubic Interpolation.
@ AF_INTERP_LOWER
Floor Indexed.
@ AF_INTERP_LINEAR_COSINE
Linear Interpolation with cosine smoothing.
@ AF_INTERP_LINEAR
Linear Interpolation.
@ AF_INTERP_NEAREST
Nearest Interpolation.
@ AF_INTERP_BILINEAR_COSINE
Bilinear Interpolation with cosine smoothing.
@ AF_INTERP_CUBIC_SPLINE
Cubic Interpolation with Catmull-Rom splines.
@ AF_INTERP_BICUBIC
Bicubic Interpolation.
@ AF_INTERP_BICUBIC_SPLINE
Bicubic Interpolation with Catmull-Rom splines.
@ AF_INTERP_BILINEAR
Bilinear Interpolation.
@ AF_DIFFUSION_MCDE
Modified curvature diffusion equation.
@ AF_DIFFUSION_GRAD
Gradient diffusion equation.
@ AF_DIFFUSION_DEFAULT
Default option is same as AF_DIFFUSION_GRAD.
@ AF_CONV_DEFAULT
Output of the convolution is the same size as input.
@ AF_CONV_EXPAND
Output of the convolution is signal_len + filter_len - 1.
@ AF_YCbCr
3-channel YCbCr
@ AF_FLUX_EXPONENTIAL
Exponential flux function.
@ AF_FLUX_QUADRATIC
Quadratic flux function.
@ AF_FLUX_DEFAULT
Default flux function is exponential.
@ AF_CONNECTIVITY_4
Connectivity includes neighbors, North, East, South and West of current pixel.
@ AF_CONNECTIVITY_8
Connectivity includes 4-connectivity neigbors and also those on Northeast, Northwest,...
@ AF_BACKEND_ONEAPI
OneAPI Compute Backend.
@ AF_BACKEND_CUDA
CUDA Compute Backend.
@ AF_BACKEND_OPENCL
OpenCL Compute Backend.
@ AF_BACKEND_CPU
CPU a.k.a sequential algorithms.
@ AF_BACKEND_DEFAULT
Default backend order: OpenCL -> CUDA -> CPU.
@ AF_CONV_GRADIENT_FILTER
@ AF_CONV_GRADIENT_DEFAULT
af_diffusion_eq diffusionEq
af_flux_function fluxFunction
af_border_type borderType
af_topk_function topkFunction
af_moment_type momentType
af_iterative_deconv_algo iterativeDeconvAlgo
af_conv_gradient_type convGradientType
af_interp_type interpType
af_random_engine_type randomEngineType
af_canny_threshold cannyThreshold
af_connectivity connectivity
af_inverse_deconv_algo inverseDeconvAlgo
af_conv_domain convDomain
af_marker_type markerType
af_image_format imageFormat