wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/inc/wlanmgmtimpl.h
changeset 39 3d23268b50f6
parent 36 1c425781161e
equal deleted inserted replaced
36:1c425781161e 39:3d23268b50f6
    14 * Description:  ECom interface implementation definition
    14 * Description:  ECom interface implementation definition
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 /*
    18 /*
    19 * %version: 22 %
    19 * %version: 23 %
    20 */
    20 */
    21 
    21 
    22 #ifndef WLANMGMTIMPL_H
    22 #ifndef WLANMGMTIMPL_H
    23 #define WLANMGMTIMPL_H
    23 #define WLANMGMTIMPL_H
    24 
    24 
   378          */
   378          */
   379         virtual TInt GetExtendedConnectionSecurityMode(
   379         virtual TInt GetExtendedConnectionSecurityMode(
   380             TWlanConnectionExtentedSecurityMode& aMode );        
   380             TWlanConnectionExtentedSecurityMode& aMode );        
   381 
   381 
   382         /**
   382         /**
       
   383          * (From MWlanMgmtInterface)
   383          * Activate the extended notification service.
   384          * Activate the extended notification service.
   384          * 
   385          * 
   385          * After the client has enabled the notification service, it can
   386          * After the client has enabled the notification service, it can
   386          * receive asynchronous notifications from the server.
   387          * receive asynchronous notifications from the server.
   387          *
   388          *
   392         virtual void ActivateExtendedNotificationsL(
   393         virtual void ActivateExtendedNotificationsL(
   393             MWlanMgmtNotifications& aCallback,
   394             MWlanMgmtNotifications& aCallback,
   394             TUint aCallbackInterfaceVersion );
   395             TUint aCallbackInterfaceVersion );
   395 
   396 
   396         /**
   397         /**
       
   398          * (From MWlanMgmtInterface)
   397          * Create a virtual traffic stream.
   399          * Create a virtual traffic stream.
   398          *
   400          *
   399          * @param aStatus Status of the calling active object. On successful
   401          * @param aStatus Status of the calling active object. On successful
   400          *                completion contains KErrNone, otherwise one of the
   402          *                completion contains KErrNone, otherwise one of the
   401          *                system-wide error codes.
   403          *                system-wide error codes.
   410             const TWlanTrafficStreamParameters& aStreamParameters,
   412             const TWlanTrafficStreamParameters& aStreamParameters,
   411             TUint& aStreamId,
   413             TUint& aStreamId,
   412             TWlanTrafficStreamStatus& aStreamStatus );
   414             TWlanTrafficStreamStatus& aStreamStatus );
   413 
   415 
   414         /**
   416         /**
       
   417          * (From MWlanMgmtInterface)
   415          * Cancel an outstanding traffic stream creation request.
   418          * Cancel an outstanding traffic stream creation request.
   416          */
   419          */
   417         virtual void CancelCreateTrafficStream();
   420         virtual void CancelCreateTrafficStream();
   418 
   421 
   419         /**
   422         /**
       
   423          * (From MWlanMgmtInterface)
   420          * Delete a virtual traffic stream.
   424          * Delete a virtual traffic stream.
   421          *
   425          *
   422          * @param aStatus Status of the calling active object. On successful
   426          * @param aStatus Status of the calling active object. On successful
   423          *                completion contains KErrNone, otherwise one of the
   427          *                completion contains KErrNone, otherwise one of the
   424          *                system-wide error codes.
   428          *                system-wide error codes.
   427         virtual void DeleteTrafficStream(
   431         virtual void DeleteTrafficStream(
   428             TRequestStatus& aStatus,
   432             TRequestStatus& aStatus,
   429             TUint aStreamId );
   433             TUint aStreamId );
   430 
   434 
   431         /**
   435         /**
       
   436          * (From MWlanMgmtInterface)
   432          * Cancel an outstanding traffic stream deletion request.
   437          * Cancel an outstanding traffic stream deletion request.
   433          */
   438          */
   434         virtual void CancelDeleteTrafficStream();
   439         virtual void CancelDeleteTrafficStream();
   435 
   440 
   436         /**
   441         /**
       
   442          * (From MWlanMgmtInterface)
   437          * Initiate a roam to the given BSSID.
   443          * Initiate a roam to the given BSSID.
   438          *
   444          *
   439          * @param aStatus Status of the calling active object. On successful
   445          * @param aStatus Status of the calling active object. On successful
   440          *                completion contains KErrNone, otherwise one of the
   446          *                completion contains KErrNone, otherwise one of the
   441          *                system-wide error codes.
   447          *                system-wide error codes.
   445         virtual void DirectedRoam(
   451         virtual void DirectedRoam(
   446             TRequestStatus& aStatus,
   452             TRequestStatus& aStatus,
   447             const TWlanBssid& aBssid );
   453             const TWlanBssid& aBssid );
   448 
   454 
   449         /**
   455         /**
       
   456          * (From MWlanMgmtInterface)
   450          * Cancel an outstanding directed roam request.
   457          * Cancel an outstanding directed roam request.
   451          */
   458          */
   452         virtual void CancelDirectedRoam();
   459         virtual void CancelDirectedRoam();
   453 
   460 
   454         /**
   461         /**
   457          */
   464          */
   458         void ProtectedSetupComplete(
   465         void ProtectedSetupComplete(
   459             TInt aStatus );
   466             TInt aStatus );
   460 
   467 
   461         /**
   468         /**
       
   469          * (From MWlanMgmtInterface)
   462          * Start aggressive background scanning.
   470          * Start aggressive background scanning.
   463          * @param aInterval Scan interval for aggressive mode (in seconds).
   471          * @param aInterval Scan interval for aggressive mode (in seconds).
   464          *                  Valid range: 1-120 seconds.
   472          *                  Valid range: 1-120 seconds.
   465          */
   473          */
   466         virtual TInt StartAggressiveBgScan(
   474         virtual TInt StartAggressiveBgScan(
   467             TUint aInterval );
   475             TUint aInterval );
       
   476 
       
   477         /**
       
   478          * (From MWlanMgmtInterface)
       
   479          * Get the available WLAN IAPs.
       
   480          *
       
   481          * @param aCacheLifetime Defines how many seconds old cached results the client
       
   482          *                       is willing to accept. The valid is range is from 0 to
       
   483          *                       60 seconds. The value of -1 means the system default will
       
   484          *                       be used. The aCacheLifetime parameter has a meaning only
       
   485          *                       when the aMaxDelay parameter is zero.
       
   486          *                       Value will be changed to the actual value used by the
       
   487          *                       system.
       
   488          * @param aMaxDelay Maximum amount of seconds the client is willing to wait for
       
   489          *                  the availability results. The valid range is from 0 to 1200
       
   490          *                  seconds or KWlanInfiniteScanDelay. KWlanInfiniteScanDelay
       
   491          *                  will never cause a scan, but the request will be
       
   492          *                  completed when any other broadcast scan request is completed.
       
   493          *                  Value will be changed to the actual value used by the system.
       
   494          * @param aFilteredResults Whether availability is filtered based on signal strength.
       
   495                                    ETrue if filtering is allowed, EFalse if not.
       
   496          * @param aStatus Status of the calling active object. On successful
       
   497          *                completion contains KErrNone, otherwise one of the
       
   498          *                system-wide error codes.
       
   499          * @param aAvailableIaps Array of IAPs available.
       
   500          */
       
   501         virtual void GetAvailableIaps(
       
   502             TInt& aCacheLifetime,
       
   503             TUint& aMaxDelay,
       
   504             TBool aFilteredResults,
       
   505             TRequestStatus& aStatus,
       
   506             RArray<TWlanIapAvailabilityData>& aAvailableIaps );
   468 
   507 
   469 	protected: // Methods
   508 	protected: // Methods
   470 
   509 
   471         /**
   510         /**
   472          * (From MWLMNotify) Connection status has changed.
   511          * (From MWLMNotify) Connection status has changed.
   689             RArray<TUint>& aAvailableIaps,
   728             RArray<TUint>& aAvailableIaps,
   690             TInt& aCacheLifetime,
   729             TInt& aCacheLifetime,
   691             TUint& aMaxDelay );
   730             TUint& aMaxDelay );
   692 
   731 
   693         /**
   732         /**
       
   733          * C++ default constructor.
       
   734          * @param aCallback Callback interface to CWlanMgmtImpl.
       
   735          * @param aServer Interface to RWLMServer. 
       
   736          * @param aAvailableIaps Available IAPs are stored here.
       
   737          * @param aCacheLifetime how old cached results (in seconds) the client is willing to accept.
       
   738          * @param aMaxDelay maximum time the client is willing to wait for the scan results.
       
   739          * @param aFilteredResults Whether availability is filtered based on signal strength.
       
   740          */
       
   741         CWlanAvailableIapsRequest(
       
   742             CWlanMgmtImpl& aCallback,
       
   743             RWLMServer& aServer,
       
   744             RArray<TWlanIapAvailabilityData>& aAvailableIaps,
       
   745             TInt& aCacheLifetime,
       
   746             TUint& aMaxDelay,
       
   747             TBool aFilteredResults );
       
   748 
       
   749         /**
   694          * Destructor.
   750          * Destructor.
   695          */
   751          */
   696         virtual ~CWlanAvailableIapsRequest();
   752         virtual ~CWlanAvailableIapsRequest();
   697         
   753         
   698        // New methods
   754        // New methods
   731         CWlanMgmtImpl& iCallback;
   787         CWlanMgmtImpl& iCallback;
   732 
   788 
   733         // Interface to RWLMServer
   789         // Interface to RWLMServer
   734         RWLMServer& iServer;
   790         RWLMServer& iServer;
   735 
   791 
   736         // Handle to client storage for available IAPs
   792         // Handle to client storage for available IAP IDs for legacy methods.
   737 		RArray<TUint>& iPendingAvailableIaps;
   793         // Not owned by this pointer.
   738 		
   794         RArray<TUint>* iPendingAvailableIapIds;
       
   795 
       
   796         // Handle to client storage for available IAPs.
       
   797         // Not owned by this pointer.
       
   798         RArray<TWlanIapAvailabilityData>* iPendingAvailableIaps;
       
   799 
   739 		// Storage for available IAPs
   800 		// Storage for available IAPs
   740 		TWlmAvailableIaps iAvailableIaps;
   801 		TWlmAvailableIaps iAvailableIaps;
   741 		
   802 
   742 		// The package buffer needed for the asynchronous request
   803 		// The package buffer needed for the asynchronous request
   743 		TPckg<TWlmAvailableIaps> iAvailableIapsBuf;
   804 		TPckg<TWlmAvailableIaps> iAvailableIapsBuf;
   744 		
   805 		
   745 		// The package buffer needed for the asynchronous request
   806 		// The package buffer needed for the asynchronous request
   746 		TPckg<TInt> iCacheLifetimeBuf;
   807 		TPckg<TInt> iCacheLifetimeBuf;
   747 		
   808 		
   748 		// The package buffer needed for the asynchronous request
   809 		// The package buffer needed for the asynchronous request
   749 		TPckg<TUint> iMaxDelayBuf;
   810 		TPckg<TUint> iMaxDelayBuf;
   750 		
   811 		
       
   812 		// Whether availability is filtered based on signal strength.
       
   813 		TBool iFilteredResults;
   751     };
   814     };
   752 
   815 
   753 
   816 
   754 /**
   817 /**
   755 * Class for handling asynchronous Protected Setup requests.
   818 * Class for handling asynchronous Protected Setup requests.