bluetooth/btstack/linkmgr/MBtHostControllerEventInternalNotifier.h
changeset 0 29b1cd4cb562
child 25 99439b07e980
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetooth/btstack/linkmgr/MBtHostControllerEventInternalNotifier.h	Fri Jan 15 08:13:17 2010 +0200
@@ -0,0 +1,72 @@
+// Copyright (c) 2003-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:
+//
+
+#ifndef _MBTHOSTCONTROLEREVENTINTERNALNOTIFIER_H_
+#define _MBTHOSTCONTROLEREVENTINTERNALNOTIFIER_H_
+
+// provides the conduit for propagating events through the SAPs and the ConnectionsManager
+// the methods are void, non-leaving to encourage the fact that the HCIFacade will not
+// have implementation of policy
+// it is up to the notifiees to instruct the HCIFacade to issue commands (or not)
+//	in case of an error
+
+#include <bttypes.h>
+#include <btdevice.h>
+#include <bluetooth/hci/hcierrors.h>
+#include <bluetooth/hci/hcitypes.h>
+
+class MPINCodeResponseHandler;
+class MLinkKeyResponseHandler;
+class MIOCapabilityResponseHandler;
+class MNumericComparisonResponseHandler;
+class MPasskeyResponseHandler;
+class MOOBDataResponseHandler;
+class TBTDevAddr;
+class TBTFeatures;
+class TBTConnect;
+
+class MBtHostControllerEventInternalNotifier
+	{
+public:
+	virtual void ConnectionComplete(THCIErrorCode /*aErr*/, const TBTConnect& /*aConn*/) {};
+	virtual void ConnectionRequest(const TBTConnect& /*aConn*/) {};
+	virtual void Disconnection(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, THCIErrorCode /*aResult*/) {};
+	virtual void CompletedPackets(THCIConnHandle /*aConnH*/, TUint16 /*aNumPackets*/) {};
+	virtual void AuthenticationComplete(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/) {};
+	virtual void EncryptionChange(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, TBool /*aEncrypted*/) {};
+	virtual void ACLDataReceived(THCIConnHandle /*aConnH*/, TUint8 /*aFlag*/, const TDesC8& /*aData*/) {};
+	virtual void SCODataReceived(THCIConnHandle /*aConnH*/, const TDesC8& /*aData*/) {};
+
+	virtual void PinRequest(const TBTDevAddr& /*aBDAddr*/, MPINCodeResponseHandler& /*aRequester*/) {};
+	virtual void NewLinkKey(const TBTDevAddr& /*aBDAddr*/, const TBTLinkKey& /*aLinkKey*/, THCILinkKeyType /* aLinkKeyType */) {};
+	virtual void LinkKeyRequest(const TBTDevAddr& /*aBDAddr*/, MLinkKeyResponseHandler& /*aRequester*/) {};
+
+	virtual void ReadRemoteVersionInfoComplete(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, const TBTDevRemoteHwVersion& /*aVer*/) {};
+	virtual void ReadRemoteSupportedFeaturesComplete(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, const TBTFeatures& /*aBitMask*/) {};
+	virtual void ReadRemoteExtendedFeaturesComplete(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/,  TUint64 /*aBitMask*/, TUint8 /* aPageNumber */, TUint8 /* aMaximimPageNumber */) {};
+	virtual void PacketTypeChange(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, TUint16 /*aNewPacket*/) {};
+	virtual void MaxSlotsChange(THCIConnHandle /*aConnH*/, TUint8 /*aSlots*/) {};
+
+	virtual void ModeChange(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, TBTLinkMode /*aMode*/, TBasebandTime /*aInterval*/) {};
+	virtual void RoleChange(THCIErrorCode /*aErr*/, const TBTDevAddr& /*aAddr*/, TBTBasebandRole /*aRole*/) {};
+	virtual void WriteLinkPolicySettingsCompleteEvent(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/) {};
+
+	virtual void ClockOffset(THCIErrorCode /*aErr*/, THCIConnHandle /*aConnH*/, TBasebandTime /*aClockOffset*/) {};
+	virtual void RemoteName(THCIErrorCode /*aErr*/, const TBTDevAddr& /*aAddr*/, const TBTDeviceName8& /*aName*/) {};
+
+	virtual void SimplePairingComplete(const TBTDevAddr& /*aBDAddr*/, THCIErrorCode /*aErr*/) {};
+	};
+
+#endif //_MBTHOSTCONTROLEREVENTINTERNALNOTIFIER_H_