windowing/windowserver/nga/SERVER/renderstagemanager.h
changeset 0 5d03bc08d59c
equal deleted inserted replaced
-1:000000000000 0:5d03bc08d59c
       
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #ifndef __RENDERSTAGEMANAGER_H__
       
    17 #define __RENDERSTAGEMANAGER_H__
       
    18 
       
    19 #include <graphics/wsrenderstage.h>
       
    20 
       
    21 /**
       
    22 @file
       
    23 @internalTechnology
       
    24 @prototype
       
    25 */
       
    26 
       
    27 class CRenderStageManager : public CBase
       
    28 	{
       
    29 public:
       
    30 	/**
       
    31 	Connect to the Render Stage Plugins.
       
    32 	
       
    33 	Sets up a render stage chain hierarchy for a given screen and returns a
       
    34 	pointer to the first render stage.  The caller is responsible for calling
       
    35 	Release on the returned render stage when it is no longer needed, such as
       
    36 	during shutdown.
       
    37 	
       
    38 	@param	aScreenNumber	Render stage chains created on a per-screen basis
       
    39 	@param	aScreen			Screen object for the given screen number
       
    40 	@param	aScreenRedraw	Mechanism to allow render stages to call back into
       
    41 							the redraw store MWsScreenRedraw to for example cause
       
    42 							a re-scheduling of render stages to execute.
       
    43 	*/
       
    44 	static CWsRenderStage *ConnectL(TInt aScreenNumber, MWsScreen *aScreen, MWsScreenRedraw *aScreenRedraw);
       
    45 	
       
    46 	/**
       
    47 	Release Render Stage Resources.
       
    48 	
       
    49 	De-allocates the resources for the given render stage chain.
       
    50 	
       
    51 	@param	aRenderStage	Top-level render stage previously rendered by a
       
    52 							call to @c ConnectL
       
    53 	*/
       
    54 	static void Release(CWsRenderStage *aRenderStage);
       
    55 	};
       
    56 #endif // __RENDERSTAGEMANAGER_H__