1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 // |
7 // |
8 // Initial Contributors: |
8 // Initial Contributors: |
9 // Nokia Corporation - initial contribution. |
9 // Nokia Corporation - initial contribution. |
10 // |
10 // |
11 // Contributors: |
11 // Contributors: |
40 @released |
40 @released |
41 */ |
41 */ |
42 class TAcceleratedBitmapInfo |
42 class TAcceleratedBitmapInfo |
43 { |
43 { |
44 public: |
44 public: |
45 |
45 /** The display mode of the bitmap. */ |
46 /** The bitmap's display mode. */ |
|
47 TDisplayMode iDisplayMode; |
46 TDisplayMode iDisplayMode; |
48 |
47 |
49 /** The address of the start of the bitmap. */ |
48 /** The address of the start of the bitmap. */ |
50 TUint8* iAddress; |
49 TUint8* iAddress; |
51 |
50 |
52 /** The width and height of the bitmap in pixels. */ |
51 /** The width and height of the bitmap in pixels. */ |
53 TSize iSize; |
52 TSize iSize; |
54 |
53 |
55 /** The address offset (in bytes) between successive lines in a bitmap. */ |
54 /** The address offset (in bytes) between successive lines in a bitmap. |
|
55 If the bitmap is compressed the line pitch has no meaning so this data |
|
56 member is set to the negation of the compression type. In the case of |
|
57 an extended bitmap it is -EProprietaryCompression. */ |
56 TInt iLinePitch; |
58 TInt iLinePitch; |
57 |
59 |
58 /** The shift required to obtain the number of bits needed to represent one pixel in the bitmap. |
60 /** The shift required to obtain the number of bits needed to represent one pixel |
59 The number of bits per pixel is calculated as 1 << iPixelShift */ |
61 in the bitmap. The number of bits per pixel is calculated as 1 << iPixelShift. |
|
62 In the case of an extended bitmap this data member is set to the bitmap type UID. */ |
60 TInt iPixelShift; |
63 TInt iPixelShift; |
61 |
64 |
62 /** The physical address of the start of the bitmap. This is the address which a |
65 union |
63 hardware graphics accelerator will use and is zero if the bitmap is not accessible |
66 { |
64 to hardware graphics accelerators. */ |
67 /** The physical address of the start of the bitmap. This is the address which a |
65 TUint8* iPhysicalAddress; |
68 hardware graphics accelerator will use and is zero if the bitmap is not accessible |
|
69 to hardware graphics accelerators. Invalid in the case of an extended bitmap. */ |
|
70 TUint8* iPhysicalAddress; |
|
71 /** In the case of an extended bitmap, the size of the raw bitmap data. */ |
|
72 TInt iDataSize; |
|
73 }; |
66 }; |
74 }; |
67 |
75 |
68 /** |
76 /** |
69 The interface to a hardware bitmap. |
77 The interface to a hardware bitmap. |
70 |
78 |
429 /** All areas with a winding number greater than zero are filled. |
437 /** All areas with a winding number greater than zero are filled. |
430 |
438 |
431 @see CGraphicsContext::TFillRule */ |
439 @see CGraphicsContext::TFillRule */ |
432 EPolygonFillWinding = 2, |
440 EPolygonFillWinding = 2, |
433 }; |
441 }; |
434 |
442 |
|
443 |
435 /** Bit flags for the specifying the supported rendering orientations. |
444 /** Bit flags for the specifying the supported rendering orientations. |
436 @see CFbsBitGc::TGraphicsOrientation */ |
445 @see CFbsBitGc::TGraphicsOrientation */ |
437 enum TOrientationCaps |
446 enum TOrientationCaps |
438 { |
447 { |
439 /** Normal orientation is supported. */ |
448 /** Normal orientation is supported. */ |
440 EOrientationCapNormal = 1, |
449 EOrientationCapNormal = 1, |
441 /** A 90 degree rotation is supported. */ |
450 /** A 90 degree rotation is supported. */ |
442 EOrientationCapRotated90 = 2, |
451 EOrientationCapRotated90 = 2, |
443 /** A 180 degree rotation is supported. */ |
452 /** A 180 degree rotation is supported. */ |
444 EOrientationCapRotated180 = 4, |
453 EOrientationCapRotated180 = 4, |
445 /** A 270 degree rotation is supported. */ |
454 /** A 270 degree rotation is supported. */ |
446 EOrientationCapRotated270 = 8, |
455 EOrientationCapRotated270 = 8, |
447 /** All orientations are supported. */ |
456 /** All orientations are supported. */ |
448 EOrientationCapAll = EOrientationCapNormal|EOrientationCapRotated90|EOrientationCapRotated180|EOrientationCapRotated270, |
457 EOrientationCapAll = EOrientationCapNormal|EOrientationCapRotated90|EOrientationCapRotated180|EOrientationCapRotated270 |
449 }; |
458 }; |
450 |
459 |
451 /** The size of this class in bytes. */ |
460 /** The size of this class in bytes. */ |
452 TInt iStructureSize; // The size of this class |
461 TInt iStructureSize; // The size of this class |
453 |
462 |
454 /** The version number of the API. */ |
463 /** The version number of the API. */ |
455 TInt iVersion; // == 1 to specify current API |
464 TInt iVersion; // == 1 to specify current API |
456 |
465 |
519 for each TPolygonCaps supported. |
528 for each TPolygonCaps supported. |
520 |
529 |
521 @see TPolygonCaps */ |
530 @see TPolygonCaps */ |
522 TUint iPolygon; // TPolygonCaps bit flags |
531 TUint iPolygon; // TPolygonCaps bit flags |
523 |
532 |
524 /** |
533 /** |
525 iReserved[0] specifies the supported rendering orientations.Uses a bit flags |
534 iReserved[0] specifies the supported rendering orientations.Uses a bit flags |
526 for each TOrientationCaps supported. |
535 for each TOrientationCaps supported. |
527 @see TOrientationCaps |
536 @see TOrientationCaps |
528 iReserved[1]-iReserved[3] are reserved for future use. All should be set to zero. |
537 iReserved[1]-iReserved[3] are reserved for future use. All should be set to zero. |
529 */ |
538 */ |
530 TUint iReserved[4]; |
539 TUint iReserved[4]; |
531 }; |
540 }; |
532 |
541 |
533 |
542 |
534 // |
543 // |
535 // TGraphicsOperation |
544 // TGraphicsOperation |