homescreensrv_plat/ai_content_model_api/inc/aipropertyextension.h
branchRCL_3
changeset 15 a0713522ab97
parent 14 15e4dd19031c
child 16 b276298d5729
--- a/homescreensrv_plat/ai_content_model_api/inc/aipropertyextension.h	Wed Mar 31 22:04:35 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,219 +0,0 @@
-/*
-* Copyright (c) 2005-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: 
-*
-*/
-
-
-#ifndef M_AIPROPERTYEXTENSION_H
-#define M_AIPROPERTYEXTENSION_H
-
-#include <e32std.h>
-
-/**
- * Maximum length for Content publisher name
- */
-const TInt KAiPublisherNameMaxLength = 128;
-
-/**
- * Maximum length for Content publisher namespace
- */
-const TInt KAiPublisherNamespaceMaxLength = 32;
-
-/**
- * Content publisher name buffer
- */
-typedef TBuf<KAiPublisherNameMaxLength> TAiPublisherName;
-
-/**
- * Content publisher namespace buffer
- */
-typedef TBuf8<KAiPublisherNamespaceMaxLength> TAiPublisherNamespace;
-
-/**
- * Contains information about Content publisher plug-in.
- */
-struct TAiPublisherInfo
-    {
-    TAiPublisherInfo() 
-        : iUid( TUid::Null() ), 
-          iName( KNullDesC ), 
-          iNamespace( KNullDesC8 )
-        {
-        }
-    
-    inline TAiPublisherInfo& operator= (const TAiPublisherInfo& aInfo)
-        {
-        iUid = TUid::Uid( aInfo.iUid.iUid );
-        iName.Copy( aInfo.iName );
-        iNamespace.Copy( aInfo.iNamespace );   
-        return *this;  
-        }
-        
-    inline TBool operator== (const TAiPublisherInfo& aInfo) const
-        {
-        if( iUid == aInfo.iUid && 
-            iName == aInfo.iName &&
-            iNamespace == aInfo.iNamespace )
-            {
-            return ETrue;
-            }
-            
-        return EFalse;                                       
-        }
-    
-    TUid                  iUid;
-    TAiPublisherName      iName;
-    TAiPublisherNamespace iNamespace;
-    };
-
-/**
- * Defines set of properties supported by plug-in.
- *
- * Example how to provide and set the properties.
- * @code
- * void CMyAiPlugin::ConstructL()
- *     {
- *     iInfo = new (ELeave) TAiPublisherInfo;
- *     iContent = AiUtility::CreateContentItemArrayIteratorL( KMyAiPluginContent );
- *     iResources = AiUtility::CreateContentItemArrayIteratorL( KMyAiPluginResources );
- *     iEvents = AiUtility::CreateContentItemArrayIteratorL( KMyAiPluginEvents );
- *     }
- *
- * void CMyAiPlugin::SetPropertyL( TInt aProperty, TAny* aValue )
- *     {
- *     if( !aValue ) return;
- * 
- *     switch( aProperty )
- *         {
- *         case EAiPublisherInfo:
- *             {
- *             const TAiPublisherInfo* info =
- *                 static_cast<const TAiPublisherInfo*>(aValue);
- *             iInfo->iUid.iUid = info->iUid.iUid;
- *             iInfo->iName.Copy( info->iName );
- *             break;
- *             }
- *         }
- *      }
- *
- * TAny* CMyAiPlugin::GetPropertyL( TInt aProperty )
- *     {
- *     switch( aProperty )
- *         {
- *         case EAiPublisherInfo:
- *             return iInfo;
- * 
- *         case EAiPublisherContent:
- *             return iContent;
- * 
- *         case EAiPublisherResources:
- *             return iResources;
- * 
- *         case EAiPublisherEvents:
- *             return iEvents;
- *         }
- *     return NULL;
- *     }
- * @endcode
- */
-enum TAiPublisherProperty
-    {
-    /**
-     * Enables read-only access to Plug-in information. GetProperty MUST return
-     * instance of struct TAiPublisherInfo via TAny* .
-     */
-    EAiPublisherInfo = 0x0001,
-
-    /**
-     * Enables read-only access to iterator of content selectors. GetProperty
-     * MUST return instance of MAiContentItemIterator for content selectors.
-     */
-    EAiPublisherContent,
-
-    /**
-     * Enables read-only access to iterator of content references. GetProperty
-     * MUST return instance of MAiContentItemIterator for content references.
-     */
-    EAiPublisherResources,
-
-    /**
-     * Enables read-only access to iterator of events supported by plug-in.
-     * GetProperty MUST return instance of MAiContentItemIterator for events.
-     */
-    EAiPublisherEvents,
-
-    /**
-     * Provides access to MAiContentRequest interface for refreshing a content
-     * item.
-     * @see EAiPublisherContent
-     */
-    EAiContentRequest,
-
-    /**
-     * Provides access to MAiContentRequest interface for refreshing a resource
-     * item.
-     * @see EAiPublisherResources
-     */
-    EAiResourceRequest,
-
-    /**
-     * Provides access to localized plugin name if supported. HBufC*
-     * @see EAiPublisherResources
-     */
-    EAiPluginName
-    };
-
-
-/**
- * Property extension interface for CAiContentPublisher.
- *
- * @see CAiContentPublisher::Extension
- * @since S60 3.2
- */
-class MAiPropertyExtension
-    {
-public:  // New functions
-
-    /**
-     * Read property of publisher plug-in.
-     *
-     * @param aProperty - identification of property.
-     * @return Pointer to property value.
-     */
-    virtual TAny* GetPropertyL(TInt aProperty) = 0;
-
-    /**
-     * Helper function for accessing the Publisher Info Property.
-     */
-    inline const TAiPublisherInfo* PublisherInfoL();
-
-    /**
-     * Write property value.
-     *
-     * @param aProperty - identification of property.
-     * @param aValue - contains pointer to property value.
-     */
-    virtual void SetPropertyL(TInt aProperty, TAny* aValue) = 0;
-
-protected:
-    /**
-     * Protected destructor prevents deletion through this interface.
-     */
-    ~MAiPropertyExtension() { }
-    };
-
-#include <aipropertyextension.inl>
-
-#endif  // M_AIPROPERTYEXTENSION_H