adaptationlayer/devicemodecontroller/dmc_ext/inc/dmc_event_handler_ape_cent.h
author mikaruus
Tue, 19 Oct 2010 13:16:20 +0300
changeset 9 8486d82aef45
parent 0 63b37f68c1ce
permissions -rw-r--r--
modemadaptation release 2010wk40
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     1
/*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     3
* All rights reserved.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     8
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
     9
* Initial Contributors:
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    11
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    12
* Contributors:
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    13
*
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    14
* Description:
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    15
*     DMC APE centric event handler class declaration.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    16
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    17
*/
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    18
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    19
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    20
#ifndef DMC_EVENT_HANDLER_APE_CENT_H
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    21
#define DMC_EVENT_HANDLER_APE_CENT_H
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    22
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    23
#ifndef DMC_INTERNAL_INCLUDE
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    24
#error Illegal usage of dmc_event_handler_ape_cent.h, It is only for DMC internal use !
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    25
#endif // DMC_INTERNAL_INCLUDE
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    26
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    27
//  INCLUDES
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    28
#include <e32def.h>                            // Data types, TUint8 etc.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    29
#include <boot_reason_api/boot_reason_api.h>   // TBootReason and TStartupMode handling
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    30
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    31
//  CONSTANTS
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    32
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    33
/**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    34
* INPUT EVENTS:
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    35
*   This constanst defines event types / inputs to this event handler.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    36
*
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    37
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    38
*   Kernel events (KERNEL_*) can be one of the following:
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    39
*      - ISI messages
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    40
*      - Power Handler(Power Up / Power Down)
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    41
*      - Isa Access Channel lost and open notification
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    42
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    43
*   User events (USER_*) are:
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    44
*      - Commands through DMC user interface.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    45
*/
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    46
// An ISI-message. Can be a PN_MODEM_MCE or PN_DMC owned messages.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    47
#define KERNEL_EVENT_ISI                      0x00
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    48
// Power Handler Power Down
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    49
#define KERNEL_EVENT_PWR_HANDLER              0x01
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    50
// IAD Modem connection lost
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    51
#define KERNEL_EVENT_MODEM_CONNECTION_NOT_OK  0x02
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    52
// Get the type of the event to be sent to kernel side client
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    53
#define KERNEL_GET_EVENT_TYPE                 0x03
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    54
// Used through DMC kernel IF
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    55
#define KERNEL_IF_GET_STARTUP_MODE            0x04
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    56
// Get hidden reset status, used through DMC kernel IF
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    57
#define KERNEL_IF_GET_HIDDEN_RESET_STATUS     0x05
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    58
// Generate reset requested from kernel side
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    59
#define KERNEL_IF_GENERATE_RESET              0x06
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    60
// Power off the device
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    61
#define KERNEL_IF_POWER_OFF                   0x07
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    62
// Used for detecting the event type
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    63
#define KERNEL_LAST_KERNEL_EVENT              KERNEL_IF_POWER_OFF
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    64
// Get target startup mode
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    65
#define USER_GET_TARGET_STARTUP_MODE          0x08
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    66
// Generate reset requested from user side
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    67
#define USER_GENERATE_RESET                   0x09
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    68
// Power off the device
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    69
#define USER_POWER_OFF                        0x0A
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    70
// Get hidden reset status
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    71
#define USER_GET_HIDDEN_RESET_STATUS          0x0B
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    72
// Get the type of the event to be sent to user side client
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    73
#define USER_GET_EVENT_TYPE                   0x0C
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    74
#define LAST_EVENT                            (USER_GET_EVENT_TYPE + 1)
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    75
#define NO_EVENTS_DEFINED                     0x00
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    76
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    77
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    78
/**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    79
* OUTPUT EVENTS:
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    80
*   This constanst defines type of user side client events
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    81
*   generated by this event handler.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    82
*
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    83
*   Event types are needed in case of Modem or PC SW
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    84
*   orginated controlled or uncontrolled power off / reset.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    85
*/
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    86
// Modem or PC SW orginated power off.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    87
#define DMC_CLIENT_POWER_OFF_EVENT           0x01
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    88
// Modem or PC SW orginated resest.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    89
#define DMC_CLIENT_RESET_EVENT               0x02
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    90
// No event requested
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    91
#define DMC_CLIENT_NO_EVENT                  0x00
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    92
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
    93
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    94
/**
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    95
* CLIENT TYPE:
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    96
*    A type of the client that request services.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    97
*/
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    98
#define DMC_USER_BIT                          0x01
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
    99
