CHuiFxEngine Class Reference

class CHuiFxEngine : public CBase

Inherits from

Public Member Functions
~CHuiFxEngine()
IMPORT_C CHuiFxRenderbuffer *AcquireRenderbuffer(const TSize &)
CHuiFxRenderbuffer *AcquireRenderbuffer(const TSize &, TBool)
IMPORT_C TIntActiveGroupEffect()
IMPORT_C TBoolAddEffectToGroup(TInt)
IMPORT_C voidAdvanceTime(TReal32)
IMPORT_C voidBeginGroupEffect(TInt)
voidClearCache()
voidComposite(CHuiFxRenderbuffer &, CHuiFxRenderbuffer &, const TRect &, const TRect &, THuiFxBlendingMode, TInt)
IMPORT_C voidComposite(CHuiGc &, CHuiFxRenderbuffer &, const TPoint &, TBool, TInt)
CHuiFxFilter *CreateFilterL(THuiFxFilterType)
CHuiFxRenderbuffer *DefaultRenderbuffer()
IMPORT_C voidEnableLowMemoryState(TBool)
IMPORT_C THuiFxEngineTypeEngineType()
IMPORT_C TBoolFxmlUsesInput1(const TDesC &)
IMPORT_C TBoolFxmlUsesOpaqueHint(const TDesC &)
IMPORT_C TReal32GetReferenceValue(THuiFxReferencePoint)
TBool HasActiveEffects()
TBool HasActiveFadeEffect()
IMPORT_C voidLoadEffectL(const TDesC &, CHuiFxEffect *&, MHuiEffectable *, TRect *, MAlfGfxEffectObserver *, TInt, TInt)
IMPORT_C voidLoadGroupEffectL(const TDesC &, CHuiFxEffect *&, MHuiEffectable *, TInt, TRect *, MAlfGfxEffectObserver *, TInt, TInt)
TInt LowMemoryState()
voidNotifyEffectEndObservers()
voidNotifyEffectReady(TInt)
IMPORT_C voidRegisterEffectL(const TDesC &)
IMPORT_C voidRelease()
IMPORT_C voidReleaseRenderbuffer(CHuiFxRenderbuffer *)
IMPORT_C voidRestoreL()
IMPORT_C voidSetMemoryLevel(THuiMemoryLevel)
voidSetObserver(MHuiEffectObserver *)
IMPORT_C voidStartGroupEffect(TInt)
IMPORT_C voidUnRegisterEffectL(const TDesC &)
Protected Member Functions
IMPORT_C voidAddEffectL(CHuiFxEffect *)
IMPORT_C voidConstructL(THuiFxEngineType)
IMPORT_C voidRemoveEffect(CHuiFxEffect *)
Private Member Functions
CHuiFxRenderbuffer *AcquireNativeRenderbuffer(const TSize &)
TInt FindEffectGroup(TInt)
TBool FxmlUsesInput1(CHuiFxEffect &)
voidInsertFreeRenderbuffer(CHuiFxRenderbuffer *)
TBool IsCacheEmpty()
TBool IsCacheFull()
CHuiFxRenderbuffer *LookupFreeRenderbuffer(const TSize &, TBool)
NONSHARABLE_STRUCT(TEffectGroupStruct)
voidReleaseNativeRenderbuffer(CHuiFxRenderbuffer *)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Protected Attributes
TInt iBuffersInUse
TRequestStatus iParserStatus
Private Attributes
const TIntCACHE_SIZE
RArray< TEffectGroupStruct >iActiveEffectGroups
RPointerArray< CHuiFxEffect >iActiveEffects
CHuiFxRenderbuffer *iBufferCache
TInt iBuffersInCache
CHuiFxEffectCache *iCache
MHuiEffectObserver *iEffectObserver
TRect iExtRect
TInt iLowGraphicsMemoryMode
THuiFxEngineType iType

Constructor & Destructor Documentation

~CHuiFxEngine()

IMPORT_C~CHuiFxEngine()[virtual]

Member Functions Documentation

AcquireNativeRenderbuffer(const TSize &)

CHuiFxRenderbuffer *AcquireNativeRenderbuffer(const TSize &aDesiredSize)[private, pure virtual]

Parameters

const TSize & aDesiredSize

AcquireRenderbuffer(const TSize &)

IMPORT_C CHuiFxRenderbuffer *AcquireRenderbuffer(const TSize &aDesiredSize)[virtual]

Parameters

const TSize & aDesiredSize

AcquireRenderbuffer(const TSize &, TBool)

CHuiFxRenderbuffer *AcquireRenderbuffer(const TSize &aDesiredSize,
TBoolaAlllowLarger
)

Parameters

