phoneclientserver/inc/cphcltextphonedialdata.h
author hgs
Mon, 04 Oct 2010 15:57:13 +0300
changeset 51 12bc758d6a02
parent 33 8d5d7fcf9b59
permissions -rw-r--r--
201039
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  It defines dial data.
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
#ifndef CPHCLTEXTPHONEDIALDATA_H   
hgs
parents:
diff changeset
    20
#define CPHCLTEXTPHONEDIALDATA_H  
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
//  INCLUDES
hgs
parents:
diff changeset
    24
#include <e32base.h>
hgs
parents:
diff changeset
    25
#include <s32mem.h>
hgs
parents:
diff changeset
    26
#include <bldvariant.hrh>
hgs
parents:
diff changeset
    27
#include "phclttypes.h" 
hgs
parents:
diff changeset
    28
#include <cphcltdialdata.h> // Phone Client Notify API
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
hgs
parents:
diff changeset
    31
// Other constants used in TPhCltExtPhoneDialData ( default values )
hgs
parents:
diff changeset
    32
const TBool KPhCltDefaultAllowMatch = ETrue;   // Match is allowed
hgs
parents:
diff changeset
    33
const TBool KPhCltDefaultNumberEntry = EFalse; // No return to number entry.
hgs
parents:
diff changeset
    34
const TInt KPhCltDefaultNumberType = -1;       // No number type.
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
hgs
parents:
diff changeset
    37
// CONSTANTS
hgs
parents:
diff changeset
    38
//None.
hgs
parents:
diff changeset
    39
hgs
parents:
diff changeset
    40
hgs
parents:
diff changeset
    41
// FORWARD DECLARATIONS
hgs
parents:
diff changeset
    42
//None
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
// CLASS DECLARATION
hgs
parents:
diff changeset
    45
/**
hgs
parents:
diff changeset
    46
* It defines the structure containing dial information.
hgs
parents:
diff changeset
    47
*
hgs
parents:
diff changeset
    48
* Fields:
hgs
parents:
diff changeset
    49
*
hgs
parents:
diff changeset
    50
*  window group    - When call is ended, set window group is actived.
hgs
parents:
diff changeset
    51
*
hgs
parents:
diff changeset
    52
*  show number     - Permission to show number. ETrue if it is allowed.
hgs
parents:
diff changeset
    53
*
hgs
parents:
diff changeset
    54
*  redial          - Automatic redial override.
hgs
parents:
diff changeset
    55
*
hgs
parents:
diff changeset
    56
*  name            - Name corresponding to number. Name must be defined
hgs
parents:
diff changeset
    57
*                    if shown number equals to EFalse.
hgs
parents:
diff changeset
    58
*  contact link      - Contact link. you should put always when you are dialing
hgs
parents:
diff changeset
    59
*                    from phonebook contact.
hgs
parents:
diff changeset
    60
*  tel number      - String that is to be dialled.
hgs
parents:
diff changeset
    61
*                    number fields are supported.
hgs
parents:
diff changeset
    62
*  allow match     - Permission to allow match. ETrue if match is to be done.
hgs
parents:
diff changeset
    63
*                    If you are dialing from sim pd or fdn, then this should
hgs
parents:
diff changeset
    64
*                    be EFalse.
hgs
parents:
diff changeset
    65
*  number entry    - Returns whether to return to the number entry on failure 
hgs
parents:
diff changeset
    66
*
hgs
parents:
diff changeset
    67
*  end other calls - Information if the existing calls are ended before
hgs
parents:
diff changeset
    68
*                    this new one is made.
hgs
parents:
diff changeset
    69
*                    Not mandatory. Set only if you know that the call is an 
hgs
parents:
diff changeset
    70
*                    emergency call.
hgs
parents:
diff changeset
    71
*  subaddress      - The calling party subaddress. Supports SAT features.
hgs
parents:
diff changeset
    72
*                    Defined in ITU-T I.330 and 3GPP TS 11.14.
hgs
parents:
diff changeset
    73
*  SATCall         - Set whether this is SAT originated call or not. 
hgs
parents:
diff changeset
    74
*                    Supports SAT features.
hgs
parents:
diff changeset
    75
*  bearer          - Bearer capabilities. Supports SAT features.
hgs
parents:
diff changeset
    76
*
hgs
parents:
diff changeset
    77
*  CallType        - The type of the call, i.e. voice (default) or video.
hgs
parents:
diff changeset
    78
*
hgs
parents:
diff changeset
    79
*  SendKey         - Call made with SendKey, optional.
hgs
parents:
diff changeset
    80
*
hgs
parents:
diff changeset
    81
*  Redial maximum duration - Automatic redial maximum duration
hgs
parents:
diff changeset
    82
*
hgs
parents:
diff changeset
    83
*  Initiate call   - true if iniate call false otherwise 
hgs
parents:
diff changeset
    84
*
hgs
parents:
diff changeset
    85
*  UUI             - User to user information sent on call setup phase.
hgs
parents:
diff changeset
    86
*
hgs
parents:
diff changeset
    87
*  @lib phoneclient.lib
hgs
parents:
diff changeset
    88
*  @since 3.2
hgs
parents:
diff changeset
    89
*/
hgs
parents:
diff changeset
    90
