cbs/cbsserver/ServerInc/CCbsEtelMessaging.h
author hgs
Fri, 06 Aug 2010 13:08:23 +0300
changeset 36 7c428525956b
parent 33 8d5d7fcf9b59
permissions -rw-r--r--
201031
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2003 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:  This file contains the header file of the CCbsEtelMessaging class.
hgs
parents:
diff changeset
    15
*    
hgs
parents:
diff changeset
    16
*                CCbsEtelMessaging is a wrapper to RMobileBroadcastMessaging used 
hgs
parents:
diff changeset
    17
*                in network builds.
hgs
parents:
diff changeset
    18
*
hgs
parents:
diff changeset
    19
*/
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
#ifndef CCBSETELMESSAGING_H
hgs
parents:
diff changeset
    24
#define CCBSETELMESSAGING_H
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
// INCLUDES
hgs
parents:
diff changeset
    27
		/*****************************************************
hgs
parents:
diff changeset
    28
		*	Series 60 Customer / ETel
hgs
parents:
diff changeset
    29
		*	Series 60  ETel API
hgs
parents:
diff changeset
    30
		*****************************************************/
hgs
parents:
diff changeset
    31
#include <etelmm.h>            
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
#include <e32base.h>
hgs
parents:
diff changeset
    34
#include "MCbsEtelMessaging.h"
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
//  CLASS DECLARATION 
hgs
parents:
diff changeset
    37
hgs
parents:
diff changeset
    38
/**
hgs
parents:
diff changeset
    39
*   CCbsEtelMessaging acts as a wrapper to RMobileBroadcastMessaging instance.
hgs
parents:
diff changeset
    40
*
hgs
parents:
diff changeset
    41
*/
hgs
parents:
diff changeset
    42
class CCbsEtelMessaging : public CBase, public MCbsEtelMessaging
hgs
parents:
diff changeset
    43
    {
hgs
parents:
diff changeset
    44
    public:
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
        /**
hgs
parents:
diff changeset
    47
        *   Creates and returns a new instance of CCbsEtelMessaging.
hgs
parents:
diff changeset
    48
        *
hgs
parents:
diff changeset
    49
        *   @return Instance of CCbsEtelMessaging.
hgs
parents:
diff changeset
    50
        */
hgs
parents:
diff changeset
    51
        static CCbsEtelMessaging* NewL();
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
        /**
hgs
parents:
diff changeset
    54
        *   Destructor.
hgs
parents:
diff changeset
    55
        */
hgs
parents:
diff changeset
    56
        virtual ~CCbsEtelMessaging();
hgs
parents:
diff changeset
    57
hgs
parents:
diff changeset
    58
    public:     // MCbsEtelMessaging
hgs
parents:
diff changeset
    59
hgs
parents:
diff changeset
    60
        /**
hgs
parents:
diff changeset
    61
        *   Opens an emulated ETel messaging session.
hgs
parents:
diff changeset
    62
        *
hgs
parents:
diff changeset
    63
        *   @param  aPhone RMobilePhone-session
hgs
parents:
diff changeset
    64
        */
hgs
parents:
diff changeset
    65
        TInt Open( RMobilePhone& aPhone );
hgs
parents:
diff changeset
    66
hgs
parents:
diff changeset
    67
        /**
hgs
parents:
diff changeset
    68
        *   Closes ETel messaging session.
hgs
parents:
diff changeset
    69
        */
hgs
parents:
diff changeset
    70
        void Close();
hgs
parents:
diff changeset
    71
hgs
parents:
diff changeset
    72
        /**
hgs
parents:
diff changeset
    73
        *   Requests forwarding of the next received CB message.
hgs
parents:
diff changeset
    74
        *
hgs
parents:
diff changeset
    75
        *   @param  aReqStatus          Client request status
hgs
parents:
diff changeset
    76
        *   @param  aMsgData            CBS message data descriptor
hgs
parents:
diff changeset
    77
		*	@param	aMsgAttributes		CBS message attributes
hgs
parents:
diff changeset
    78
        */
hgs
parents:
diff changeset
    79
        void ReceiveMessage( TRequestStatus& aReqStatus, TDes8& aMsgData, 
hgs
parents:
diff changeset
    80
            TDes8& aMsgAttributes );
hgs
parents:
diff changeset
    81
        
hgs
parents:
diff changeset
    82
        /**
hgs
parents:
diff changeset
    83
        *   Cancels an outstanding ReceiveMessage() request.
hgs
parents:
diff changeset
    84
        */
hgs
parents:
diff changeset
    85
        void ReceiveMessageCancel();
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
        /**
hgs
parents:
diff changeset
    88
        *   Sets CBS receive mode (filter setting).
hgs
parents:
diff changeset
    89
        *
hgs
parents:
diff changeset
    90
        *   @param  aReqStatus          Returns: status of async operation
hgs
parents:
diff changeset
    91
        *	@param	aSetting			The new filter setting to be set to ETel
hgs
parents:
diff changeset
    92
        */
hgs
parents:
diff changeset
    93
        void SetFilterSetting( TRequestStatus& aReqStatus, 
hgs
parents:
diff changeset
    94
            RMobileBroadcastMessaging::TMobilePhoneBroadcastFilter aSetting ) const;
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
        /**
hgs
parents:
diff changeset
    97
        *   Cancels an outstanding SetFilterSetting() request.
hgs
parents:
diff changeset
    98
        *
hgs
parents:
diff changeset
    99
        */
hgs
parents:
diff changeset
   100
        void SetFilterSettingCancel();
hgs
parents:
diff changeset
   101
hgs
parents:
diff changeset
   102
        /**
hgs
parents:
diff changeset
   103
        *   Retrieves the current CBS receive mode (filter setting).
hgs
parents:
diff changeset
   104
        *
hgs
parents:
diff changeset
   105
        *   @param  aSetting			The setting to beffiled by ETel
hgs
parents:
diff changeset
   106
        *   @return                     Result code
hgs
parents:
diff changeset
   107
        */
hgs
parents:
diff changeset
   108
        TInt GetFilterSetting( 
hgs
parents:
diff changeset
   109
			RMobileBroadcastMessaging::TMobilePhoneBroadcastFilter& aSetting );        
hgs
parents:
diff changeset
   110
hgs
parents:
diff changeset
   111
    private: // Private methods
hgs
parents:
diff changeset
   112
hgs
parents:
diff changeset
   113
        /**
hgs
parents:
diff changeset
   114
        *   Constructor.
hgs
parents:
diff changeset
   115
        */
hgs
parents:
diff changeset
   116
        CCbsEtelMessaging();
hgs
parents:
diff changeset
   117
hgs
parents:
diff changeset
   118
        /**
hgs
parents:
diff changeset
   119
        *   Finalizes the construction.
hgs
parents:
diff changeset
   120
        */
hgs
parents:
diff changeset
   121
        void ConstructL();
hgs
parents:
diff changeset
   122
hgs
parents:
diff changeset
   123
    private: // Data
hgs
parents:
diff changeset
   124
hgs
parents:
diff changeset
   125
        // ETel messaging session to which calls to this class are forwarded.
hgs
parents:
diff changeset
   126
        RMobileBroadcastMessaging iMessaging;
hgs
parents:
diff changeset
   127
    };
hgs
parents:
diff changeset
   128
hgs
parents:
diff changeset
   129
#endif      //  CCBSETELMESSAGING_H
hgs
parents:
diff changeset
   130
            
hgs
parents:
diff changeset
   131
// End of File
hgs
parents:
diff changeset
   132
hgs
parents:
diff changeset
   133