RSgImageCollection Class Reference

class RSgImageCollection

A handle to a reference-counted collection of images with the same attributes which is allocated in such a way that it can be used with the Graphics Composition Engine. Users can access each of the images in the collection individually through RSgImage handles. Interoperability with the Graphics Composition Engine is achieved by passing the surface identifier returned by SurfaceId() in calls to the Graphics Composition Engine API or the Surface Update API.

Since both images and image collections are reference-counted, and an image collection can only be destroyed as a whole, then an image collection is guaranteed to exist while there is an open RSgImageCollection handle referencing it or there are open RSgImage handles referencing any of the individual images in the collection.

A new RSgImageCollection handle does not refer to an image collection until a successful call to Create(). Before that point, the handle is said to be a null handle. Instances of RSgImageCollection can be shared among threads in the same process.

An RSgImageCollection handle is said to be invalid if it is not null but it does not reference an existing image collection. Copying an instance of RSgImageCollection must be done with extreme care, since it does not increment the reference count of the referenced image collection and may therefore allow some RSgImageCollection or RSgImage handle to become invalid when the image collection is destroyed.

RSgImage

Public Member Functions
RSgImageCollection()
IMPORT_C voidClose()
IMPORT_C TIntCount()
IMPORT_C TIntCreate(const TSgImageInfo &, TInt)
IMPORT_C TIntCreate(const TSgImageInfo, TInt, RSgImageCollection, TInt)
IMPORT_C TIntGetInfo(TSgImageInfo &)
IMPORT_C TBoolIsNull()
IMPORT_C TIntOpenImage(TInt, RSgImage &)
IMPORT_C const TSurfaceId &SurfaceId()
Private Attributes
MSgImageCollectionAdapter *iImpl

Constructor & Destructor Documentation

RSgImageCollection()

IMPORT_CRSgImageCollection()

Member Functions Documentation

Close()

IMPORT_C voidClose()

Count()

IMPORT_C TIntCount()const

Create(const TSgImageInfo &, TInt)

IMPORT_C TIntCreate(const TSgImageInfo &aInfo,
TIntaImageCount
)

Parameters

const TSgImageInfo & aInfo
TInt aImageCount

Create(const TSgImageInfo, TInt, RSgImageCollection, TInt)

IMPORT_C TIntCreate(const TSgImageInfoaInfos,
TIntaImageCount,
RSgImageCollectionaCollections,
TIntaCollectionCount
)[static]

Parameters

const TSgImageInfo aInfos
TInt aImageCount
RSgImageCollection aCollections
TInt aCollectionCount

GetInfo(TSgImageInfo &)

IMPORT_C TIntGetInfo(TSgImageInfo &aInfo)const

Parameters

TSgImageInfo & aInfo

IsNull()

IMPORT_C TBoolIsNull()const

OpenImage(TInt, RSgImage &)

IMPORT_C TIntOpenImage(TIntaIndex,
RSgImage &aResult
)

Parameters

TInt aIndex
RSgImage & aResult

SurfaceId()

IMPORT_C const TSurfaceId &SurfaceId()const

Member Data Documentation

MSgImageCollectionAdapter * iImpl

MSgImageCollectionAdapter *iImpl[private]