const TSize & aDesiredSize
TBool aAlllowLarger

ActiveGroupEffect()

IMPORT_C TIntActiveGroupEffect()

AddEffectL(CHuiFxEffect *)

IMPORT_C voidAddEffectL(CHuiFxEffect *aEffect)[protected]

Parameters

CHuiFxEffect * aEffect

AddEffectToGroup(TInt)

IMPORT_C TBoolAddEffectToGroup(TIntaGroup)

Parameters

TInt aGroup

AdvanceTime(TReal32)

IMPORT_C voidAdvanceTime(TReal32aElapsedTime)

Parameters

TReal32 aElapsedTime

BeginGroupEffect(TInt)

IMPORT_C voidBeginGroupEffect(TIntaGroup)

Parameters

TInt aGroup

ClearCache()

voidClearCache()

Composite(CHuiFxRenderbuffer &, CHuiFxRenderbuffer &, const TRect &, const TRect &, THuiFxBlendingMode, TInt)

voidComposite(CHuiFxRenderbuffer &aTarget,
CHuiFxRenderbuffer &aSource,
const TRect &aTargetRect,
const TRect &aSourceRect,
THuiFxBlendingModeaMode,
TIntaAlpha
)[pure virtual]

Parameters

CHuiFxRenderbuffer & aTarget
CHuiFxRenderbuffer & aSource
const TRect & aTargetRect
const TRect & aSourceRect
THuiFxBlendingMode aMode
TInt aAlpha

Composite(CHuiGc &, CHuiFxRenderbuffer &, const TPoint &, TBool, TInt)

IMPORT_C voidComposite(CHuiGc &aGc,
CHuiFxRenderbuffer &aSource,
const TPoint &aTargetPoint,
TBoolaOpaque,
TIntaAlpha
)[virtual]

Parameters

CHuiGc & aGc
CHuiFxRenderbuffer & aSource
const TPoint & aTargetPoint
TBool aOpaque
TInt aAlpha

ConstructL(THuiFxEngineType)

IMPORT_C voidConstructL(THuiFxEngineTypeaEngineType)[protected]

Parameters

THuiFxEngineType aEngineType

CreateFilterL(THuiFxFilterType)

CHuiFxFilter *CreateFilterL(THuiFxFilterTypeaType)[pure virtual]

Parameters

THuiFxFilterType aType

DefaultRenderbuffer()

CHuiFxRenderbuffer *DefaultRenderbuffer()[pure virtual]

EnableLowMemoryState(TBool)

IMPORT_C voidEnableLowMemoryState(TBoolaEnable)

Parameters

TBool aEnable

EngineType()

IMPORT_C THuiFxEngineTypeEngineType()

FindEffectGroup(TInt)

TInt FindEffectGroup(TIntaGroup)[private]

Parameters

TInt aGroup

FxmlUsesInput1(const TDesC &)

IMPORT_C TBoolFxmlUsesInput1(const TDesC &aFileName)

Parameters

const TDesC & aFileName

FxmlUsesInput1(CHuiFxEffect &)

TBool FxmlUsesInput1(CHuiFxEffect &aEffect)[private]

Parameters

CHuiFxEffect & aEffect

FxmlUsesOpaqueHint(const TDesC &)

IMPORT_C TBoolFxmlUsesOpaqueHint(const TDesC &aFileName)

Parameters

const TDesC & aFileName

GetReferenceValue(THuiFxReferencePoint)

IMPORT_C TReal32GetReferenceValue(THuiFxReferencePointaPoint)

Parameters

THuiFxReferencePoint aPoint

HasActiveEffects()

TBool HasActiveEffects()const

HasActiveFadeEffect()

TBool HasActiveFadeEffect()const

InsertFreeRenderbuffer(CHuiFxRenderbuffer *)

voidInsertFreeRenderbuffer(CHuiFxRenderbuffer *aBuffer)[private]

Parameters

CHuiFxRenderbuffer * aBuffer

IsCacheEmpty()

TBool IsCacheEmpty()const [private, inline]

IsCacheFull()

TBool IsCacheFull()const [private, inline]

LoadEffectL(const TDesC &, CHuiFxEffect *&, MHuiEffectable *, TRect *, MAlfGfxEffectObserver *, TInt, TInt)

IMPORT_C voidLoadEffectL(const TDesC &aFileName,
CHuiFxEffect *&aEffect,
MHuiEffectable *aVisual = 0,
TRect *extRect = 0,
MAlfGfxEffectObserver *aEffectEndObserver = 0,
TIntaHandle = 0,
TIntaFlags = 0
)

Parameters

