class TGraphicsAcceleratorCaps |
Stores the capabilities of a graphics accelerator.
All of the member enums except TMaskBitmapCaps define flags that are stored as public data of type TUint. Only TMaskBitmapCaps takes sequential values, so its values are mutually exclusive.
An object of this class is returned by CGraphicsAccelerator::Capabilities() or by GenericCapabilities(), which is implemented by CSoftwareGraphicsAccelerator and CHardwareGraphicsAccelerator.
Public Member Enumerations | |
---|---|
enum | TAlphaBitmapCaps { EAlphaBitmapGray256 = 1, EAlphaBitmapColor16M = 2, EAlphaBitmapMatchingMode = 4 } |
enum | TAlphaChannelCaps { EAlpha4444 = 1, EAlpha8888 = 2, EAlpha1555 = 4 } |
enum | TClipCaps { EClipToBitmap = 1, EClipping = 2 } |
enum | TMaskBitmapCaps { EMaskBitmapNone = 0, EMaskBitmapAnyDisplayMode, EMaskBitmapMatchingDisplayMode, EMaskBitmapGray2 } |
enum | TOrientationCaps { EOrientationCapNormal = 1, EOrientationCapRotated90 = 2, EOrientationCapRotated180 = 4, EOrientationCapRotated270 = 8, EOrientationCapAll = EOrientationCapNormal|EOrientationCapRotated90|EOrientationCapRotated180|EOrientationCapRotated270 } |
enum | TPatternCaps { EPatternAnyDisplayMode = 1, EPatternMatchingDisplayMode = 2, EPatternMustBeSquare = 4 } |
enum | TPatternSizeCaps { EPatternSizeAny = 0xFFFFFFFF } |
enum | TPolygonCaps { EPolygonFillAlternate = 1, EPolygonFillWinding = 2 } |
Bit flags for the capabilities relating to operations which take an alpha bitmap parameter, for instance TGopBitBltAlphaBitmap. These flags are used by the iAlphaBitmap member.
EAlphaBitmapGray256 = 1 |
For 256 greyscale bitmaps, the value of each pixel in the alpha bitmap (from 0 to 255) is used as the alpha value. |
EAlphaBitmapColor16M = 2 |
An EColor16M bitmap may be used as the alpha bitmap. The red, green and blue values for each pixel in this bitmap are used as the alpha values for the red, green and blue components of the corresponding pixel in the source bitmap. |
EAlphaBitmapMatchingMode = 4 |
The alpha bitmap must have the same display mode as the source bitmap. |
Bit flags for the capabilities relating to operations that use an alpha channel (TGopBitBltAlphaChannel and TGopScaledBitBltAlphaChannel). These flags are used by the iAlphaChannel member.
EAlpha4444 = 1 |
The accelerator can draw bitmaps with 4 bits each for the alpha value and the red, green and blue components. |
EAlpha8888 = 2 |
The accelerator can draw bitmaps with 8 bits each for the alpha value and the red, green and blue components. |
EAlpha1555 = 4 |
The accelerator can draw bitmaps with 1 bit for the alpha value and and 5 bits for the red, green and blue components. |
Clipping capabilities. Used by the iClipping member.
EClipToBitmap = 1 | |
EClipping = 2 |
The accelerator supports the Operation() methods which take clipping rectangles as parameters. |
Enumerates the capabilities relating to operations taking a bitmap mask parameter, for instance TGopBitBltMasked. These are mutually exclusive values used by the iMaskType member.
EMaskBitmapNone = 0 |
No masked operations are supported. |
EMaskBitmapAnyDisplayMode |
The mask bitmap can be in any display mode at all. |
EMaskBitmapMatchingDisplayMode |
The mask bitmap must be in the same display mode as the destination bitmap. |
EMaskBitmapGray2 |
The mask bitmap must be in EGray2 display mode. |
Bit flags for the specifying the supported rendering orientations. CFbsBitGc::TGraphicsOrientation
EOrientationCapNormal = 1 |
Normal orientation is supported. |
EOrientationCapRotated90 = 2 |
A 90 degree rotation is supported. |
EOrientationCapRotated180 = 4 |
A 180 degree rotation is supported. |
EOrientationCapRotated270 = 8 |
A 270 degree rotation is supported. |
EOrientationCapAll = EOrientationCapNormal|EOrientationCapRotated90|EOrientationCapRotated180|EOrientationCapRotated270 |
All orientations are supported. |
Bit flags for the capabilities relating to operations that draw a fill pattern using a bitmap, for instance TGopFilledRectWithPatern. They are used in the iPattern member.
EPatternAnyDisplayMode = 1 |
The pattern bitmap can be in any display mode. |
EPatternMatchingDisplayMode = 2 |
The pattern bitmap must be in the same display mode as the destination. |
EPatternMustBeSquare = 4 |
The pattern bitmap must be square (width==height). |
Indicates whether there is a restriction on the sizes of bitmaps that can be used in bitmap patterns.
This is one of the possible values for the iPatternSizes member.
EPatternSizeAny = 0xFFFFFFFF |
There is no restriction on the dimensions of bitmap patterns. |
Bit flags for how self-crossing polygons are filled.
EPolygonFillAlternate = 1 |
Only areas with odd winding numbers are filled. |
EPolygonFillWinding = 2 |
All areas with a winding number greater than zero are filled. |
TUint | iAlphaBitmap |
Specifies the supported alpha bitmap types. Uses a bit flag for each TAlphaBitmapCaps supported.
TUint | iAlphaChannel |
Specifies the capabilities relating to operations that use an alpha channel. Uses a bit flag for each TAlphaChannelCaps supported.
TUint | iClipping |
Indicates whether the Operation() methods which take clipping rectangles as parameters are supported.
TUint | iDisplayModes |
A bit mask of the supported display modes for the bitmap passed to the graphics accelerator's NewL(). Uses the least significant 11 bits as flags for each TDisplayMode supported. For instance, to check whether the EColor256 display mode is available, use the expression iDisplayModes & (1 << EColor256).
TMaskBitmapCaps | iMaskType |
Specifies the display mode restrictions for bitmap masks. These are mutually exclusive values.
TUint | iPattern |
Specifies the supported bitmap types for fill patterns. Uses a bit flag for each TPatternCaps supported.
TUint | iPatternSizes |
Specifies the sizes of bitmaps that can be used in bitmap patterns.
This is a bitmask for each power of 2, or EPatternSizeAny. For example, if bitmaps used in patterns can only have a width or height of 16 pixels then this value should be set to 16. If patterns can have dimensions of 16, 32, 64, 128 or 256, then this value would equal the sum of these, (i.e. bits 4, 5, 6, 7 and 8 would be set). If this value is equal to EPatternSizeAny, there are no restrictions on the size of patterns that can be used.
TUint | iPolygon |
Specifies the supported fill rules for self crossing polygons. Uses a bit flag for each TPolygonCaps supported.
TUint | iReserved |
iReserved[0] specifies the supported rendering orientations.Uses a bit flags for each TOrientationCaps supported. TOrientationCaps iReserved[1]-iReserved[3] are reserved for future use. All should be set to zero.
TUint | iTransparency |
Specifies the transparency types supported. Uses a bit flag for each TTransparencyType supported.
TUid | iVendorUid |
Optional UID to identify the vendor of the graphics accelerator. This UID can be used to recognise a particular accelerator, enabling code to use any custom graphics operations and capabilities that it knows the accelerator provides.