bluetooth/btstack/linkmgr/linkmuxer.h
changeset 32 f72906e669b4
parent 0 29b1cd4cb562
--- a/bluetooth/btstack/linkmgr/linkmuxer.h	Wed Jun 23 19:28:39 2010 +0300
+++ b/bluetooth/btstack/linkmgr/linkmuxer.h	Tue Jul 06 15:33:04 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2001-2010 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"
@@ -31,7 +31,7 @@
 class CHCICmdQController;
 
 /**
-	Regulates the issuing  of buffers send down the same channel.
+	Regulates the issuing of buffers sent down the same channel.
 
 	The mux decides and notifies the appropriate Q to send data when the wire
 	is free. The mux will need to be fed with 'the wire is free' events and 
@@ -43,17 +43,22 @@
 	{
 public:
 	static CLinkMuxer* NewL(CLinkMgrProtocol& aLinkMgrProtocol, CHCIFacade& aHCIFacade);
-	void ObtainHostControllerBufferSizeL();
+	
 	void RecordHostControllerToHostFlowControl(TBool aFlowFlag);
-	CACLDataQController* HandleLocalReadBufferSizeResult(TUint16 aAclMaxLen,
-      TUint8 /*aScoMaxLen*/,TUint16 aNoACL,TUint16 /*aNoSCO*/);
+	CACLDataQController* HandleLocalReadBufferSizeResult(TUint16 aAclMaxLen, TUint8 /*aScoMaxLen*/, 
+														TUint16 aNoACL, TUint16 /*aNoSCO*/);
 	TInt ACLPacketMTU() const;
 
-	CACLDataQController& DataQController() const {return *iDataController;};
+	CACLDataQController& DataQController() const {return *iDataController;}
+	
 	void ChannelsFree(THCITransportChannel aChannel); // notification of free channels
 	void ChannelsClosed(THCITransportChannel aChannel); // notification of closed channels
-	static TInt TryToSendCallBackStatic(TAny* aCLinkMuxer);
+	
 	void TryToSend();	// request to send on certain channels
+	
+	TFlowControlMode FlowControlMode() const {return iFlowControlMode;}
+	void ResetFlowControlMode();
+	
 #ifdef STACK_SCO_DATA
 	TBool CanWriteSCOData();
 #endif
@@ -65,6 +70,8 @@
 	void ConstructL();
 	CLinkMuxer(CLinkMgrProtocol& aLinkMgrProtocol, CHCIFacade& aHCIFacade);
 	void DoSend(/*THCITransportChannel aChannel*/);	// request to send on certain channels
+	static TInt TryToSendCallBackStatic(TAny* aCLinkMuxer);
+	
 private:
 // owned resources
 	CHCICmdQController*	iCommandController;
@@ -73,7 +80,8 @@
 // non-owned resources
 	CHCIFacade&				iHCIFacade;
 	THCITransportChannel	iChannelsFree;
-    TFlowControlMode		iFlowControlMode;
+	TFlowControlMode		iFlowControlMode;
+	TBool					iCtrlerToHostSet;
 	CLinkMgrProtocol&		iLinkMgrProtocol;
 	TInt					iACLPacketMTU;
 	};