Estart/magickey_chipset_api.h
author Arnaud Lenoir
Tue, 05 Oct 2010 14:48:01 +0100
changeset 26 0cdfb9e7f8e5
parent 1 d7a6bb4d51e7
permissions -rwxr-xr-x
FYI - READ ONLY - Updated SHAI_public_APIs-status.xlsx. contact arnaudl@symbian.org for any changes you want.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     1
/*

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     2
  magickey_chipset_api.h

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     3

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     4
  Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     5
  All rights reserved.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     6

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     7
  This program and the accompanying materials are made available 

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     8
  under the terms of the Eclipse Public License v1.0 which accompanies 

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
     9
  this distribution, and is available at 

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    10
  http://www.eclipse.org/legal/epl-v10.html

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    11

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    12
  Initial Contributors:

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    13
  Nokia Corporation - initial contribution.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    14

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    15
  Contributors:

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    16
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    17

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    18
/** @file

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    19
@brief Chipset API H Template

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    20

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    21
This is a header template for Chipset API work. This template should not be

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    22
used as a normal code template because the location of where the API is

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    23
documented is different in normal coding style! Doxygen commenting style tries

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    24
to be similar what Symbian is using for their kernel side development.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    25

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    26
You can define here also the scope of the whole API see below, or you can

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    27
define the scope separately before the class or even before the function if

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    28
that is needed.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    29

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    30
@publishedDeviceAbstraction

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    31
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    32

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    33
#ifndef __MAGICKEY_CHIPSET_API_H__

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    34
#define __MAGICKEY_CHIPSET_API_H__

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    35

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    36

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    37
// Include files

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    38
// Constants

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    39
/**

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    40
* Magic key press handling P&S Uid.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    41
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    42
const TUid KUidMagicKeyPress = {0x10204CE3};

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    43

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    44
/**

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    45
* Information was the MagicKey1 pressed when the key driver was started.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    46
* The keypad driver that is handling MagicKey1 have to publish the information.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    47
* @value one of TMagicKeyState enumerations.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    48
* @type RProperty::EInt

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    49
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    50
const TUint32 KMagicKey1Info = 0x00000001;

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    51

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    52
/**

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    53
* Information was the MagicKey2 pressed when the key driver was started.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    54
* The keypad driver that is handling MagicKey2 have to publish the information.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    55
* @value one of TMagicKeyState enumerations.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    56
* @type RProperty::EInt

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    57
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    58
const TUint32 KMagicKey2Info = 0x00000002;

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    59

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    60
/**

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    61
* Information was the MagicKey3 pressed when the key driver was started.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    62
* The keypad driver that is handling MagicKey3 have to publish the information.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    63
* @value one of TMagicKeyState enumerations.

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    64
* @type RProperty::EInt

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    65
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    66
const TUint32 KMagicKey3Info = 0x00000003;

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    67

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    68
// Macros

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    69
// Data types

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    70

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    71

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    72
/**

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    73
* Enums for checking the magic keys states

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    74
*/

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    75
enum TMagicKeyState

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    76
    {

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    77
    EMagicKeyUp,	// The magic key was not pressed when the key driver was started

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    78
    EMagicKeyDown	// The magic key was pressed when the key driver was started

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    79
    };

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    80

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    81
// Function prototypes

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    82
// Forward declarations

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    83
// Class declaration

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    84

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    85

d7a6bb4d51e7 adding magickey api on behalf of Daniel Rubio
victorp@symbian.org
parents:
diff changeset
    86
#endif // __MAGICKEY_CHIPSET_API_H__