homescreenpluginsrv/inc/hspsreqnotifparam.h
branchRCL_3
changeset 114 a5a39a295112
parent 0 79c6a41cd166
equal deleted inserted replaced
113:0efa10d348c0 114:a5a39a295112
       
     1 /*
       
     2 * Copyright (c) 2002-2004 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 "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:  Request Notification parameters
       
    15 *
       
    16 *
       
    17 */
       
    18 
       
    19 
       
    20 #ifndef hspsREQNOTIFPARAM_H
       
    21 #define hspsREQNOTIFPARAM_H
       
    22 
       
    23 #include <e32base.h>
       
    24  
       
    25 const TInt KMaxReqNotifDataLength8 = 5*sizeof(TUint32)+sizeof(TBool)+KMaxFileName;
       
    26 
       
    27 class RDesReadStream;
       
    28 class RDesWriteStream;
       
    29 
       
    30 /**
       
    31  *  ChspsRequestNotificationParams is HSPS class for asuynchronous client's notification handling.
       
    32  *
       
    33  *  @lib hspsResult.lib
       
    34  *  @since S60 5.0
       
    35  *  @ingroup group_hspsresult
       
    36  */
       
    37 class ChspsRequestNotificationParams : public CBase
       
    38     {
       
    39     public:  // Constructors and destructor
       
    40         
       
    41         /**
       
    42         * Two-phased constructor.
       
    43         * 
       
    44         * @since S60 5.0
       
    45         */
       
    46         IMPORT_C static ChspsRequestNotificationParams* NewL();
       
    47         
       
    48         /**
       
    49         * Destructor.
       
    50         */
       
    51         virtual ~ChspsRequestNotificationParams();
       
    52 
       
    53     public: // New functions
       
    54               
       
    55         /**
       
    56         * ExternalizeL() writes ChspsRequestNotificationParams object to a given stream.
       
    57         * 
       
    58         * @since S60 5.0
       
    59         * @param aStream a write stream given.
       
    60         */
       
    61         IMPORT_C void ExternalizeL( RDesWriteStream& aStream) const;
       
    62         
       
    63         /**
       
    64         * InternalizeL() reads ChspsRequestNotificationParams from given stream.
       
    65         * 
       
    66         * @since S60 5.0
       
    67         * @param aStream is astream given.
       
    68         */
       
    69         IMPORT_C void InternalizeL( RDesReadStream& aStream);
       
    70         
       
    71         /**
       
    72         * GetDataLenght() calculates data length of ChspsRequestNotificationParam object.
       
    73         * 
       
    74         * @since S60 5.0
       
    75         * @return Length of the data in ChspsRequestNotificationParam object.
       
    76         */
       
    77         IMPORT_C TInt GetDataLength() const;
       
    78         
       
    79         /**
       
    80         * Resets hspsRequestNotificationParam data members.
       
    81         * 
       
    82         * @since S60 5.0
       
    83         */
       
    84         IMPORT_C void ResetData();
       
    85         
       
    86         /**
       
    87          * Set Name.
       
    88          * 
       
    89          * @since S60 5.0
       
    90          * @param aName Themes' name.
       
    91          */ 
       
    92         IMPORT_C void SetNameL( const TDesC& aName );
       
    93                 
       
    94         /**
       
    95          * Get Name.
       
    96          * 
       
    97          * @since S60 5.0
       
    98          * @return TDesC& The name of the theme.
       
    99          */ 
       
   100          IMPORT_C const TDesC& Name() const;
       
   101                
       
   102     private:
       
   103 
       
   104         /**
       
   105         * C++ default constructor.
       
   106         */
       
   107         ChspsRequestNotificationParams();
       
   108 
       
   109         /**
       
   110         * By default Symbian 2nd phase constructor is private.
       
   111         */
       
   112         void ConstructL();
       
   113 
       
   114     public:     // Data
       
   115         // Event that are notified 
       
   116         TInt iEvent;
       
   117         // AppUid of the application that notification concerns 
       
   118         TInt iAppUid;
       
   119         // AppUid of the application that notification concerns 
       
   120         TInt iAppConfUid;
       
   121         // AppUid of the originator requested the configuration change
       
   122         TUint iOrigUid;
       
   123         // PluginUid of the plugin that notification concerns.
       
   124         TInt iPluginUid;
       
   125         // Count of the plugins that notifications concerns;
       
   126         TInt iCount;
       
   127         // PluginIds of the plugins that notification concerns.
       
   128         RArray<TInt> iPluginIds;
       
   129         // Plugin name of the plugin that notification concerns
       
   130         HBufC* iName;
       
   131            
       
   132     private:     // Data
       
   133 
       
   134         // Reserved pointer for future extension
       
   135         TAny* iReserved;
       
   136     };
       
   137 
       
   138 #endif      // hspsRESULT_H   
       
   139             
       
   140 // End of File