#include <IOKit/graphics/IOAccelSurfaceConnect.h>
IOKit/graphics/IOAccelSurfaceConnect.h
structIOAccelDeviceRegion
* Surface visible region in device coordinates.
*
* num_rects: The number of rectangles in the rect array. If num_rects
* is zero the bounds rectangle is used for the visible rectangle.
* If num_rects is zero the surface must be completely contained
* by the device.
*
* bounds: The unclipped surface rectangle in device coords. Extends
* beyond the device bounds if the surface is not totally on
* the device.
*
* rect[]: An array of visible rectangles in device coords. If num_rects
* is non-zero only the region described by these rectangles is
* copied to the frame buffer during a flush operation.
| UInt32 | num_rects | |
| IOAccelBounds | bounds | |
| IOAccelBounds[0] | rect |
typedefIOAccelDeviceRegion
typedef struct IOAccelDeviceRegion IOAccelDeviceRegion;
macroIOACCEL_SIZEOF_DEVICE_REGION
* Determine the size of a region.
#define IOACCEL_SIZEOF_DEVICE_REGION(_rgn_) (sizeof(IOAccelDeviceRegion) + (_rgn_)->num_rects * sizeof(IOAccelBounds))
enumeIOAccelSurfaceMemoryTypes
* Surface client public memory types. Private memory types start with
* kIOAccelNumSurfaceMemoryTypes.
| kIOAccelNumSurfaceMemoryTypes | 0 |
enumeIOAccelSurfaceMethods
* Surface client public methods. Private methods start with
* kIOAccelNumSurfaceMethods.
| kIOAccelSurfaceReadLockOptions | 0 | |
| kIOAccelSurfaceReadUnlockOptions | 1 | |
| kIOAccelSurfaceGetState | 2 | |
| kIOAccelSurfaceWriteLockOptions | 3 | |
| kIOAccelSurfaceWriteUnlockOptions | 4 | |
| kIOAccelSurfaceRead | 5 | |
| kIOAccelSurfaceSetShapeBacking | 6 | |
| kIOAccelSurfaceSetIDMode | 7 | |
| kIOAccelSurfaceSetScale | 8 | |
| kIOAccelSurfaceSetShape | 9 | |
| kIOAccelSurfaceFlush | 10 | |
| kIOAccelSurfaceQueryLock | 11 | |
| kIOAccelSurfaceReadLock | 12 | |
| kIOAccelSurfaceReadUnlock | 13 | |
| kIOAccelSurfaceWriteLock | 14 | |
| kIOAccelSurfaceWriteUnlock | 15 | |
| kIOAccelSurfaceControl | 16 | |
| kIOAccelSurfaceSetShapeBackingAndLength | 17 | |
| kIOAccelNumSurfaceMethods | 18 |
enumeIOAccelSurfaceModeBits
* Option bits for IOAccelCreateSurface and the kIOAccelSurfaceSetIDMode method.
* The color depth field can take any value of the _CGSDepth enumeration.
| kIOAccelSurfaceModeColorDepth1555 | 3 | |
| kIOAccelSurfaceModeColorDepth8888 | 4 | |
| kIOAccelSurfaceModeColorDepthYUV | 6 | kIOAccelSurfaceModeColorDepthRGB565 = 0x00000005, |
| kIOAccelSurfaceModeColorDepthYUV9 | 7 | |
| kIOAccelSurfaceModeColorDepthYUV12 | 8 | |
| kIOAccelSurfaceModeColorDepthYUV2 | 9 | |
| kIOAccelSurfaceModeColorDepthBGRA32 | 10 | |
| kIOAccelSurfaceModeColorDepth2101010 | 15 | kIOAccelSurfaceModeColorDepthYUV420 = 0x0000000E, |
| kIOAccelSurfaceModeColorDepthBits | 15 | |
| kIOAccelSurfaceModeStereoBit | 16 | |
| kIOAccelSurfaceModeWindowedBit | 32 | |
| kIOAccelSurfaceModeSurface2 | 16384 | |
| kIOAccelSurfaceModeBeamSync | 32768 |
typedefeIOAccelSurfaceModeBits
typedef enum eIOAccelSurfaceModeBits eIOAccelSurfaceModeBits;
enumeIOAccelSurfaceShapeBits
* Options bits for IOAccelSetSurfaceShape and the kIOAccelSurfaceSetShape method.
| kIOAccelSurfaceShapeNone | 0 | |
| kIOAccelSurfaceShapeNonBlockingBit | 1 | |
| kIOAccelSurfaceShapeNonSimpleBit | 2 | |
| kIOAccelSurfaceShapeIdentityScaleBit | 4 | |
| kIOAccelSurfaceShapeFrameSyncBit | 8 | |
| kIOAccelSurfaceShapeBeamSyncBit | 16 | |
| kIOAccelSurfaceShapeStaleBackingBit | 32 | |
| kIOAccelSurfaceShapeAssemblyBit | 64 | |
| kIOAccelSurfaceShapeWaitEnabledBit | 128 | |
| kIOAccelSurfaceShapeBlockingBit | 1 | wrong name, use kIOAccelSurfaceShapeNonBlockingBit |
typedefeIOAccelSurfaceShapeBits
typedef enum eIOAccelSurfaceShapeBits eIOAccelSurfaceShapeBits;
enumeIOAccelSurfaceStateBits
* Return bits for the kIOAccelSurfaceGetState method.
| kIOAccelSurfaceStateNone | 0 | |
| kIOAccelSurfaceStateIdleBit | 1 |
typedefeIOAccelSurfaceStateBits
typedef enum eIOAccelSurfaceStateBits eIOAccelSurfaceStateBits;
enumeIOAccelSurfaceScaleBits
* Option bits for the kIOAccelSurfaceSetScale method.
| kIOAccelSurfaceBeamSyncSwaps | 1 | |
| kIOAccelSurfaceFixedSource | 2 | |
| kIOAccelSurfaceFiltering | 240 | |
| kIOAccelSurfaceFilterDefault | 0 | |
| kIOAccelSurfaceFilterNone | 16 | |
| kIOAccelSurfaceFilterLinear | 32 |
typedefeIOAccelSurfaceScaleBits
typedef enum eIOAccelSurfaceScaleBits eIOAccelSurfaceScaleBits;
enumeIOAccelSurfaceLockBits
* Option bits for the kIOAccelSurfaceLock methods.
| kIOAccelSurfaceLockInBacking | 0 | |
| kIOAccelSurfaceLockInAccel | 1 | |
| kIOAccelSurfaceLockInDontCare | 2 | |
| kIOAccelSurfaceLockInMask | 3 |
typedefeIOAccelSurfaceLockBits
typedef enum eIOAccelSurfaceLockBits eIOAccelSurfaceLockBits;