wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/EtherCardApi.h
changeset 22 c6a1762761b8
parent 0 c40eb8fe8501
child 43 d3d7683d16f5
--- a/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/EtherCardApi.h	Fri May 14 17:41:09 2010 +0300
+++ b/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/EtherCardApi.h	Thu May 27 14:33:33 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -16,7 +16,7 @@
 */
 
 /*
-* %version: 12 %
+* %version: 13 %
 */
 
 #if !defined(__ETHERAPI_H__)
@@ -69,6 +69,7 @@
 	    {
 	    EControlFastAllocTxBuffer = 0x0F000000,
 	    EControlFastAddTxFrame,
+	    EControlFastGetRxFrame
 	    };
 	
 public:
@@ -119,12 +120,9 @@
     * is able to access the memory.
     *
     * @since S60 3.1
-    * @param aFrameXferBlock FrameXferBlock to be initialized by 
-    *        the device driver
     * @return KErrNone on success, any other on failure
     */
-    inline TInt InitialiseBuffers( 
-        RFrameXferBlockProtocolStack*& aFrameXferBlock );
+    inline TInt InitialiseBuffers();
 
     /**
     * Unmap memory mapped by InitiliazeBuffers method from the client 
@@ -183,6 +181,21 @@
 	 */
 	inline TBool AddTxFrame( TDataBuffer* aPacket );
 	
+    /**
+     * Gets the highest priority frame (contained in a buffer allocated from
+     * the shared memory) from the Rx queues.
+     * Optionally frees the memory associated to a previously received frame. 
+     * 
+     * @param aFrameToFree Previously received frame which can now be freed.
+     *        NULL if nothing to free.
+     * @return Pointer to the Rx frame to be handled next.
+     *         NULL, if there are no frames available. If NULL is returned
+     *         the client should re-issue the asynchronous frame Rx request
+     *         (i.e. RequestFrame())
+     */ 
+	inline TDataBuffer* GetRxFrame( TDataBuffer* aFrameToFree );
+	
+	
 #ifndef __KERNEL_MODE__
 private:
     /** handle to kernel side shared memory chunk */