cmmanager/cmmgr/Plugins/cmpluginpacketdata/inc/cmpluginpacketdata.h
branchRCL_3
changeset 58 83ca720e2b9a
parent 0 5a93021fdf25
equal deleted inserted replaced
57:05bc53fe583b 58:83ca720e2b9a
       
     1 /*
       
     2 * Copyright (c) 2006 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:  Declaration of CCmPluginPacketData.
       
    15 *
       
    16 */
       
    17 
       
    18 #ifndef PACKETDATA_PLUGIN_H
       
    19 #define PACKETDATA_PLUGIN_H
       
    20 
       
    21 #include <cmpluginbaseeng.h>
       
    22 #include <cmpluginpacketdatadef.h>
       
    23 
       
    24 /**
       
    25 *  CCmPluginPacketData dialog class
       
    26 *  @since S60 v3.2
       
    27 */
       
    28 NONSHARABLE_CLASS( CCmPluginPacketData ) : public CCmPluginBaseEng
       
    29     {
       
    30 
       
    31     public: // Constructors and destructor
       
    32 
       
    33         static CCmPluginPacketData* NewL( TCmPluginInitParam* aInitParam );
       
    34 
       
    35         virtual ~CCmPluginPacketData();
       
    36 
       
    37         virtual CCmPluginBaseEng* CreateInstanceL( TCmPluginInitParam& aInitParam ) const;
       
    38         
       
    39     public: // From CCmPluginBaseEng
       
    40         
       
    41         /**
       
    42         * From CCmPluginBaseEng
       
    43         * see base class
       
    44         *
       
    45         * @since S60 3.2
       
    46         * @param aAttribute
       
    47         */
       
    48         virtual TUint32 GetIntAttributeL( const TUint32 aAttribute ) const;
       
    49 
       
    50         /**
       
    51         * From CCmPluginBaseEng
       
    52         * see base class
       
    53         *
       
    54         * @since S60 3.2
       
    55         * @param aAttribute
       
    56         */
       
    57 		virtual TBool GetBoolAttributeL( const TUint32 aAttribute ) const;
       
    58 
       
    59 		/**
       
    60         * From CCmPluginBaseEng
       
    61         * see base class
       
    62         *
       
    63         * @since S60 3.2
       
    64         * @param aAttribute
       
    65         */
       
    66 		virtual HBufC* GetStringAttributeL( const TUint32 aAttribute ) const;
       
    67 
       
    68 		/**
       
    69         * From CCmPluginBaseEng
       
    70         * see base class
       
    71         *
       
    72         * @since S60 3.2
       
    73         * @param aAttribute
       
    74         * @param aValue
       
    75         */
       
    76 		virtual void SetIntAttributeL( const TUint32 aAttribute, 
       
    77 		                                                    TUint32 aValue );
       
    78 
       
    79 		
       
    80 		/**
       
    81         * From CCmPluginBaseEng
       
    82         * see base class
       
    83         *
       
    84         * @since S60 3.2
       
    85         * @param aAttribute
       
    86         * @param aValue
       
    87         */
       
    88 		virtual void SetBoolAttributeL( const TUint32 aAttribute, 
       
    89 		                                                    TBool aValue );
       
    90 
       
    91 		/**
       
    92         * From CCmPluginBaseEng
       
    93         * see base class
       
    94         *
       
    95         * @since S60 3.2
       
    96         * @param aAttribute
       
    97         * @param aValue
       
    98         */
       
    99 		virtual void SetStringAttributeL( const TUint32 aAttribute, 
       
   100 		                                            const TDesC16& aValue );
       
   101         
       
   102         /**
       
   103         * From CCmPluginBaseEng
       
   104         * see base class
       
   105         *
       
   106         * @since S60 3.2
       
   107         * @param aIapId
       
   108         */
       
   109         virtual void PrepareToUpdateRecordsL();
       
   110         
       
   111         /**
       
   112         * From CCmPluginBaseEng
       
   113         * see base class
       
   114         *
       
   115         * @since S60 3.2
       
   116         * @param aIapId
       
   117         */
       
   118 		virtual TBool CanHandleIapIdL( TUint32 aIapId ) const;
       
   119         
       
   120         /**
       
   121         * From CCmPluginBaseEng
       
   122         * see base class
       
   123         *
       
   124         * @since S60 3.2
       
   125         * @param aIapRecord
       
   126         */
       
   127 		virtual TBool CanHandleIapIdL( CommsDat::CCDIAPRecord *aIapRecord ) const;
       
   128         
       
   129         /**
       
   130         * From CCmPluginBaseEng
       
   131         * see base class
       
   132         *
       
   133         * @since S60 3.2
       
   134         */
       
   135 		virtual TInt RunSettingsL();
       
   136         
       
   137 	    /**
       
   138         * From CCmPluginBaseEng
       
   139         * see base class
       
   140         *
       
   141         * @since S60 3.2
       
   142         */
       
   143 		virtual void LoadServiceSettingL();
       
   144 
       
   145 	    /**
       
   146         * From CCmPluginBaseEng
       
   147         * see base class
       
   148         *
       
   149         * @since S60 3.2
       
   150         */
       
   151 		virtual TBool InitializeWithUiL( TBool aManuallyConfigure );
       
   152 	    
       
   153         /**
       
   154         * From CCmPluginBaseEng
       
   155         * see base class
       
   156         *
       
   157         * @since S60 3.2
       
   158         * @param aServiceName
       
   159         * @param aRecordId
       
   160         */
       
   161 		virtual void ServiceRecordIdLC( HBufC* &aServiceName, 
       
   162                                                         TUint32& aRecordId );
       
   163 
       
   164 	    /**
       
   165         * From CCmPluginBaseEng
       
   166         * see base class
       
   167         *
       
   168         * @since S60 3.2
       
   169         * @param aBearerName
       
   170         * @param aRecordId
       
   171         */
       
   172 		virtual void BearerRecordIdLC( HBufC* &aBearerName, 
       
   173                                                         TUint32& aRecordId );
       
   174                                        
       
   175     public: // New functions
       
   176     
       
   177         /**
       
   178         * @param aPdpType PDP type to be set
       
   179         */     
       
   180         void SetPDPTypeL( RPacketContext::TProtocolType aPdpType );
       
   181 
       
   182         /**
       
   183         * @since S60 3.2
       
   184         * @return the service record
       
   185         */
       
   186 		CommsDat::CCDWCDMAPacketServiceRecord& ServiceRecord() const;
       
   187         
       
   188     protected: // From CCmPluginBaseEng
       
   189     
       
   190         /**
       
   191         * From CCmPluginBaseEng
       
   192         *
       
   193         * @since S60 3.2
       
   194 		*/      
       
   195 		virtual void AdditionalReset();
       
   196 
       
   197         /**
       
   198         * From CCmPluginBaseEng
       
   199         *
       
   200         * @since S60 5.2
       
   201 		*/      
       
   202         virtual void CreateAdditionalRecordsL();
       
   203 
       
   204         /**
       
   205         * From CCmPluginBaseEng
       
   206         *
       
   207         * @since S60 5.2
       
   208 		*/      
       
   209         virtual void DeleteAdditionalRecordsL();
       
   210 
       
   211         /**
       
   212         * From CCmPluginBaseEng
       
   213         *
       
   214         * @since S60 5.2
       
   215 		*/      
       
   216         virtual void LoadAdditionalRecordsL();
       
   217 
       
   218         /**
       
   219         * From CCmPluginBaseEng
       
   220         *
       
   221         * @since S60 5.2
       
   222 		*/      
       
   223         virtual void UpdateAdditionalRecordsL();
       
   224 
       
   225 	private: // Constructors
       
   226 
       
   227         /**
       
   228         * Constructor
       
   229         *
       
   230         * @since S60 3.2
       
   231         * @param aInitParam
       
   232         * @param aOutgoing
       
   233         */      
       
   234 		CCmPluginPacketData( TCmPluginInitParam* aInitParam, 
       
   235 		                     TBool aOutgoing );
       
   236 
       
   237         /**
       
   238         * Second phase constructor    
       
   239         *
       
   240         * @since S60 3.2
       
   241 		*/      
       
   242 		void ConstructL();
       
   243 
       
   244     private: // from CCmPluginBaseEng
       
   245     
       
   246         /**
       
   247         * Second phase constructor    
       
   248         *
       
   249         * @since S60 3.2
       
   250 		*/      
       
   251 		virtual void CreateNewServiceRecordL();
       
   252 		
       
   253 		virtual void PrepareToCopyDataL( CCmPluginBaseEng* aDestInst ) const;
       
   254         
       
   255         /**
       
   256         * Sets the daemon name. Starts DHCP if set.
       
   257         *
       
   258         * @since S60 3.2
       
   259         */
       
   260         void SetDaemonNameL();
       
   261 
       
   262     private:
       
   263     
       
   264 	    /**
       
   265         * @since S60 3.2
       
   266         * @return if there is network coverage
       
   267         */
       
   268 		TBool CheckNetworkCoverageL() const;
       
   269         
       
   270 	private: // Data
       
   271 	    
       
   272         TBool   iOutgoing;  ///< EPacketDataOutGoing
       
   273 
       
   274         CommsDat::CCDUmtsR99QoSAndOnTableRecord* iPacketDataQoSRecord; // Owned
       
   275 	};
       
   276 
       
   277 #endif // PACKETDATA_PLUGIN_H