telephonyprotocols/rawipnif/version1/inc/BcaController.h
branchRCL_3
changeset 65 630d2f34d719
parent 61 17af172ffa5f
child 66 07a122eea281
--- a/telephonyprotocols/rawipnif/version1/inc/BcaController.h	Thu Aug 19 11:03:36 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,142 +0,0 @@
-// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "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:
-// Defines the interface to the BCA & flow control.
-// 
-//
-
-/**
- @file 
-*/
-
-#ifndef BCACONTROLLER_H
-#define BCACONTROLLER_H
-
-#include <e32base.h>
-#include <c32comm.h>
-
-#include "MControllerObserver.h"
-#include "bttlog.h"
-#include "Constants.h"
-
-#ifdef RAWIP_HEADER_APPENDED_TO_PACKETS
-#include "IPTagHeader.h"
-#endif // RAWIP_HEADER_APPENDED_TO_PACKETS
-
-class CBttLogger;
-
-/** 
-@internalComponent 
-*/	
-class CBcaController : public CBase
-	{
-public:
-	CBcaController(MControllerObserver& aObserver, CBttLogger* aTheLogger);
-	void BaseConstructL();
-	~CBcaController();
-
-public: // Flow Control
-	void UpdateInternalFlowFlag(TFlowControl aValue);
-	void UpdateContextStateFlag(TBool aValue);
-	TBool IsTxPossible();
-
-public:
-	virtual void StartL() = 0;
-	virtual void Stop(TInt aError = KErrNone) = 0;
-
-#ifdef RAWIP_HEADER_APPENDED_TO_PACKETS
-public: //tag headers
-	void SetType(TUint16 aType);
-	void AddHeader(TDes8& aDes);
-	TUint16 RemoveHeader(RMBufChain& aPdu);
-#endif // RAWIP_HEADER_APPENDED_TO_PACKETS
-
-public:  // Process Down/Up stack data packets 
-	void Process(TDesC8& aPdu);
-	TInt Send(RMBufChain& aPdu);
-	void SendComplete();
-	// Get the NIF reference.
-	inline MControllerObserver& GetObserver();
-protected:
-	virtual void BcaSend(RMBufChain& aPdu) = 0;
-	virtual void BcaProcess(TDesC8& aPdu) = 0;
-	virtual void BcaSendComplete() = 0;
-	virtual TInt BcaSendBufferLength() = 0;
-	
-protected:
-	enum TSendState
-		{
-		EIdle,
-		ESending,
-		EShuttingDown
-		};
-
-	enum TInitialisationState
-		{
-		EStart,
-		EBcaController,
-		EInitialised
-		};
-
-	inline TInt GetSendState();
-	inline void SendState(TSendState aState);
-	
-private: // Flow Control
-	void ResumeSending();
-	//Buffer control
-	TBool IsSendQueueEmpty();
-	TBool IsSendQueueFull();
-	void AppendToSendQueue(RMBufChain& aPdu);
-	TBool RemoveFromSendQueue(RMBufChain& aPdu);
-	void EmptySendQueue();
-	
-private: // Unowned data.
-    MControllerObserver& iObserver;
-protected:
-	CBttLogger* iTheLogger;
-	
-private:
-	// Flow control flags
-	TFlowControl iTxFlowControl;
-	TBool iTxContextActive;
-	TSendState iSendState;
-
-	/** The internal packet buffer */
-	RMBufPktQ iSendQueue;
-	/** The maximum number of packets that we want in an internal queue */
-	TInt iMaxSendQueueLen;
-	/** Current number of packets in the internal packet buffer */
-	TInt iNumPacketsInSendQueue;
-
-#ifdef RAWIP_HEADER_APPENDED_TO_PACKETS
-	CIPTagHeader* iIPTagHeader;
-#endif // RAWIP_HEADER_APPENDED_TO_PACKETS
-	};
-
-void CBcaController::SendState(TSendState aState)
-	{
-	iSendState = aState;
-	}
-
-TInt CBcaController::GetSendState()
-	{
-	return iSendState;
-	}
-
-
-MControllerObserver& CBcaController::GetObserver()
-	{
-	return iObserver;
-	}
-
-#endif // BCACONTROLLER_H