1 /* |
1 /* |
2 * ============================================================================ |
2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * Name : btnotificationmanager.h |
3 * All rights reserved. |
4 * Part of : bluetoothengine / btnotif |
4 * This component and the accompanying materials are made available |
5 * Description : Class for managing user notification and query objects, and for serializing access to the notification server. |
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 * |
8 * |
7 * Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies). |
9 * Initial Contributors: |
8 * All rights reserved. |
10 * Nokia Corporation - initial contribution. |
9 * This component and the accompanying materials are made available |
|
10 * under the terms of "Eclipse Public License v1.0" |
|
11 * which accompanies this distribution, and is available |
|
12 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
13 * |
11 * |
14 * Initial Contributors: |
12 * Contributors: |
15 * Nokia Corporation - initial contribution. |
|
16 * |
13 * |
17 * Contributors: |
14 * Description: Class for managing user notification and query objects, |
18 * Nokia Corporation |
15 * and for serializing access to the notification server. |
19 * ============================================================================ |
16 * |
20 * Template version: 4.2 |
|
21 */ |
17 */ |
22 |
18 |
23 #ifndef BTNOTIFICATIONMANAGER_H |
19 #ifndef BTNOTIFICATIONMANAGER_H |
24 #define BTNOTIFICATIONMANAGER_H |
20 #define BTNOTIFICATIONMANAGER_H |
25 |
21 |
72 * @param aPriority The priority of the notification. EPriorityHigh means |
68 * @param aPriority The priority of the notification. EPriorityHigh means |
73 * that the note is put to the front of the queue. |
69 * that the note is put to the front of the queue. |
74 * EPriorityStandard means that it is appended to the end, |
70 * EPriorityStandard means that it is appended to the end, |
75 * and should be used for most notes. EPriorityLow is not |
71 * and should be used for most notes. EPriorityLow is not |
76 * used yet. |
72 * used yet. |
77 * @return Error code. |
|
78 */ |
73 */ |
79 TInt QueueNotification( CBluetoothNotification* aNotification, |
74 void QueueNotificationL( CBluetoothNotification* aNotification, |
80 TNotificationPriority aPriority = EPriorityStandard ); |
75 TNotificationPriority aPriority = EPriorityStandard ); |
81 |
76 |
82 private: |
77 private: |
83 |
78 |
84 CBTNotificationManager( const CBTNotifServer* aServer ); |
79 CBTNotificationManager( const CBTNotifServer* aServer ); |
105 * |
100 * |
106 * @since Symbian^4 |
101 * @since Symbian^4 |
107 */ |
102 */ |
108 void CheckIdle(); |
103 void CheckIdle(); |
109 |
104 |
110 /** |
|
111 * Callback function for asynchronous processing of |
|
112 * queued notification requests. |
|
113 * |
|
114 * @since Symbian^4 |
|
115 * @param aPtr Pointer to notification manager instance. |
|
116 */ |
|
117 static TInt AsyncCallback( TAny* aPtr ); |
|
118 |
|
119 private: // data |
105 private: // data |
120 |
106 |
121 /** |
107 /** |
122 * The queue of notifications to be shown to the user. |
108 * The queue of notifications to be shown to the user. |
123 */ |
109 */ |
124 RPointerArray<CBluetoothNotification> iNotificationQ; |
110 RPointerArray<CBluetoothNotification> iNotificationQ; |
125 |
|
126 /** |
|
127 * The queue of spare notifications. |
|
128 */ |
|
129 RPointerArray<CBluetoothNotification> iUnusedQ; |
|
130 |
|
131 /** |
|
132 * Callback for asynchronous processing. |
|
133 * Own. |
|
134 */ |
|
135 CAsyncCallBack* iAsyncCb; |
|
136 |
111 |
137 /** |
112 /** |
138 * Pointer to our parent. |
113 * Pointer to our parent. |
139 * Not own. |
114 * Not own. |
140 */ |
115 */ |