1 /* |
1 /* |
2 * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of the License "Eclipse Public License v1.0" |
5 * under the terms of the License "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
14 * Description: Declaration of the WlanActiveModePowerModeMgr class |
14 * Description: Declaration of the WlanActiveModePowerModeMgr class |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 /* |
18 /* |
19 * %version: 9 % |
19 * %version: 10 % |
20 */ |
20 */ |
21 |
21 |
22 #ifndef WLAN_ACTIVE_MODE_POWER_MODE_MGR |
22 #ifndef WLAN_ACTIVE_MODE_POWER_MODE_MGR |
23 #define WLAN_ACTIVE_MODE_POWER_MODE_MGR |
23 #define WLAN_ACTIVE_MODE_POWER_MODE_MGR |
24 |
24 |
25 #include "umacpowermodemgrbase.h" |
25 #include "umacpowermodemgrbase.h" |
26 |
26 |
27 class WlanContextImpl; |
27 class WlanContextImpl; |
28 |
28 |
|
29 |
29 /** |
30 /** |
30 * Class implementing infrastructure mode dynamic power mode management |
31 * Class implementing infrastructure mode dynamic power mode management |
31 * algorithm for Active mode (CAM) |
32 * algorithm for Active mode (CAM) |
32 */ |
33 */ |
33 class WlanActiveModePowerModeMgr : public WlanPowerModeMgrBase |
34 class WlanActiveModePowerModeMgr : public WlanPowerModeMgrBase |
34 { |
35 { |
35 |
36 |
|
37 public: |
|
38 /** |
|
39 * Default Rx/Tx frame count threshold for considering change to Light |
|
40 * PS mode. |
|
41 * This value is used if another value hasn't been provided |
|
42 */ |
|
43 static const TUint KDefaultToLightPsFrameThreshold = 1; |
|
44 |
36 public: |
45 public: |
37 |
46 |
38 /** Ctor */ |
47 /** Ctor */ |
39 WlanActiveModePowerModeMgr(); |
48 WlanActiveModePowerModeMgr(); |
40 |
49 |
60 * |
69 * |
61 * @since S60 3.1 |
70 * @since S60 3.1 |
62 * @param aCtxImpl global statemachine context |
71 * @param aCtxImpl global statemachine context |
63 * @param aQueueId Id of the queue/AC via which the frame will be transmitted |
72 * @param aQueueId Id of the queue/AC via which the frame will be transmitted |
64 * @param aEtherType Ethernet type of the frame |
73 * @param aEtherType Ethernet type of the frame |
|
74 * @param aDot11FrameType 802.11 frame type |
65 * @param aIgnoreThisFrame shall this frame be ignored from dynamic power |
75 * @param aIgnoreThisFrame shall this frame be ignored from dynamic power |
66 * mode management perspective |
76 * mode management perspective |
67 * @return To which power management mode to change; if any at all |
77 * @return To which power management mode to change; if any at all |
68 */ |
78 */ |
69 virtual TPowerMgmtModeChange OnFrameTx( |
79 virtual TPowerMgmtModeChange OnFrameTx( |
70 WlanContextImpl& aCtxImpl, |
80 WlanContextImpl& aCtxImpl, |
71 WHA::TQueueId aQueueId, |
81 WHA::TQueueId aQueueId, |
72 TUint16 aEtherType, |
82 TUint16 aEtherType, |
|
83 T802Dot11FrameControlTypeMask aDot11FrameType, |
73 TBool aIgnoreThisFrame ); |
84 TBool aIgnoreThisFrame ); |
74 |
85 |
75 /** |
86 /** |
76 * To be called when accepting an Rx frame |
87 * To be called when accepting an Rx frame |
77 * |
88 * |