videofeeds/server/IptvEpgManager/inc/MIptvEpgVodCallback.h
changeset 0 96612d01cf9f
equal deleted inserted replaced
-1:000000000000 0:96612d01cf9f
       
     1 /*
       
     2 * Copyright (c) 2004-2005 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of the License "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 
       
    21 #ifndef MIPTVEPGVODCALLBACK_H
       
    22 #define MIPTVEPGVODCALLBACK_H
       
    23 
       
    24 #include <e32std.h>
       
    25 
       
    26 // FORWARD DECLARATIONS
       
    27 class CIptvEpgCategory;
       
    28 class CIptvEpgContent;
       
    29 class CIptvMediaContent;
       
    30 
       
    31 // CLASS DECLARATION
       
    32 
       
    33 enum TCategorySearchField
       
    34     {
       
    35     ECategoryName = 0,
       
    36     ECategoryId,
       
    37     ECategoryIconFileId
       
    38     };
       
    39 
       
    40 enum TContentSearchField
       
    41     {
       
    42     EContentName = 0,
       
    43     EContentId, 
       
    44     EContentUrl,
       
    45     EContentIconFileId,
       
    46     EContentFileId
       
    47     };
       
    48 
       
    49 enum TContentDecision
       
    50     {
       
    51     EContentAdd = 0,
       
    52     EContentUpdate,
       
    53     EContentLeave
       
    54     };
       
    55 
       
    56 class MIptvEpgVodCallback
       
    57     {
       
    58     public:
       
    59         /**
       
    60          * Plugin started.
       
    61          *
       
    62          * @param none
       
    63          */
       
    64         virtual void StartedL() = 0;              
       
    65         
       
    66         /**
       
    67          * ECG content update from XML completed. Thumbnails are not downloaded yet.
       
    68          *
       
    69          * @param 
       
    70          */
       
    71         virtual void ContentUpdateCompletedL() = 0;
       
    72 
       
    73         /**
       
    74          * Plugin finished.
       
    75          *
       
    76          * @param aUpdateInterval       Update interval defines how long EPG data is valid.         
       
    77          */
       
    78         virtual TInt FinishedL(TTime& aUpdateInterval) = 0;
       
    79 
       
    80         /**
       
    81          * Add new category to database.         
       
    82          *
       
    83          * @param aCategory             Reference to CIptvEpgCategory object.
       
    84          * @param aCategoryKey          New category key value is inserted to aCategoryKey
       
    85          * @return                      KErrNone if successful, otherwise another of the system-wide error codes.
       
    86          */
       
    87         virtual TInt AddCategoryL(CIptvEpgCategory& aCategory, TUint32& aCategoryKey) = 0;
       
    88 
       
    89         /**
       
    90          * Add new content to given category.
       
    91          *
       
    92          * @param aContent          Reference to CIptvEpgContent object.         
       
    93          * @param aMediaContents    Pointer array containing media content objects. There can be n media content's for one 
       
    94          *                          content. 
       
    95          * @param aContentKey       New content key value is inserted to aContentKey       
       
    96          * @return                  KErrNone if successful, otherwise another of the system-wide error codes.
       
    97          */
       
    98         virtual TInt AddContentL(CIptvEpgContent& aContent, RPointerArray<CIptvMediaContent> aMediaContents, TUint32& aContentKey) = 0;
       
    99 
       
   100         /**
       
   101          * Update service thumbnail.
       
   102          *         
       
   103          * @param aIconFilePath     Full path to service thumbnail in local filesystem.
       
   104          * @param aGrouped          if true updates also grouped item, otherwise not.
       
   105          * @return                  KErrNone if successful, otherwise another of the system-wide error codes.
       
   106          */
       
   107         virtual TInt UpdateServiceThumbnailL( TDesC& aIconFilePath, const TBool aGrouped ) = 0;
       
   108 
       
   109         /**               
       
   110          * Add content to category.
       
   111          *
       
   112          * @param aCategoryKey      Category key.        
       
   113          * @param aContentKey       Content key. 
       
   114          */    
       
   115         virtual TInt AddRelationL(TUint32& aCategoryKey, TUint32& aContentKey) = 0;
       
   116 
       
   117         /**               
       
   118          * Error
       
   119          *
       
   120          * @param aError            Error code.         
       
   121          */    
       
   122         virtual void ErrorL(TInt aError, TInt aInfo) = 0;      
       
   123 
       
   124         /**
       
   125          * Update category icon.
       
   126          *
       
   127          * @param aCategoryKey      Category key.
       
   128          * @param aIconFileId       Icon file id to search from the database.         
       
   129          * @param aIconFilePath     Full path to icon file or URL + filename.
       
   130          * @param aIsUrl            If aIconFilePath is URL aIsUrl == ETrue, if aIconFilePath is path
       
   131          *                          to local filesystem aIsUrl == EFalse.
       
   132          * @return                  KErrNone if successful, otherwise another of the system-wide error codes.
       
   133          */
       
   134         virtual TInt UpdateCategoryIconL(TUint32& aCategoryKey, TUint32& aIconFileId, TDesC& aIconFilePath, TBool aIsUrl) = 0;
       
   135 
       
   136         /**
       
   137          * Update content icon.
       
   138          *
       
   139          * @param aCategoryKey      Content key.
       
   140          * @param aIconFileId       Icon file id to search from the database.         
       
   141          * @param aIconFilePath     Full path to icon file or URL + filename.
       
   142          * @param aIsUrl            If aIconFilePath is URL aIsUrl == ETrue, if aIconFilePath is path
       
   143          *                          to local filesystem aIsUrl == EFalse.
       
   144          * @return                  KErrNone if successful, otherwise another of the system-wide error codes.
       
   145          */
       
   146         virtual TInt UpdateContentIconL(TUint32& aContentKey, TUint32& aIconFileId, TDesC& aIconFilePath, TBool aIsUrl) = 0;
       
   147     };
       
   148 
       
   149 #endif  // MIPTVEPGVODCALLBACK_H