class TAcceleratedBitmapSpec |
A utility class that provides access to the contents of a bitmap.
The bitmap can be a hardware bitmap (RHardwareBitmap), or an ordinary bitmap (CFbsBitmap). An object of this class is used as a parameter by several accelerated graphics operations, e.g. TGopBitBlt, to specify the source bitmap for the operation.
Public Member Functions | |
---|---|
TAcceleratedBitmapSpec() | |
TAcceleratedBitmapSpec(CFbsBitmap *) | |
TAcceleratedBitmapSpec(RHardwareBitmap) | |
IMPORT_C TInt | GetInfo(TAcceleratedBitmapInfo &) |
TInt | Handle() |
void | Lock(TBitmapLockCount &) |
void | Lock(TBitmapLockCount &, TAcceleratedBitmapInfo &) |
TAcceleratedBitmapType | Type() |
void | Unlock(TBitmapLockCount &) |
Private Member Functions | |
---|---|
IMPORT_C void | DoLock(TBitmapLockCount &) |
IMPORT_C void | DoLock(TBitmapLockCount &, TAcceleratedBitmapInfo &) |
IMPORT_C void | DoUnlock(TBitmapLockCount &) |
Public Member Enumerations | |
---|---|
enum | TAcceleratedBitmapLock { EBitmapIsStatic, EBitmapNeedsLocking } |
enum | TAcceleratedBitmapType { ENoBitmap, EFbsBitmap, EHardwareBitmap } |
Private Attributes | |
---|---|
TInt | iHandle |
TUint8 | iLockStatus |
TUint8 | iSpare1 |
TUint8 | iSpare2 |
TUint8 | iType |
TAcceleratedBitmapSpec | ( | ) | [inline] |
Default constructor. Use one of the other constructor overloads instead.
IMPORT_C | TAcceleratedBitmapSpec | ( | CFbsBitmap * | aBitmap | ) |
CFbsBitmap * aBitmap |
IMPORT_C | TAcceleratedBitmapSpec | ( | RHardwareBitmap | aBitmap | ) |
RHardwareBitmap aBitmap |
IMPORT_C void | DoLock | ( | TBitmapLockCount & | aCount | ) | [private] |
TBitmapLockCount & aCount |
IMPORT_C void | DoLock | ( | TBitmapLockCount & | aCount, |
TAcceleratedBitmapInfo & | aInfo | |||
) | [private] |
TBitmapLockCount & aCount | |
TAcceleratedBitmapInfo & aInfo |
IMPORT_C void | DoUnlock | ( | TBitmapLockCount & | aCount | ) | [private] |
TBitmapLockCount & aCount |
IMPORT_C TInt | GetInfo | ( | TAcceleratedBitmapInfo & | aInfo | ) | const |
TAcceleratedBitmapInfo & aInfo |
void | Lock | ( | TBitmapLockCount & | aCount | ) | [inline] |
Prevents a bitmap from moving in memory. Lock() should be called before accessing the bitmap and Unlock() immediately afterwards. Although it is not necessary to lock and unlock some types of bitmap, it is a small overhead, and it is recommended that you always do it.
If a bitmap is already locked, all uses of the Lock() and Unlock() methods within the same thread must use the same TBitmapLockCount object, even if Lock() and Unlock() are called by different instances of TAcceleratedBitmapSpec.
TBitmapLockCount & aCount | Maintains a count of the number of locks made on the bitmap. |
void | Lock | ( | TBitmapLockCount & | aCount, |
TAcceleratedBitmapInfo & | aInfo | |||
) | [inline] |
Prevents a bitmap from moving in memory. Lock() should be called before accessing the bitmap and Unlock() immediately afterwards. Although it is not necessary to lock and unlock some types of bitmap, it is a small overhead, and it is recommended that you always do it. Also updates a TAcceleratedBitmapInfo structure with any information that may have changed, (typically the bitmap's memory address).
If a bitmap is already locked, all uses of the Lock() and Unlock() methods within the same thread must use the same TBitmapLockCount object, even if Lock() and Unlock() are called by different instances of TAcceleratedBitmapSpec.
TBitmapLockCount & aCount | Maintains a count of the number of locks made on the bitmap. |
TAcceleratedBitmapInfo & aInfo | On return, contains the new address of the start of the bitmap. |
TAcceleratedBitmapType | Type | ( | ) | const [inline] |
Returns the type of the bitmap. The type is assigned during construction.
The type of bitmap.
void | Unlock | ( | TBitmapLockCount & | aCount | ) | [inline] |
Frees a bitmap after a call to Lock(). A call to Unlock() must be made for each corresponding call to Lock(). This function should be called as soon as any bitmap access has finished. If, after the Unlock() operation, no more calls to Lock() are outstanding on the bitmap, the bitmap is free to be moved in memory again.
If a bitmap is already locked, all uses of the Lock() and Unlock() methods within the same thread must use the same TBitmapLockCount object, even if Lock() and Unlock() are called by different instances of TAcceleratedBitmapSpec.
TBitmapLockCount & aCount | Maintains a count of the number of locks made on the bitmap. |
ENoBitmap |
The object was created using the default constructor, and has no type. |
EFbsBitmap |
The bitmap is of type CFbsBitmap. |
EHardwareBitmap |
The bitmap is of type RHardwareBitmap. |