namespace SharpCL { public enum ErrorCode: int { Success = 0, DeviceNotFound = -1, DeviceNotAvailable = -2, DeviceCompilerNotAvailable = -3, MemObjectAllocationFailure = -4, OutOfResources = -5, OutOfHostMemory = -6, ProfilingInfoNotAvailable = -7, MemCopyOverlap = -8, ImageFormatMismatch = -9, ImageFormatNotSupported = -10, InvalidValue = -30, InvalidDeviceType = -31, InvalidDeviceList = -32, InvalidDevice = -33, InvalidContext = -34, InvalidQueueProperties = -35, InvalidCommandQueue = -36, InvalidHostPtr = -37, InvalidMemObject = -38, InvalidImageFormatDescriptor = -39, InvalidImageSize = -40, InvalidSampler = -41, InvalidBinary = -42, InvalidBuildOptions = -43, InvalidProgram = -44, InvalidProgramExecutable = -45, InvalidKernelName = -46, InvalidKernelDefinition = -47, InvalidKernel = -48, InvalidArgIndex = -49, InvalidArgValue = -50, InvalidArgSize = -51, InvalidKernelArgs = -52, InvalidWorkDimension = -53, InvalidWorkGroupSize = -54, InvalidWorkItemSize = -55, InvalidGlobalOffset = -56, InvalidEventWaitList = -57, InvalidEvent = -58, InvalidOperation = -59, InvalidGLObject = -60, InvalidBufferSize = -61, InvalidMipLevel = -62, } public enum OpenCLVersion: uint { Version10 = 1, } public enum Bool: uint { False = 0, True = 1, } public enum PlatformInfo: uint { PlatformProfile = 0x0900, PlatformVersion = 0x0901, } public enum DeviceType: ulong { DeviceTypeDefault = (1 << 0), DeviceTypeCpu = (1 << 1), DeviceTypeGpu = (1 << 2), DeviceTypeAccelerator = (1 << 3), DeviceTypeAll = 0xFFFFFFFF, } public enum DeviceInfo: uint { DeviceType = 0x1000, DeviceVendorID = 0x1001, DeviceMaxComputeUnits = 0x1002, DeviceMaxWorkItemDimensions = 0x1003, DeviceMaxWorkGroupSize = 0x1004, DeviceMaxWorkItemSizes = 0x1005, DevicePreferredVectorWidthChar = 0x1006, DevicePreferredVectorWidthShort = 0x1007, DevicePreferredVectorWidthInt = 0x1008, DevicePreferredVectorWidthLong = 0x1009, DevicePreferredVectorWidthFloat = 0x100A, DevicePreferredVectorWidthDouble = 0x100B, DeviceMaxClockFrequency = 0x100C, DeviceAddressBits = 0x100D, DeviceMaxReadImageArgs = 0x100E, DeviceMaxWriteImageArgs = 0x100F, DeviceMaxMemAllocSize = 0x1010, DeviceImage2DMaxWidth = 0x1011, DeviceImage2DMaxHeight = 0x1012, DeviceImage3DMaxWidth = 0x1013, DeviceImage3DMaxHeight = 0x1014, DeviceImage3DMaxDepth = 0x1015, DeviceImageSupport = 0x1016, DeviceMaxParameterSize = 0x1017, DeviceMaxSamplers = 0x1018, DeviceMemBaseAddrAlign = 0x1019, DeviceMinDataTypeAlignSize = 0x101A, DeviceSingleFPConfig = 0x101B, DeviceGlobalMemCacheType = 0x101C, DeviceGlobalMemCachelineSize = 0x101D, DeviceGlobalMemCacheSize = 0x101E, DeviceGlobalMemSize = 0x101F, DeviceMaxConstantBufferSize = 0x1020, DeviceMaxConstantArgs = 0x1021, DeviceLocalMemType = 0x1022, DeviceLocalMemSize = 0x1023, DeviceErrorCorrectionSupport = 0x1024, DeviceProfilingTimerResolution = 0x1025, DeviceEndianLittle = 0x1026, DeviceAvailable = 0x1027, DeviceCompilerAvailable = 0x1028, DeviceExecutionCapabilities = 0x1029, DeviceQueueProperties = 0x102A, DeviceName = 0x102B, DeviceVendor = 0x102C, DriverVersion = 0x102D, DeviceProfile = 0x102E, DeviceVersion = 0x102F, DeviceExtensions = 0x1030, } public enum DeviceAddressInfo: ulong { DeviceAddress32Bits = (1 << 0), DeviceAddress64Bits = (1 << 1), } public enum DeviceFPConfig: ulong { FPDenorm = (1 << 0), FPInfNan = (1 << 1), FPRoundToNearest = (1 << 2), FPRoundToZero = (1 << 3), FPRoundToInf = (1 << 4), FPFma = (1 << 5), } public enum DeviceMemCacheType: uint { None = 0x0, ReadOnlyCache = 0x1, ReadWriteCache = 0x2, } public enum DeviceLocalMemType: uint { Local = 0x1, Global = 0x2, } public enum DeviceExecCapabilities: ulong { ExecKernel = (1 << 0), ExecNativeKernel = (1 << 1), } public enum CommandQueueProperties: ulong { QueueOutOfOrderExecModeEnable = (1 << 0), QueueProfilingEnable = (1 << 1), } public enum ContextInfo: uint { ContextReferenceCount = 0x1080, ContextNumDevices = 0x1081, ContextDevices = 0x1082, ContextProperties = 0x1083, } public enum CommandQueueInfo: uint { QueueContext = 0x1090, QueueDevice = 0x1091, QueueReferenceCount = 0x1092, QueueProperties = 0x1093, } public enum MemFlags: ulong { MemReadWrite = (1 << 0), MemWriteOnly = (1 << 1), MemReadOnly = (1 << 2), MemUseHostPtr = (1 << 3), MemAllocHostPtr = (1 << 4), MemCopyHostPtr = (1 << 5), } public enum ChannelOrder: uint { R = 0x10B0, A = 0x10B1, RG = 0x10B2, RA = 0x10B3, Rgb = 0x10B4, Rgba = 0x10B5, Bgra = 0x10B6, Argb = 0x10B7, } public enum ChannelType: uint { SNormInt8 = 0x10D0, SNormInt16 = 0x10D1, UNormInt8 = 0x10D2, UNormInt16 = 0x10D3, UNormShort565 = 0x10D4, UNormShort555 = 0x10D5, UNormInt101010 = 0x10D6, SignedInt8 = 0x10D7, SignedInt16 = 0x10D8, SignedInt32 = 0x10D9, UnsignedInt8 = 0x10DA, UnsignedInt16 = 0x10DB, UnsignedInt32 = 0x10DC, HalfFloat = 0x10DD, Float = 0x10DE, } public enum MemObjectType: uint { MemObjectBuffer = 0x10F0, MemObjectImage2D = 0x10F1, MemObjectImage3D = 0x10F2, } public enum MemInfo: uint { MemType = 0x1100, MemFlags = 0x1101, MemSize = 0x1102, MemHostPtr = 0x1103, MemMapCount = 0x1104, MemReferenceCount = 0x1105, MemContext = 0x1106, } public enum ImageInfo: uint { ImageFormat = 0x1110, ImageElementSize = 0x1111, ImageRowPitch = 0x1112, ImageSlicePitch = 0x1113, ImageWidth = 0x1114, ImageHeight = 0x1115, ImageDepth = 0x1116, } public enum AddressingMode: uint { AddressNone = 0x1130, AddressClampToEdge = 0x1131, AddressClamp = 0x1132, AddressRepeat = 0x1133, } public enum FilterMode: uint { FilterNearest = 0x1140, FilterLinear = 0x1141, } public enum SamplerInfo: uint { SamplerReferenceCount = 0x1150, SamplerContext = 0x1151, SamplerNormalizedCoords = 0x1152, SamplerAddressingMode = 0x1153, SamplerFilterMode = 0x1154, } public enum MapFlags: ulong { MapRead = (1 << 0), MapWrite = (1 << 1), } public enum ProgramInfo: uint { ProgramReferenceCount = 0x1160, ProgramContext = 0x1161, ProgramNumDevices = 0x1162, ProgramDevices = 0x1163, ProgramSource = 0x1164, ProgramBinarySizes = 0x1165, ProgramBinaries = 0x1166, } public enum ProgramBuildInfo: uint { ProgramBuildStatus = 0x1181, ProgramBuildOptions = 0x1182, ProgramBuildLog = 0x1183, } public enum BuildStatus: int { BuildSuccess = 0, BuildNone = -1, BuildError = -2, BuildInProgress = -3, } public enum KernelInfo: uint { KernelFunctionName = 0x1190, KernelNumArgs = 0x1191, KernelReferenceCount = 0x1192, KernelContext = 0x1193, KernelProgram = 0x1194, } public enum KernelWorkGroupInfo: uint { KernelWorkGroupSize = 0x11B0, KernelCompileWorkGroupSize = 0x11B1, } public enum EventInfo: uint { EventCommandQueue = 0x11D0, EventCommandType = 0x11D1, EventReferenceCount = 0x11D2, EventCommandExecutionStatus = 0x11D3, } public enum CommandType: uint { CommandNdrangeKernel = 0x11F0, CommandTask = 0x11F1, CommandNativeKernel = 0x11F2, CommandReadBuffer = 0x11F3, CommandWriteBuffer = 0x11F4, CommandCopyBuffer = 0x11F5, CommandReadImage = 0x11F6, CommandWriteImage = 0x11F7, CommandCopyImage = 0x11F8, CommandCopyImageToBuffer = 0x11F9, CommandCopyBufferToImage = 0x11FA, CommandMapBuffer = 0x11FB, CommandMapImage = 0x11FC, CommandUnmapMemObject = 0x11FD, CommandMarker = 0x11FE, CommandWaitForEvents = 0x11FF, CommandBarrier = 0x1200, CommandAcquireGLObjects = 0x1201, CommandReleaseGLObjects = 0x1202, } public enum CommandExecutionStatus: uint { Complete = 0x0, Running = 0x1, Submitted = 0x2, Queued = 0x3, } public enum ProfilingInfo: uint { ProfilingCommandQueued = 0x1280, ProfilingCommandSubmit = 0x1281, ProfilingCommandStart = 0x1282, ProfilingCommandEnd = 0x1283, } }