wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/inc/wlanbgscanawscomms.h
--- a/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/inc/wlanbgscanawscomms.h Tue Feb 02 02:03:13 2010 +0200
+++ b/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/inc/wlanbgscanawscomms.h Fri Mar 19 10:03:22 2010 +0200
@@ -16,7 +16,7 @@
*/
/*
-* %version: 1 %
+* %version: 2 %
*/
#ifndef WLANBGSCANAWSCOMMS_H
@@ -40,30 +40,11 @@
NONSHARABLE_CLASS( CWlanBgScanAwsComms ) :
public CActive,
public MAwsBgScanProvider,
- public MWlanBgScanCommandListener
+ public MWlanBgScanCommandListener,
+ public MWlanBgScanAwsComms
{
public:
-
- /**
- * AWS commands.
- */
- enum TAwsCommand
- {
- EStart = 0,
- EStop,
- ESetPowerSaveMode,
- EAwsCommandMax //not a real command
- };
-
- /**
- * AWS message.
- */
- struct TAwsMessage
- {
- TAwsCommand iCmd;
- TInt iParameter;
- };
/**
* Two-phased constructor.
@@ -103,14 +84,13 @@
* @since S60 v5.2
*/
void SendOrQueueAwsCommand( TAwsMessage& aMessage );
-
+
/**
- * Whether AWS is present in system.
+ * Blocks calling thread until AWS is constructed.
*
* @since S60 v5.2
- * @return ETrue if present, EFalse if not
*/
- TBool IsAwsPresent();
+ //void WaitForAwsStartupToComplete();
private: // From CActive
@@ -169,9 +149,9 @@
static TInt AwsThreadEntryPoint( TAny* aThisPtr );
/**
- * Instantiate AWS ECOM Plugin.
+ * Instantiate and run AWS ECOM Plugin.
*/
- void InstantiateAwsPluginL();
+ void InstantiateAndRunAwsPluginL();
/**
* Send message to AWS.
@@ -194,9 +174,9 @@
CAwsEngineBase* iAws;
/**
- * Reference to AWS ECOM plugin implementation info.
+ * AWS ECOM plugin UID.
*/
- CImplementationInformation* iAwsImplInfo;
+ TInt iAwsImplUid;
/**
* Command Handler.
@@ -222,6 +202,16 @@
* If AWS instantiation was successful.
*/
TBool iAwsOk;
+
+ /**
+ * Synchronization object between WLAN Engine and AWS threads.
+ */
+ //RSemaphore iStartupLock;
+
+ /**
+ * Handle to WLAN Engine thread.
+ */
+ RThread iWlanEngineThread;
};