--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/wlan_bearer/wlanldd/wlan_common/osa_common/inc/osa.h Tue Feb 02 02:03:13 2010 +0200
@@ -0,0 +1,183 @@
+/*
+* Copyright (c) 2007-2009 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"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: WlanOsa declaration
+*
+*/
+
+/*
+* %version: 7 %
+*/
+
+#ifndef WLANOSA_H
+#define WLANOSA_H
+
+#include <wlanosa.h>
+#include <wlanosaext.h>
+#include "wlanobject.h"
+
+struct WlanOsaImpl;
+
+/**
+ * concrete osa implementation
+ *
+ *
+ * @lib wlanosa.lib
+ * @since S60 v3.2
+ */
+class WlanOsa :
+ public MWlanOsa,
+ public MWlanOsaExt,
+ public WlanObject
+ {
+public:
+
+ /**
+ * dtor
+ *
+ * @since S60 v3.2
+ */
+ virtual ~WlanOsa();
+
+ /**
+ * ctor
+ *
+ * @since S60 v3.2
+ */
+ WlanOsa();
+
+ /**
+ * Initializes the object instance.
+ * Note! Needs to be executed successfully after object instance
+ * construction to be able to use the instance.
+ *
+ * @param aUseCachedMemory ETrue if cached interconnect memory shall be used
+ * EFalse otherwise
+ * @param aAllocationUnit allocation unit size for interconnect memory in
+ * bytes
+ * @param aDfcQueue Pointer to the DFC queue to use
+ * @return ETrue when successful
+ * EFalse otherwise
+ */
+ TBool Initialize(
+ TBool aUseCachedMemory,
+ TInt aAllocationUnit,
+ void* aDfcQueue );
+
+// from base class MWlanOsa
+
+ /**
+ * From MWlanOsa.
+ * Memory allocation. Correct alignment guaranteed
+ *
+ * @since S60 v3.2
+ * @param aOsaMemoryType memory type to be allocated
+ * @param aSize size of the buffer to be allocated in bytes. Must be
+ * positive otherwise the allocation fails
+ * @param aFlags bitmask to fine-tune behavior of the allocation
+ * bit 0 - set: zero stamp allocated memory
+ * @return begin of the allocated memory, NULL upon failure
+ */
+ virtual void* Alloc( TOsaMemoryType aOsaMemoryType,
+ TInt aSize,
+ TUint aFlags );
+
+ /**
+ * From MWlanOsa.
+ * Releases memory allocated by the Alloc method
+ *
+ * @since S60 v3.2
+ * @param aPtr begin of the buffer to be freed
+ */
+ virtual void Free( void* aPtr );
+
+ /**
+ * From MWlanOsa.
+ * Creates DFC context object
+ *
+ * @since S60 v3.2
+ * @return DFC context object, NULL upon failure
+ */
+ virtual MWlanDfc* DfcCreate();
+
+ /**
+ * From MWlanOsa.
+ * Destroys DFC context object
+ *
+ * @since S60 v3.2
+ * @param aWlanDfc DFC context object to be destroyed
+ */
+ virtual void DfcDestroy( MWlanDfc* aWlanDfc );
+
+ /**
+ * From MWlanOsa.
+ * Creates timer context object
+ *
+ * @since S60 v3.2
+ * @return timer context object, NULL upon failure
+ */
+ virtual MWlanTimer* TimerCreate();
+
+ /**
+ * From MWlanOsa.
+ * Destroys timer context object
+ *
+ * @since S60 v3.2
+ * @param aWlanTimer timer context object to be destroyed
+ */
+ virtual void TimerDestroy( MWlanTimer* aWlanTimer );
+
+// from base class MWlanOsaExt
+
+ /**
+ * From MWlanOsaExt.
+ * Acquires the software system lock
+ *
+ * @since S60 v3.2
+ */
+ virtual void MutexAcquire();
+
+ /**
+ * From MWlanOsaExt.
+ * Releases the software system lock
+ *
+ * @since S60 v3.2
+ */
+ virtual void MutexRelease();
+
+protected:
+
+private:
+
+ // Prohibit copy constructor.
+ WlanOsa( const WlanOsa& );
+ // Prohibit assigment operator.
+ WlanOsa& operator= ( const WlanOsa& );
+
+ inline WlanOsaImpl& Pimpl();
+
+private: // data
+
+ /**
+ * implementation
+ * Own.
+ */
+ WlanOsaImpl* iPimpl;
+
+ /** pointer to DFC queue. Not own */
+ void* iDfcQueue;
+ };
+
+#include "osa.inl"
+
+#endif // WLANOSA_H