const TDesC & aFileName
CHuiFxEffect *& aEffect
MHuiEffectable * aVisual = 0
TRect * extRect = 0
MAlfGfxEffectObserver * aEffectEndObserver = 0
TInt aHandle = 0
TInt aFlags = 0

LoadGroupEffectL(const TDesC &, CHuiFxEffect *&, MHuiEffectable *, TInt, TRect *, MAlfGfxEffectObserver *, TInt, TInt)

IMPORT_C voidLoadGroupEffectL(const TDesC &aFileName,
CHuiFxEffect *&aEffect,
MHuiEffectable *aVisual = 0,
TIntaGroupHandle = 0,
TRect *extRect = 0,
MAlfGfxEffectObserver *aEffectEndObserver = 0,
TIntaHandle = 0,
TIntaFlags = 0
)

Parameters

const TDesC & aFileName
CHuiFxEffect *& aEffect
MHuiEffectable * aVisual = 0
TInt aGroupHandle = 0
TRect * extRect = 0
MAlfGfxEffectObserver * aEffectEndObserver = 0
TInt aHandle = 0
TInt aFlags = 0

LookupFreeRenderbuffer(const TSize &, TBool)

CHuiFxRenderbuffer *LookupFreeRenderbuffer(const TSize &aDesiredSize,
TBoolaAlllowLarger
)[private]

Parameters

const TSize & aDesiredSize
TBool aAlllowLarger

LowMemoryState()

TInt LowMemoryState()

NONSHARABLE_STRUCT(TEffectGroupStruct)

NONSHARABLE_STRUCT(TEffectGroupStruct)[private, inline]

Parameters

TEffectGroupStruct

NotifyEffectEndObservers()

voidNotifyEffectEndObservers()

NotifyEffectReady(TInt)

voidNotifyEffectReady(TIntaGroupId)

Group effects wait until each effect has been drawn once.

Group effects are set into motion by NotifyEffectReady, when all effects in the group have been drawn at least once.

Parameters

TInt aGroupId

RegisterEffectL(const TDesC &)

IMPORT_C voidRegisterEffectL(const TDesC &aFileName)

Parameters

const TDesC & aFileName

Release()

IMPORT_C voidRelease()[virtual]

ReleaseNativeRenderbuffer(CHuiFxRenderbuffer *)

voidReleaseNativeRenderbuffer(CHuiFxRenderbuffer *aBuffer)[private, pure virtual]

Parameters

CHuiFxRenderbuffer * aBuffer

ReleaseRenderbuffer(CHuiFxRenderbuffer *)

IMPORT_C voidReleaseRenderbuffer(CHuiFxRenderbuffer *aBuffer)[virtual]

Parameters

CHuiFxRenderbuffer * aBuffer

RemoveEffect(CHuiFxEffect *)

IMPORT_C voidRemoveEffect(CHuiFxEffect *aEffect)[protected]

Parameters

CHuiFxEffect * aEffect

RestoreL()

IMPORT_C voidRestoreL()[virtual]

SetMemoryLevel(THuiMemoryLevel)

IMPORT_C voidSetMemoryLevel(THuiMemoryLevelaLevel)

Parameters

THuiMemoryLevel aLevel

SetObserver(MHuiEffectObserver *)

voidSetObserver(MHuiEffectObserver *aObserver)[inline]

Parameters

MHuiEffectObserver * aObserver

StartGroupEffect(TInt)

IMPORT_C voidStartGroupEffect(TIntaGroup)

Parameters

TInt aGroup

UnRegisterEffectL(const TDesC &)

IMPORT_C voidUnRegisterEffectL(const TDesC &aFileName)

Parameters

const TDesC & aFileName

Member Data Documentation

const TInt CACHE_SIZE

const TIntCACHE_SIZE[private, static]

RArray< TEffectGroupStruct > iActiveEffectGroups

RArray< TEffectGroupStruct >iActiveEffectGroups[private]

Only one simultanious effect group is supported

RPointerArray< CHuiFxEffect > iActiveEffects

RPointerArray< CHuiFxEffect >iActiveEffects[private]

CHuiFxRenderbuffer * iBufferCache

CHuiFxRenderbuffer *iBufferCache[private]

TInt iBuffersInCache

TInt iBuffersInCache[private]

TInt iBuffersInUse

TInt iBuffersInUse[protected]

CHuiFxEffectCache * iCache

CHuiFxEffectCache *iCache[private]

MHuiEffectObserver * iEffectObserver

MHuiEffectObserver *iEffectObserver[private]

TRect iExtRect

TRect iExtRect[private]

TInt iLowGraphicsMemoryMode

TInt iLowGraphicsMemoryMode[private]

TRequestStatus iParserStatus

TRequestStatus iParserStatus[protected]

THuiFxEngineType iType

THuiFxEngineType iType[private]