#define DMC_KERNEL_BIT                        0x02
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   100
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   101
//  MACROS
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   102
//  DATA TYPES
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   103
//  EXTERNAL DATA STRUCTURES
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   104
//  FUNCTION PROTOTYPES
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   105
//  FORWARD DECLARATIONS
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   106
class DDmcExtension;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   107
class DMutex;
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   108
class TDfc;
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   109
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   110
NONSHARABLE_CLASS(DmcEvHandApeCent)
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   111
    {
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   112
    public: // Event handler new public functions
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   113
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   114
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   115
        * Init the event handler
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   116
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   117
        * @param   *aDmcExt     A pointer to the DMC kernel extension.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   118
        * @return  None
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   119
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   120
        static void Init(DDmcExtension* const aDmcExt);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   121
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   122
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   123
        * Subscribe events.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   124
        *
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   125
        * @param   aTypeBitMask             DMC_USER_BIT or/and DMC_KERNEL_BIT
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   126
        * @param   *aReceiveEventDfcPtr     A pointer to TDfc queue.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   127
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   128
        */
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   129
        static void SubscribeEvents(const TUint8 aTypeBitMask, TDfc* const aReceiveEventDfcPtr);
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   130
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   131
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   132
        * Unsubscribe events.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   133
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   134
        * @param   *aUserEventDfcPtr     A pointer to DMC logical device TDfc queue.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   135
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   136
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   137
        static void UnsubscribeEvents(TDfc* const aUserEventDfcPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   138
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   139
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   140
        * A function that handles all incoming events.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   141
        * This is the entry point for all events.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   142
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   143
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   144
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   145
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   146
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   147
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   148
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   149
        static TInt HandleEvent(const TUint8  aType,
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   150
                                TUint8* const aKernMsgPtr,
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   151
                                TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   152
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   153
    private:  // Event handler new private functions
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   154
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   155
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   156
        * Locks a section of code for an execution more
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   157
        * than one thread concurrently.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   158
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   159
        * Use Unlock to free this lock.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   160
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   161
        * @param   None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   162
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   163
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   164
        inline static void Lock();
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   165
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   166
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   167
        * Frees the Lock.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   168
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   169
        * @param   None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   170
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   171
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   172
        inline static void Unlock();
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   173
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   174
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   175
        * This function process an ANY-state.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   176
        * There are events, which always must be handled regardless of
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   177
        * an ongoing transaction. These type of events are handled in the state ANY.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   178
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   179
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   180
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   181
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   182
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   183
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   184
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   185
        static TInt StateAny(const TUint8  aEventType,
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   186
                             TUint8* const aKernMsgPtr,
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   187
                             TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   188
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   189
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   190
        * This function process an IDLE-state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   191
        * IDLE-state is the only state in which a new transaction is started.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   192
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   193
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   194
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   195
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   196
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   197
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   198
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   199
        static TInt StateIdle(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   200
                              const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   201
                              TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   202
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   203
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   204
        * This function processes an APE_PWR_OFF-state (PC or SSM Adaptation).
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   205
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   206
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   207
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   208
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   209
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   210
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   211
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   212
        static TInt StateApePwrOff(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   213
                                   const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   214
                                   TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   215
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   216
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   217
        * This function process an APE_RESET-state (APE orginated reset).
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   218
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   219
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   220
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   221
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   222
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   223
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   224
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   225
        static TInt StateApeReset(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   226
                                  const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   227
                                  TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   228
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   229
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   230
        * This function process a MODEM_PWR_OFF-state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   231
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   232
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   233
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   234
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   235
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   236
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   237
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   238
        static TInt StateModemPwrOff(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   239
                                     const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   240
                                     TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   241
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   242
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   243
        * This function process a MODEM_CONTROLLED_RESET-state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   244
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   245
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   246
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   247
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   248
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   249
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   250
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   251
        static TInt StateModemControlledReset(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   252
                                              const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   253
                                              TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   254
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   255
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   256
        * This function process a MODEM_UNCONTROLLED_RESET-state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   257
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   258
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   259
        *                           dmc_event_handler_ape_cent.cpp-file defines allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   260
        * @param   *aKernMsgPtr     A pointer to a incoming kernel message.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   261
        * @param   *aUsrMsgPtr      A pointer to a incoming user message.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   262
        * @return  KErrNone or one of the system wide error
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   263
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   264
        static TInt StateModemUncontrolledReset(const TUint8  aEventType,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   265
                                                const TUint8* const aKernMsgPtr,
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   266
                                                TUint* const  aUsrMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   267
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   268
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   269
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   270
        * A function to handle a MCE_MODEM_STATE_QUERY_RESP
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   271
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   272
        * @param   *msgPtr     A pointer to a response.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   273
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   274
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   275
        static void HandleMceModemStateQueryResp(const TUint8* const aMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   276
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   277
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   278
        /**
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   279
        * This function Generates an event for user and kernel side clients.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   280
        * The event is generated only if events are subscribed.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   281
        *
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   282
        * @param   aToWhomBitMask   Defines whom to generate an event.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   283
        *                           DMC_USER_BIT or/and DMC_KERNEL_BIT
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   284
        * @return  None
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   285
        */
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   286
        static void GenerateEvent(const TUint8 aToWhomBitMask);
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   287
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   288
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   289
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   290
        * Handles a state transition of the DMC Event Handler.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   291
        * This function also checks if the a required state transition is allowed.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   292
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   293
        * @param   aNextState    Next state to be transferred.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   294
        *                        A table "STATES" on top of this file defines
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   295
        *                        allowed values.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   296
        * @return  None
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   297
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   298
        static void SetNextState(const TUint8 aNextState);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   299
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   300
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   301
        * This function checks if the incomming event is part of the any state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   302
        * Requests that are part of the any state are processed regardless
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   303
        * about the ongoing transaction. Requests are processed as long
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   304
        * as possible.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   305
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   306
        * @param   aEventType       Type of the message. A table "EVENTS" in the
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   307
        *                           dmc_event_handler_ape_cent.cpp-file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   308
        * @param   aKernMsgPtr      Pointer to Kernel event
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   309
        * @return  1: Bit set to indicate that a requested event is part of the any state.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   310
        *          0: Bit not set to indicate that a requested event is not part of the any state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   311
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   312
        static TUint8 IsAnyStateEvent(const TUint8 aEventType, const TUint8* const aKernMsgPtr);
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   313
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   314
    private: // data types
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   315
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   316
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   317
        * A pointer to DMC extension.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   318
        * DMC extension owns this pointer.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   319
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   320
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   321
        static DDmcExtension* iDmcExtPtr;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   322
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   323
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   324
        * A pointer to mutex.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   325
        * This class owns this pointer.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   326
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   327
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   328
        static DMutex* iMutexPtr;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   329
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   330
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   331
        * A pointer to DMC user Dfc-queue.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   332
        * This class does not own this pointer.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   333
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   334
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   335
        static TDfc* iUserEventDfcPtr;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   336
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   337
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   338
        * A pointer to DMC kernel Dfc-queue.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   339
        * This class does not own this pointer.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   340
        *
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   341
        */
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   342
        static TDfc* iKernelEventDfcPtr;
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   343
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   344
        /**
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   345
        * Event for signaling upstairs to start power off
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   346
        *
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   347
        */
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   348
        static TRawEvent iSwitchOffEvent;
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   349
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   350
        /**
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   351
        * Event for signaling upstairs to start reset
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   352
        *
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   353
        */
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   354
        static TRawEvent iResetEvent;
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   355
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   356
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   357
        /**
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   358
        * A target start-up mode.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   359
        * Values in the boot_reason_api.h-file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   360
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   361
        static TBootReason::TStartupMode iTargetStartupMode;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   362
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   363
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   364
        * A  hidden reset status.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   365
        * Values in the boot_reason_api.h-file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   366
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   367
        * ETrue if the reset is hidden, otherwise EFalse.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   368
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   369
        static TBool iHiddenStatus;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   370
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   371
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   372
        * This bitmap a defines requests that are part
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   373
        * of the any state.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   374
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   375
        static const TUint32 iAnyStateMap;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   376
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   377
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   378
        * This variable is needed to detect whether the Power Handler
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   379
        * PowerDown() has been called.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   380
        *
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   381
        * DMC needs this information to know if the Power Handler
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   382
        * PowerDownDone must be called in case the modem connection
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   383
        * is lost and there is an ongoing transaction.
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   384
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   385
        * If there is no ongoing transaction, the modem connection
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   386
        * lost is handled as a "MODEM_UNCONTROLLED_RESET".
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   387
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   388
        * Only one transaction is allowed, thus if there is already
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   389
        * ongoing transaction, the modem connection is handled as
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   390
        * below.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   391
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   392
        * ModemConnection lost AND "transaction ongoing":
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   393
        *     IF "Power Handler PowerDown called"
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   394
        *         -> Acknowlege to Power Handler by
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   395
        *            PowerDownDone()
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   396
        *     ELSE
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   397
        *        -> Standby and wait until Power Handler
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   398
        *           PowerDown() is called and then
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   399
        *           acknowledge back immediately by
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   400
        *           calling PowerDownDone().
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   401
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   402
        * Allowed values: TRUE / FALSE
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   403
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   404
        static TUint8 iPowerDownCalled;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   405
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   406
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   407
        * Modem action bit map.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   408
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   409
        * This bit map defines actions that have
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   410
        * been happend in the Modem state transition
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   411
        * and a modem connection.
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   412
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   413
        * Action information is needed to find a correct
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   414
        * slot to acknowledge the Power Handler PowerDownDone.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   415
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   416
        static TUint8 iModemActionBitMap;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   417
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   418
        /**
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   419
        * A current modem state.
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   420
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   421
        * Values from mceisi.h-file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   422
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   423
        static TUint8 iModemCurrentState;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   424
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   425
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   426
        * Event type.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   427
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   428
        * Defines the type of the event to be sent
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   429
        * user side client. The event type is used in case
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   430
        * PC SW or Modem orginated power off or reset or
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   431
        * in case of uncontrolled Modem reset..
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   432
        *
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   433
        * Values from OUTPUT EVENTS: defined beginning of this file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   434
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   435
        static TUint8 iEventType;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   436
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   437
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   438
        * Current state
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   439
        * Allowed values defined in dmc_event_handler_ape_cent.cpp-file.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   440
        *
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   441
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   442
        static TUint8 iCurrentState;
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   443
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   444
        /**
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   445
        * This table defines allowed state transitions.
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   446
        */
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   447
        static const TUint8 iStateTransitionMap[];
9
8486d82aef45 modemadaptation release 2010wk40
mikaruus
parents: 0
diff changeset
   448
0
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   449
    };
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   450
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   451
#endif // DMC_EVENT_HANDLER_APE_CENT_H
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   452
63b37f68c1ce First Contribution. Vanilla as it came from Nokia
<dalarub>
parents:
diff changeset
   453
// End of File