MSgImageAdapter Class Reference
class MSgImageAdapter : public MSgDrawableAdapter |
This interface must be implemented by all the user-side objects in the adaptation layer of the Graphics subsystem which are referenced by instances of RSgImage. The interface between the user-side and the kernel-side parts of the adaptation layer is outside the scope of the specification of the Graphics Resource API.
RSgImage
Member Functions Documentation
GetInfo(TSgImageInfo &)
TInt
| GetInfo | ( | TSgImageInfo & | aInfo | ) | const [pure virtual] |
Retrieves the values of the attributes of the image represented by this adapter object.
- Pre-condition
- If aInfo.iUserAttributes is not null then it points to an array of aInfo.iUserAttributeCount elements with globally unique identifiers corresponding to user-defined attributes attached to the image.
RSgImage::GetInfo()
Parameters
TSgImageInfo & aInfo | On input, the globally unique identifiers of the user-defined attributes to be retrieved from the image, if any. On return, the values of the attributes of the image and the values of the selected user-defined attributes. |
MapReadOnly(const TAny *&, TInt &)
TInt
| MapReadOnly | ( | const TAny *& | aDataAddress, |
| TInt & | aDataStride |
| ) | [pure virtual] |
Temporarily makes the pixel data of the image represented by this adapter object accessible for reading by the CPU.
- Pre-condition
- The image is not mapped yet.
- The image was created with CPU access ESgCpuAccessReadOnly or ESgCpuAccessReadWrite.
- The image was created by the calling process.
- Post-condition
- The pixel data of the image is directly accessible in the address space of the calling process for reading only, until Unmap() is called.
RSgImage::MapReadOnly()
Parameters
const TAny *& aDataAddress | On return, the base address of the pixel data in the address space of the calling process. |
TInt & aDataStride | On return, the number of bytes between rows of the pixel data. |
MapReadWrite(TAny *&, TInt &)
TInt
| MapReadWrite | ( | TAny *& | aDataAddress, |
| TInt & | aDataStride |
| ) | [pure virtual] |
Temporarily makes the pixel data of the image represented by this adapter object accessible for reading and writing by the CPU.
- Pre-condition
- The image is not mapped yet.
- The image was created with CPU access ESgCpuAccessReadWrite.
- The image was created by the calling process.
- Post-condition
- The pixel data of the image is directly accessible in the address space of the calling process for reading and writing, until Unmap() is called.
RSgImage::MapReadWrite()
Parameters
TAny *& aDataAddress | On return, the base address of the pixel data in the address space of the calling process. |
TInt & aDataStride | On return, the number of bytes between rows of the pixel data. |
MapWriteOnly(TAny *&, TInt &)
TInt
| MapWriteOnly | ( | TAny *& | aDataAddress, |
| TInt & | aDataStride |
| ) | [pure virtual] |
Temporarily makes the pixel data of the image represented by this adapter object accessible for writing by the CPU.
- Pre-condition
- The image is not mapped yet.
- The image was created with CPU access ESgCpuAccessWriteOnly or ESgCpuAccessReadWrite.
- The image was created by the calling process.
- Post-condition
- The pixel data of the image is directly accessible in the address space of the calling process for writing only, until Unmap() is called.
RSgImage::MapWriteOnly()
Parameters
TAny *& aDataAddress | On return, the base address of the pixel data in the address space of the calling process. |
TInt & aDataStride | On return, the number of bytes between rows of the pixel data. |
Unmap()
TInt
| Unmap | ( | ) | [pure virtual] |
Makes the pixel data of the image represented by this adapter object no longer accessible by the CPU.
- Pre-condition
- The image is mapped for CPU access by a previous call to MapReadOnly(), MapWriteOnly() or MapReadWrite().
- Post-condition
- The GPU is guaranteed to be able to get access to the image.
- The address range in the calling process used for the mapping is no longer valid.
RSgImage::Unmap()
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.