aknsrleffect.h

Go to the documentation of this file.
00001 /*
00002 * ==============================================================================
00003 *  Name        : AknsRlEffect.h
00004 *  Part of     : Avkon Skins / Rendering Library
00005 *  Interface   : ?Interface_category, ?Interface_name
00006 *  Description : ?Description
00007 *  Version     : ?Version
00008 *
00009 *  Copyright (c) 2004 Nokia Corporation.
00010 *  This material, including documentation and any related 
00011 *  computer programs, is protected by copyright controlled by 
00012 *  Nokia Corporation. All rights are reserved. Copying, 
00013 *  including reproducing, storing, adapting or translating, any 
00014 *  or all of this material requires the prior written consent of 
00015 *  Nokia Corporation. This material also contains confidential 
00016 *  information which may not be disclosed to others without the 
00017 *  prior written consent of Nokia Corporation.
00018 * ==============================================================================
00019 */
00020 
00021 #ifndef AKNSRLEFFECT_H
00022 #define AKNSRLEFFECT_H
00023 
00024 //  INCLUDES
00025 #include <AknsRlEffectContext.h>
00026 #include <AknsRlParameter.h>
00027 
00028 // CONSTANTS
00029 
00036 const TInt KAknsRlRenderIncomplete        = 1;
00037 
00038 // DATA TYPES
00039 
00045 struct TAknsRlEffectCaps
00046     {
00053     TInt iInputLayerASupport;
00054 
00061     TInt iInputLayerBSupport;
00062 
00069     TInt iOutputLayerSupport;
00070     };
00071 
00077 struct TAknsRlRenderOpParam
00078     {
00085     TInt iInputLayerAStatus;
00086 
00094     TInt iInputLayerAIndex;
00095 
00102     TInt iInputLayerBStatus;
00103 
00111     TInt iInputLayerBIndex;
00112 
00120     TInt iOutputLayerStatus;
00121 
00127     TInt iOutputLayerIndex;
00128     };
00129 
00130 // FORWARD DECLARATIONS
00131 
00132 // CLASS DECLARATION
00133 
00173 class MAknsRlEffect
00174     {
00175     public: // Constructors and destructor
00176 
00177         // This interface is not used to control ownership.
00178 
00179     public: // New functions - Lifetime handling
00180 
00193         virtual void InitializeL() =0;
00194 
00203         virtual void Release() =0;
00204 
00223         virtual void ActivateL( MAknsRlEffectContext* aContext ) =0;
00224 
00233         virtual void Deactivate() =0;
00234 
00235     public: // New functions - Rendering setup
00236 
00273         virtual void SetParametersL(
00274             MAknsRlParameterIterator& aParameters ) =0;
00275 
00276     public: // New functions - Capability retrieval
00277 
00304         virtual void GetCapabilities( TAknsRlEffectCaps& aCaps ) =0;
00305 
00306     public: // New functions - Rendering
00307 
00347         virtual TInt Render( const TAknsRlRenderOpParam& aParam ) =0;
00348     };
00349 
00350 // AKNSRLEFFECT_H
00351 #endif
00352             
00353 // End of File

Copyright © Nokia Corporation 2001-2008
Back to top