/**
hgs
parents:
diff changeset
    91
*  Dial data set for PhoneClient.
hgs
parents:
diff changeset
    92
*
hgs
parents:
diff changeset
    93
*  @lib ServiceHandler.lib
hgs
parents:
diff changeset
    94
*  @since Series 60 3.2
hgs
parents:
diff changeset
    95
*/
hgs
parents:
diff changeset
    96
NONSHARABLE_CLASS( CPhCltExtPhoneDialData ): public CPhCltDialData
hgs
parents:
diff changeset
    97
    {
hgs
parents:
diff changeset
    98
   
hgs
parents:
diff changeset
    99
   public:
hgs
parents:
diff changeset
   100
      /* 
hgs
parents:
diff changeset
   101
        *   TBools combined to one uint.
hgs
parents:
diff changeset
   102
        *
hgs
parents:
diff changeset
   103
        *   EPhCltCallFlagsDefault
hgs
parents:
diff changeset
   104
        *               Default flags, if nothing is not specified.
hgs
parents:
diff changeset
   105
        *   EPhCltCallFlagsAllowNumberShowing
hgs
parents:
diff changeset
   106
        *               Number showing is allowed.
hgs
parents:
diff changeset
   107
        *   EPhCltCallFlagsReturnToNumberEntryOnFailure
hgs
parents:
diff changeset
   108
        *               Return to Number Entry if there is an error.
hgs
parents:
diff changeset
   109
        *   EPhCltCallFlagsAllowPersonalDirectoryMatching
hgs
parents:
diff changeset
   110
        *               The number is matched to Personal Directory.
hgs
parents:
diff changeset
   111
        *   EPhCltCallFlagsEndBeforeDial
hgs
parents:
diff changeset
   112
        *               Other calls are ended before the new one is done.
hgs
parents:
diff changeset
   113
        *   EPhCltCallFlagsSAT
hgs
parents:
diff changeset
   114
        *               If set means that SAT has originated the call.
hgs
parents:
diff changeset
   115
        *   EPhCltCallFlagsVideoCall
hgs
parents:
diff changeset
   116
        *               If set means that this is video call.
hgs
parents:
diff changeset
   117
        *               Otherwise means normal, i.e. voice call.
hgs
parents:
diff changeset
   118
        *   EPhCltCallFlagsVoIPCall
hgs
parents:
diff changeset
   119
        *               If set means that this is VoIP call.
hgs
parents:
diff changeset
   120
        *               Otherwise means normal, i.e. voice call.
hgs
parents:
diff changeset
   121
        *   EPhCltCallFlagsSendKey
hgs
parents:
diff changeset
   122
        *               If set means that call made with SendKey.
hgs
parents:
diff changeset
   123
        */
hgs
parents:
diff changeset
   124
        enum TPhCltCallFlags
hgs
parents:
diff changeset
   125
            {
hgs
parents:
diff changeset
   126
            EPhCltCallFlagsDefault                           = 0x0000,
hgs
parents:
diff changeset
   127
            EPhCltCallFlagsAllowNumberShowing                = 0x0001,
hgs
parents:
diff changeset
   128
            EPhCltCallFlagsReturnToNumberEntryOnFailure      = 0x0002,
hgs
parents:
diff changeset
   129
            EPhCltCallFlagsAllowPersonalDirectoryMatching    = 0x0004,
hgs
parents:
diff changeset
   130
            EPhCltCallFlagsEndBeforeDial                     = 0x0008,
hgs
parents:
diff changeset
   131
            EPhCltCallFlagsSAT                               = 0x0020,
hgs
parents:
diff changeset
   132
            EPhCltCallFlagsVideoCall                         = 0x0040,
hgs
parents:
diff changeset
   133
            EPhCltCallFlagsVoIPCall                          = 0x0080,
hgs
parents:
diff changeset
   134
            EPhCltCallFlagsSendKey                           = 0x0100
hgs
parents:
diff changeset
   135
            };
hgs
parents:
diff changeset
   136
      
hgs
parents:
diff changeset
   137
        /**
hgs
parents:
diff changeset
   138
        * Two-phased constructor.
hgs
parents:
diff changeset
   139
        */
hgs
parents:
diff changeset
   140
        IMPORT_C static CPhCltExtPhoneDialData* NewL();
hgs
parents:
diff changeset
   141
        
hgs
parents:
diff changeset
   142
        /**
hgs
parents:
diff changeset
   143
        * Two-phased constructor.
hgs
parents:
diff changeset
   144
        */
hgs
parents:
diff changeset
   145
        IMPORT_C static CPhCltExtPhoneDialData* NewLC();
hgs
parents:
diff changeset
   146
        
hgs
parents:
diff changeset
   147
        
hgs
parents:
diff changeset
   148
        /**
hgs
parents:
diff changeset
   149
        * Two-phased constructor.
hgs
parents:
diff changeset
   150
        */
hgs
parents:
diff changeset
   151
        IMPORT_C static CPhCltExtPhoneDialData* NewL( const TDesC8& aPackage );
hgs
parents:
diff changeset
   152
        
hgs
parents:
diff changeset
   153
        /**
hgs
parents:
diff changeset
   154
        * Two-phased constructor.
hgs
parents:
diff changeset
   155
        */
hgs
parents:
diff changeset
   156
        IMPORT_C static CPhCltExtPhoneDialData* NewLC( const TDesC8& aPackage );
hgs
parents:
diff changeset
   157
        
hgs
parents:
diff changeset
   158
        /**
hgs
parents:
diff changeset
   159
        * Destructor.
hgs
parents:
diff changeset
   160
        */
hgs
parents:
diff changeset
   161
        IMPORT_C virtual ~CPhCltExtPhoneDialData();
hgs
parents:
diff changeset
   162
hgs
parents:
diff changeset
   163
    public: // New functions
hgs
parents:
diff changeset
   164
    
hgs
parents:
diff changeset
   165
        /**
hgs
parents:
diff changeset
   166
        * Fills the parameter list.
hgs
parents:
diff changeset
   167
        * @since Series 60 3.2
hgs
parents:
diff changeset
   168
        * @param aInParamList In parameter used with CAiwService.
hgs
parents:
diff changeset
   169
        */  
hgs
parents:
diff changeset
   170
        IMPORT_C HBufC8* PackLC();
hgs
parents:
diff changeset
   171
        
hgs
parents:
diff changeset
   172
        
hgs
parents:
diff changeset
   173
        // Calculates dialdata package size
hgs
parents:
diff changeset
   174
        IMPORT_C TInt CalculatePackageSize() const;
hgs
parents:
diff changeset
   175
        
hgs
parents:
diff changeset
   176
        // Sets dial data parameters to CPhCltExtPhoneDialData object
hgs
parents:
diff changeset
   177
        void SetParamsL( const TDesC8& aPackage ); 
hgs
parents:
diff changeset
   178
               
hgs
parents:
diff changeset
   179
        
hgs
parents:
diff changeset
   180
   public: // Access - Getters
hgs
parents:
diff changeset
   181
         
hgs
parents:
diff changeset
   182
hgs
parents:
diff changeset
   183
        /**
hgs
parents:
diff changeset
   184
        * Defines if mathing is allowed.
hgs
parents:
diff changeset
   185
        * @since Series 60 3.2
hgs
parents:
diff changeset
   186
        * @return Returns the allow match setting information.
hgs
parents:
diff changeset
   187
        */
51
hgs
parents: 33
diff changeset
   188
        TBool AllowMatch() const;
33
hgs
parents:
diff changeset
   189
        
hgs
parents:
diff changeset
   190
        /**
hgs
parents:
diff changeset
   191
        * Bearer capability.
hgs
parents:
diff changeset
   192
        * @since Series 60 3.2
hgs
parents:
diff changeset
   193
        * @return Returns bearer capability.
hgs
parents:
diff changeset
   194
        */
51
hgs
parents: 33
diff changeset
   195
        const TPhCltBearerCapability& Bearer() const;
33
hgs
parents:
diff changeset
   196
        
hgs
parents:
diff changeset
   197
        /**
hgs
parents:
diff changeset
   198
        * Gives the current call type.
hgs
parents:
diff changeset
   199
        * @since Series 60 3.2
hgs
parents:
diff changeset
   200
        * @return Current call type.
hgs
parents:
diff changeset
   201
        */
51
hgs
parents: 33
diff changeset
   202
        TPhCltCallType CallType() const ;   
33
hgs
parents:
diff changeset
   203
         
hgs
parents:
diff changeset
   204
        /**
hgs
parents:
diff changeset
   205
        * Contact link field.
hgs
parents:
diff changeset
   206
        * @since Series 60 3.2
hgs
parents:
diff changeset
   207
        * @return Returns contack link item.
hgs
parents:
diff changeset
   208
        */
51
hgs
parents: 33
diff changeset
   209
        const TDesC8& ContactLink() const;
33
hgs
parents:
diff changeset
   210
        
hgs
parents:
diff changeset
   211
        
hgs
parents:
diff changeset
   212
        /**
hgs
parents:
diff changeset
   213
        * End other calls param.
hgs
parents:
diff changeset
   214
        * @since Series 60 3.2
hgs
parents:
diff changeset
   215
        * @return Returns ETrue if other calls will be terminated.
hgs
parents:
diff changeset
   216
        *                 EFalse if calls are not terminated.
hgs
parents:
diff changeset
   217
        */
51
hgs
parents: 33
diff changeset
   218
        TBool EndOtherCalls() const;
33
hgs
parents:
diff changeset
   219
        
hgs
parents:
diff changeset
   220
        /**
hgs
parents:
diff changeset
   221
        * Intiate Call
hgs
parents:
diff changeset
   222
        * @since Series 60 3.2
hgs
parents:
diff changeset
   223
        * @return Returns ETrue if call is itiate call EFalse otherwise
hgs
parents:
diff changeset
   224
        */
51
hgs
parents: 33
diff changeset
   225
        TBool InitiateCall() const;
33
hgs
parents:
diff changeset
   226
        
hgs
parents:
diff changeset
   227
        /**
hgs
parents:
diff changeset
   228
        * Name.
hgs
parents:
diff changeset
   229
        * @since Series 60 3.2
hgs
parents:
diff changeset
   230
        * @return Returns name.
hgs
parents:
diff changeset
   231
        */
51
hgs
parents: 33
diff changeset
   232
        const TPhCltNameBuffer& Name() const;
33
hgs
parents:
diff changeset
   233
        
hgs
parents:
diff changeset
   234
        
hgs
parents:
diff changeset
   235
        /**
hgs
parents:
diff changeset
   236
        * Redial information.
hgs
parents:
diff changeset
   237
        * @since Series 60 3.2
hgs
parents:
diff changeset
   238
        * @return Return the redial status,
hgs
parents:
diff changeset
   239
        */
51
hgs
parents: 33
diff changeset
   240
        TInt Redial() const;  
33
hgs
parents:
diff changeset
   241
        
hgs
parents:
diff changeset
   242
        /**
hgs
parents:
diff changeset
   243
        * Redial maximum duration
hgs
parents:
diff changeset
   244
        * @since Series 60 3.2
hgs
parents:
diff changeset
   245
        * @return Returns redial max duration.
hgs
parents:
diff changeset
   246
        */
51
hgs
parents: 33
diff changeset
   247
        const TTimeIntervalSeconds RedialMaximumDuration() const;      
33
hgs
parents:
diff changeset
   248
                   
hgs
parents:
diff changeset
   249
        
hgs
parents:
diff changeset
   250
        /** 
hgs
parents:
diff changeset
   251
        * Return in failure.
hgs
parents:
diff changeset
   252
        * @since Series 60 3.2
hgs
parents:
diff changeset
   253
        * @return Returns whether to return to the number entry.
hgs
parents:
diff changeset
   254
        */
hgs
parents:
diff changeset
   255
        //IMPORT_C TBool ReturnToNumberEntryOnFailure() const;
hgs
parents:
diff changeset
   256
        
hgs
parents:
diff changeset
   257
        /**
hgs
parents:
diff changeset
   258
        * SAT Call.
hgs
parents:
diff changeset
   259
        * @since Series 60 3.2
hgs
parents:
diff changeset
   260
        * @return Returns ETrue if SAT call EFalse if not.
hgs
parents:
diff changeset
   261
        */
51
hgs
parents: 33
diff changeset
   262
        TBool SATCall() const;
33
hgs
parents:
diff changeset
   263
        
hgs
parents:
diff changeset
   264
        /** 
hgs
parents:
diff changeset
   265
        * SendKey pressed.
hgs
parents:
diff changeset
   266
        * @since Series 60 3.2
hgs
parents:
diff changeset
   267
        * @return Return ETrue if SendKey used.
hgs
parents:
diff changeset
   268
        */
51
hgs
parents: 33
diff changeset
   269
        TBool SendKeyPressed() const;
33
hgs
parents:
diff changeset
   270
        
hgs
parents:
diff changeset
   271
        /**
hgs
parents:
diff changeset
   272
        * Show Number.
hgs
parents:
diff changeset
   273
        * @since Series 60 3.2
hgs
parents:
diff changeset
   274
        * @return Returns the number visibility.
hgs
parents:
diff changeset
   275
        */
51
hgs
parents: 33
diff changeset
   276
        TBool ShowNumber() const;
33
hgs
parents:
diff changeset
   277
        
hgs
parents:
diff changeset
   278
        /**
hgs
parents:
diff changeset
   279
        * Sub address.
hgs
parents:
diff changeset
   280
        * @since Series 60 3.2
hgs
parents:
diff changeset
   281
        * @return Returns SAT call sub address.
hgs
parents:
diff changeset
   282
        */
51
hgs
parents: 33
diff changeset
   283
        const TPhCltSubAddress& SubAddress() const;
33
hgs
parents:
diff changeset
   284
        
hgs
parents:
diff changeset
   285
        /**
hgs
parents:
diff changeset
   286
        * Gives the current phone number.
hgs
parents:
diff changeset
   287
        * @since Series 60 3.2
hgs
parents:
diff changeset
   288
        * @return Telephone number.
hgs
parents:
diff changeset
   289
        */
51
hgs
parents: 33
diff changeset
   290
        const TPhCltTelephoneNumber& TelephoneNumber() const;
33
hgs
parents:
diff changeset
   291
        
hgs
parents:
diff changeset
   292
        /**
hgs
parents:
diff changeset
   293
        * Gives the current window group id.
hgs
parents:
diff changeset
   294
        * @since Series 60 3.2
hgs
parents:
diff changeset
   295
        * @return Window group id. 
hgs
parents:
diff changeset
   296
        */     
51
hgs
parents: 33
diff changeset
   297
        TInt WindowGroup() const; 
33
hgs
parents:
diff changeset
   298
        
hgs
parents:
diff changeset
   299
        /**
hgs
parents:
diff changeset
   300
         * Gives the user to user information.
hgs
parents:
diff changeset
   301
         * @since S60 v3.2
hgs
parents:
diff changeset
   302
         * @return User to user information.
hgs
parents:
diff changeset
   303
         */
51
hgs
parents: 33
diff changeset
   304
        const TDesC& UUI() const;
33
hgs
parents:
diff changeset
   305
        
hgs
parents:
diff changeset
   306
    public: // Access - Setters
hgs
parents:
diff changeset
   307
    
hgs
parents:
diff changeset
   308
        /**
hgs
parents:
diff changeset
   309
        * Set whether the name entered in SetName should be matched
hgs
parents:
diff changeset
   310
        * against the personal directory.
hgs
parents:
diff changeset
   311
        * @since Series 60 3.2
hgs
parents:
diff changeset
   312
        * This should be set EFalse only if phone number has not been
hgs
parents:
diff changeset
   313
        * taken from phonebook.
hgs
parents:
diff changeset
   314
        *
hgs
parents:
diff changeset
   315
        * @param aAllowMatch Whether to allow matches.
hgs
parents:
diff changeset
   316
        */
51
hgs
parents: 33
diff changeset
   317
        void SetAllowMatch( TBool aAllowMatch );
33
hgs
parents:
diff changeset
   318
    
hgs
parents:
diff changeset
   319
        /**
hgs
parents:
diff changeset
   320
        * Set the bearer capability.
hgs
parents:
diff changeset
   321
        * @since Series 60 3.2
hgs
parents:
diff changeset
   322
        * @param aBearer The bearer capabilities as defined in GSM 04.08.
hgs
parents:
diff changeset
   323
        * @leaves KErrArgument if aBearer's length is longer than KAiwBearerLength
hgs
parents:
diff changeset
   324
        */
51
hgs
parents: 33
diff changeset
   325
        void SetBearerL( const TPhCltBearerCapability& aBearer );
33
hgs
parents:
diff changeset
   326
        
hgs
parents:
diff changeset
   327
        /**
hgs
parents:
diff changeset
   328
        * Sets call type.
hgs
parents:
diff changeset
   329
        * @since Series 60 3.2
hgs
parents:
diff changeset
   330
        * @param aCallType calls' type.
hgs
parents:
diff changeset
   331
        */
51
hgs
parents: 33
diff changeset
   332
        void SetCallType( TPhCltCallType aCallType );
33
hgs
parents:
diff changeset
   333
        
hgs
parents:
diff changeset
   334
        /**
hgs
parents:
diff changeset
   335
        * Set contact link.
hgs
parents:
diff changeset
   336
        * @since Series 60 3.2
hgs
parents:
diff changeset
   337
        * @param aContactLink Contact link information.
hgs
parents:
diff changeset
   338
        */
51
hgs
parents: 33
diff changeset
   339
        void SetContactLinkL( const TDesC8& aContactLink );
33
hgs
parents:
diff changeset
   340
        
hgs
parents:
diff changeset
   341
        
hgs
parents:
diff changeset
   342
        /**
hgs
parents:
diff changeset
   343
        * Set parameter for end other calls. 
hgs
parents:
diff changeset
   344
        * @since Series 60 3.2
hgs
parents:
diff changeset
   345
        * If this is set to ETrue, other calls will be terminated before
hgs
parents:
diff changeset
   346
        * dial. Default is EFalse.
hgs
parents:
diff changeset
   347
        * @param aEndCalls Are the other calls ended.
hgs
parents:
diff changeset
   348
        */
51
hgs
parents: 33
diff changeset
   349
        void SetEndOtherCalls( TBool aEndCalls  );
33
hgs
parents:
diff changeset
   350
        
hgs
parents:
diff changeset
   351
        /**
hgs
parents:
diff changeset
   352
        * Set Initiate call Etrue or EFalse
hgs
parents:
diff changeset
   353
        *@since Series 60 3.2
hgs
parents:
diff changeset
   354
        * @param aInitCall ETrue if call is intiate call
hgs
parents:
diff changeset
   355
        */
51
hgs
parents: 33
diff changeset
   356
        void SetInitiateCall( TBool aInitCall );
33
hgs
parents:
diff changeset
   357
        
hgs
parents:
diff changeset
   358
        
hgs
parents:
diff changeset
   359
        /**
hgs
parents:
diff changeset
   360
        * Set the name of the person who is to be called.
hgs
parents:
diff changeset
   361
        * @since Series 60 3.2
hgs
parents:
diff changeset
   362
        * @param aName The name of the person being called.
hgs
parents:
diff changeset
   363
        * @leaves KErrArgument if aName length is over 50 characters.
hgs
parents:
diff changeset
   364
        */
51
hgs
parents: 33
diff changeset
   365
        void SetNameL( const TPhCltNameBuffer& aName );
33
hgs
parents:
diff changeset
   366
        
hgs
parents:
diff changeset
   367
        
hgs
parents:
diff changeset
   368
        /**
hgs
parents:
diff changeset
   369
        * Change the redial mode.
hgs
parents:
diff changeset
   370
        * @since Series 60 3.2
hgs
parents:
diff changeset
   371
        * @param aRedial The new redial status
hgs
parents:
diff changeset
   372
        */
51
hgs
parents: 33
diff changeset
   373
        void SetRedial( TInt aRedial );
33
hgs
parents:
diff changeset
   374
        
hgs
parents:
diff changeset
   375
        /**
hgs
parents:
diff changeset
   376
        * Set redial max duration.
hgs
parents:
diff changeset
   377
        * @since Series 60 3.2
hgs
parents:
diff changeset
   378
        * @param aDuration redial max duration.
hgs
parents:
diff changeset
   379
        */
51
hgs
parents: 33
diff changeset
   380
        void SetRedialMaximumDuration( TTimeIntervalSeconds aMaximumRedialDuration );
33
hgs
parents:
diff changeset
   381
        
hgs
parents:
diff changeset
   382
        /**
hgs
parents:
diff changeset
   383
        * Set whether to return to number entry.
hgs
parents:
diff changeset
   384
        *
hgs
parents:
diff changeset
   385
        * @param aReturn Whether to return to the number entry editor.
hgs
parents:
diff changeset
   386
        */
51
hgs
parents: 33
diff changeset
   387
        void SetReturnToNumberEntryOnFailure( TBool aReturn );
33
hgs
parents:
diff changeset
   388
                
hgs
parents:
diff changeset
   389
        /**
hgs
parents:
diff changeset
   390
        * Set wheteher this is a SAT originated call or not.
hgs
parents:
diff changeset
   391
        * If this function is not called, the originator is assumed to 
hgs
parents:
diff changeset
   392
        * be other than SAT.
hgs
parents:
diff changeset
   393
        * @since Series 60 3.2
hgs
parents:
diff changeset
   394
        * @param aSATCall ETrue if SAT originated the call, EFalse otherwise.
hgs
parents:
diff changeset
   395
        */
51
hgs
parents: 33
diff changeset
   396
        void SetSATCall( TBool aSATCall );
33
hgs
parents:
diff changeset
   397
        
hgs
parents:
diff changeset
   398
        
hgs
parents:
diff changeset
   399
        /**
hgs
parents:
diff changeset
   400
        * Set the value of SendKey.
hgs
parents:
diff changeset
   401
        *  @since Series 60 3.2
hgs
parents:
diff changeset
   402
        * @param aSendKey The value of SendKey.
hgs
parents:
diff changeset
   403
        */
51
hgs
parents: 33
diff changeset
   404
        void SetSendKeyPressed( TBool aSendKey );
33
hgs
parents:
diff changeset
   405
        
hgs
parents:
diff changeset
   406
        /**
hgs
parents:
diff changeset
   407
        * Set the number visibility in the phone app.
hgs
parents:
diff changeset
   408
        * @since Series 60 3.2
hgs
parents:
diff changeset
   409
        * If this is set to EFalse, then number is not shown or written to 
hgs
parents:
diff changeset
   410
        * log event.
hgs
parents:
diff changeset
   411
        * @param aShowNumber Whether or not to show the number.
hgs
parents:
diff changeset
   412
        */
51
hgs
parents: 33
diff changeset
   413
        void SetShowNumber( TBool aShowNumber );
33
hgs
parents:
diff changeset
   414
        
hgs
parents:
diff changeset
   415
        /**
hgs
parents:
diff changeset
   416
        * Set the calling party subaddress.
hgs
parents:
diff changeset
   417
        * Defined in ITU-T I.330 and 3GPP TS 11.14.
hgs
parents:
diff changeset
   418
        * @since Series 60 3.2
hgs
parents:
diff changeset
   419
        * @param aSubAddress The calling party subaddress.
hgs
parents:
diff changeset
   420
        * @leaves KErrArgument if aSubAddress length is longer than 
hgs
parents:
diff changeset
   421
        * KAiwSubAddressLength
hgs
parents:
diff changeset
   422
        */
51
hgs
parents: 33
diff changeset
   423
        void SetSubAddressL( const TPhCltSubAddress& aSubAddress );
33
hgs
parents:
diff changeset
   424
        
hgs
parents:
diff changeset
   425
        /**
hgs
parents:
diff changeset
   426
        * Sets the phone number.
hgs
parents:
diff changeset
   427
        * @since Series 60 3.2
hgs
parents:
diff changeset
   428
        * @param aNumber Phone number, which maximum length is
hgs
parents:
diff changeset
   429
        * KMaximumPhoneNumberLength.
hgs
parents:
diff changeset
   430
        * @leaves KErrArgument if aPhoneNumber length is over KMaximumPhoneNumberLength
hgs
parents:
diff changeset
   431
        */
51
hgs
parents: 33
diff changeset
   432
        void SetTelephoneNumber( const TPhCltTelephoneNumber& aNumber );
33
hgs
parents:
diff changeset
   433
        
hgs
parents:
diff changeset
   434
        /**
hgs
parents:
diff changeset
   435
        * Sets the window group identifier. When call is ended, set window group is actived.
hgs
parents:
diff changeset
   436
        * @since Series 60 3.2
hgs
parents:
diff changeset
   437
        * @param aWindowGroup Window group id.
hgs
parents:
diff changeset
   438
        */
51
hgs
parents: 33
diff changeset
   439
        void SetWindowGroup( TInt aWindowGroup );
33
hgs
parents:
diff changeset
   440
     
hgs
parents:
diff changeset
   441
        /**
hgs
parents:
diff changeset
   442
        * Set the value of xSP Service Id. 
hgs
parents:
diff changeset
   443
        *
hgs
parents:
diff changeset
   444
        * @param aServiceId The value of Service Id.
hgs
parents:
diff changeset
   445
        */
hgs
parents:
diff changeset
   446
        IMPORT_C void SetServiceId( TUint32 aServiceId );
hgs
parents:
diff changeset
   447
        
hgs
parents:
diff changeset
   448
hgs
parents:
diff changeset
   449
        /** 
hgs
parents:
diff changeset
   450
        * Service Id. VoIP2.2 implementation
hgs
parents:
diff changeset
   451
        * @return Return service id or zero.
hgs
parents:
diff changeset
   452
        */
hgs
parents:
diff changeset
   453
        IMPORT_C TUint32 ServiceId() const; 
hgs
parents:
diff changeset
   454
hgs
parents:
diff changeset
   455
        
hgs
parents:
diff changeset
   456
        /**
hgs
parents:
diff changeset
   457
         * Sets user to user information. Maximum length is 
hgs
parents:
diff changeset
   458
         * KPhCltUUILength.
hgs
parents:
diff changeset
   459
         * @param aUUI User to user information.
hgs
parents:
diff changeset
   460
         * @since S60 v3.2
hgs
parents:
diff changeset
   461
         */
51
hgs
parents: 33
diff changeset
   462
         void SetUUIL( const TDesC& aUUI );
33
hgs
parents:
diff changeset
   463
                      
hgs
parents:
diff changeset
   464
    // Constructors
hgs
parents:
diff changeset
   465
    
hgs
parents:
diff changeset
   466
     private: 
hgs
parents:
diff changeset
   467
     
hgs
parents:
diff changeset
   468
        /**
hgs
parents:
diff changeset
   469
        * C++ default constructor.
hgs
parents:
diff changeset
   470
        * @since Series 60 3.2
hgs
parents:
diff changeset
   471
        */
hgs
parents:
diff changeset
   472
        CPhCltExtPhoneDialData(); 
hgs
parents:
diff changeset
   473
hgs
parents:
diff changeset
   474
        /**
hgs
parents:
diff changeset
   475
        * By default Symbian 2nd phase constructor is private.
hgs
parents:
diff changeset
   476
        * @since Series 60 3.2
hgs
parents:
diff changeset
   477
        */
hgs
parents:
diff changeset
   478
        void ConstructL();
hgs
parents:
diff changeset
   479
        
hgs
parents:
diff changeset
   480
        /**
hgs
parents:
diff changeset
   481
        * By default Symbian 2nd phase constructor is private.
hgs
parents:
diff changeset
   482
        * @since Series 60 3.2
hgs
parents:
diff changeset
   483
        * @param aPackage including dial data
hgs
parents:
diff changeset
   484
        */
hgs
parents:
diff changeset
   485
        void ConstructL( const TDesC8& aPackage ); 
hgs
parents:
diff changeset
   486
        
hgs
parents:
diff changeset
   487
     
hgs
parents:
diff changeset
   488
     //Private functions
hgs
parents:
diff changeset
   489
     
hgs
parents:
diff changeset
   490
     private:
hgs
parents:
diff changeset
   491
        /**
hgs
parents:
diff changeset
   492
        * Calculates variable descriptor size
hgs
parents:
diff changeset
   493
        * @since Series 60 3.2
hgs
parents:
diff changeset
   494
        * @param aDescriptor which size is calculated
hgs
parents:
diff changeset
   495
        */
hgs
parents:
diff changeset
   496
        TInt CalculateDescriptorSize( const TDesC& aDescriptor ) const;
hgs
parents:
diff changeset
   497
        
hgs
parents:
diff changeset
   498
        /**
hgs
parents:
diff changeset
   499
        * Calculates variable descriptor size
hgs
parents:
diff changeset
   500
        * @since Series 60 3.2
hgs
parents:
diff changeset
   501
        * @param aDescriptor which size is calculated
hgs
parents:
diff changeset
   502
        */
hgs
parents:
diff changeset
   503
        TInt CalculateDescriptorSize( const TDesC8& aDescriptor ) const;
hgs
parents:
diff changeset
   504
        
hgs
parents:
diff changeset
   505
        /**
hgs
parents:
diff changeset
   506
        * Read descriptor value from stream
hgs
parents:
diff changeset
   507
        * @since Series 60 3.2
hgs
parents:
diff changeset
   508
        * @param aStream used stream
hgs
parents:
diff changeset
   509
        * @param aDescriptor which is read from stream
hgs
parents:
diff changeset
   510
        */
hgs
parents:
diff changeset
   511
        void ReadDescriptorFromStreamL( RDesReadStream& aStream, HBufC8*& aDescriptor );
hgs
parents:
diff changeset
   512
        
hgs
parents:
diff changeset
   513
        /**
hgs
parents:
diff changeset
   514
        * Read descriptor value from stream
hgs
parents:
diff changeset
   515
        * @since Series 60 3.2
hgs
parents:
diff changeset
   516
        * @param aStream used stream
hgs
parents:
diff changeset
   517
        * @param aDescriptor which is read from stream
hgs
parents:
diff changeset
   518
        */
hgs
parents:
diff changeset
   519
        void ReadDescriptorFromStreamL( RDesReadStream& aStream, HBufC*& aDescriptor );
hgs
parents:
diff changeset
   520
        
hgs
parents:
diff changeset
   521
        /**
hgs
parents:
diff changeset
   522
        * Write descriptor value to stream
hgs
parents:
diff changeset
   523
        * @since Series 60 3.2
hgs
parents:
diff changeset
   524
        * @param aStream used stream
hgs
parents:
diff changeset
   525
        * @param aDescriptor which value is write to stream
hgs
parents:
diff changeset
   526
        */
hgs
parents:
diff changeset
   527
        void WriteDescriptorToStreamL( RDesWriteStream& aStream, const TDesC8& aDescriptor );
hgs
parents:
diff changeset
   528
        
hgs
parents:
diff changeset
   529
        /**
hgs
parents:
diff changeset
   530
        * Write descriptor value to stream
hgs
parents:
diff changeset
   531
        * @since Series 60 3.2
hgs
parents:
diff changeset
   532
        * @param aStream used stream
hgs
parents:
diff changeset
   533
        * @param aDescriptor which value is write to stream
hgs
parents:
diff changeset
   534
        */
hgs
parents:
diff changeset
   535
        void WriteDescriptorToStreamL( RDesWriteStream& aStream, const TDesC& aDescriptor );
hgs
parents:
diff changeset
   536
        
hgs
parents:
diff changeset
   537
     
hgs
parents:
diff changeset
   538
        /**
hgs
parents:
diff changeset
   539
        * Copy descriptor value to member descriptor
hgs
parents:
diff changeset
   540
        * @since Series 60 3.2
hgs
parents:
diff changeset
   541
        * @param aSource which is as copy source
hgs
parents:
diff changeset
   542
        * @param aMemberDescriptor is as copy destination
hgs
parents:
diff changeset
   543
        */
hgs
parents:
diff changeset
   544
        void CopyDescriptorToMemberDescriptorL( const TDesC& aSource, HBufC*& aMemberDescriptor );
hgs
parents:
diff changeset
   545
        
hgs
parents:
diff changeset
   546
        /**
hgs
parents:
diff changeset
   547
        * Copy descriptor value to member descriptor
hgs
parents:
diff changeset
   548
        * @since Series 60 3.2
hgs
parents:
diff changeset
   549
        * @param aSource which is as copy source
hgs
parents:
diff changeset
   550
        * @param aMemberDescriptor is as copy destination
hgs
parents:
diff changeset
   551
        */
hgs
parents:
diff changeset
   552
        void CopyDescriptorToMemberDescriptorL( const TDesC8& aSource, HBufC8*& aMemberDescriptor );        
hgs
parents:
diff changeset
   553
     
hgs
parents:
diff changeset
   554
        
hgs
parents:
diff changeset
   555
        /**
hgs
parents:
diff changeset
   556
        * Check descriptor max length
hgs
parents:
diff changeset
   557
        * Leaves with KErrArgument if aDescriptorLength is greated that aMaxAllowedDescriptorLenght
hgs
parents:
diff changeset
   558
        * @since Series 60 3.2
hgs
parents:
diff changeset
   559
        * @param aDescriptorLength is descriptor length
hgs
parents:
diff changeset
   560
        * @param  aMaxAllowedDescriptorLength maximum allowed descriptor length
hgs
parents:
diff changeset
   561
        */
hgs
parents:
diff changeset
   562
        void CheckDescriptorMaxLengthL( TInt aDescriptorLength, TInt aMaxAllowedDescriptorLength ) const;
hgs
parents:
diff changeset
   563
        
hgs
parents:
diff changeset
   564
hgs
parents:
diff changeset
   565
    };
hgs
parents:
diff changeset
   566
hgs
parents:
diff changeset
   567
#endif      // CPHCLTEXTPHONEDIALDATA_H
hgs
parents:
diff changeset
   568
            
hgs
parents:
diff changeset
   569
// End of File