diff -r 000000000000 -r 15bf7259bb7c uiaccelerator_plat/alf_extended_visual_api/inc/alf/alfsrveffectenv.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiaccelerator_plat/alf_extended_visual_api/inc/alf/alfsrveffectenv.h Tue Feb 02 07:56:43 2010 +0200 @@ -0,0 +1,126 @@ +/* +* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Environment class for transition effect plugins. +* +*/ + + + +#ifndef C_ALFSRVEFFECTENV_H +#define C_ALFSRVEFFECTENV_H + +#include + +class CHuiEnv; +class CHuiControlGroup; +class CHuiDisplay; +class CAlfAppSrvSession; + +/** + * This class implements an environment that can be utilized inside transition + * effect plugins to get access to the UI accelerator toolkit visuals, layouts + * and other resources that are needed in transition effects. + * + */ +NONSHARABLE_CLASS(CAlfSrvEffectEnv) : public CBase + { +public: + + /** + * Constructor + */ + static CAlfSrvEffectEnv* NewL(CAlfAppSrvSession& aSession); + + /** + * Constructor + */ + static CAlfSrvEffectEnv* NewLC(CAlfAppSrvSession& aSession); + + /** + * Destructor + */ + ~CAlfSrvEffectEnv(); + + /** + * Returns number of available control groups for + * currently active application. + * + * @return Amount of available control groups. + */ + IMPORT_C TInt ControlGroupCountL(); + + /** + * Returns number of visible and available control groups + * for currently active application. + * + * @return Amount of visible and available control groups. + */ + IMPORT_C TInt VisibleControlGroupCountL(); + + /** + * Returns an available control group based on its index. + * + * @param aIndex Control group index. + * @return Control group + */ + IMPORT_C CHuiControlGroup* ControlGroupL( TInt aIndex ); + + /** + * Returns a visible control group based on its index. + * + * @param aIndex Control group index. + * @return Control group + */ + IMPORT_C CHuiControlGroup* VisibleControlGroupL( TInt aIndex ); + + /** + * Returns number of available displays for + * currently active applicaion. + * + * @return Amount of available displays. + */ + IMPORT_C TInt DisplayCountL(); + + /** + * Returns an available display based on its index. + * + * @param aIndex Display index. + * @return Display + */ + IMPORT_C CHuiDisplay* DisplayL( TInt aIndex ); + + /** + * Returns env which is shared between all client apps. + * + * @return HUI Env + */ + IMPORT_C CHuiEnv* SharedEnv(); + +private: + + // Constructor + CAlfSrvEffectEnv(CAlfAppSrvSession& aSession); + + // ConstructL + void ConstructL(); + +private: + + CAlfAppSrvSession* iSession; // Not owned + +}; + + +#endif +