diff -r 000000000000 -r 7f656887cf89 libraries/btserial/src/connection/btservice.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libraries/btserial/src/connection/btservice.h Wed Jun 23 15:52:26 2010 +0100 @@ -0,0 +1,74 @@ +// 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: +// Accenture - modified for fshell's btincomingserial.dll +// +// Description: +// Name : CBtService.h +// Part of : ex_btsocket +// Created : 17/11/2004 by Shane Kearns +// Server "smart connector" class +// Version : +// + +#ifndef CBTSERVICE_H +#define CBTSERVICE_H + +#include +#include +#include + +class CBluetoothIncomingSerialConnection; + +/** +This class implements a simple bluetooth application service +Its responsibility is to advertise and accept incoming bluetooth connections +*/ +NONSHARABLE_CLASS(CBtService) : public CBase, MBluetoothSocketNotifier + { + public: + static CBtService* NewL(const TUUID& aServiceUUID, + RSdp& aSdpSession, + RSocketServ& aSocketServer, + CBluetoothIncomingSerialConnection& aOwner, + TUint aProtocol, + const TBTServiceSecurity* aSecurity=NULL); + ~CBtService(); + + void AcceptConnection(CBluetoothSocket& aBlankSocket); + private: + CBtService(RSocketServ& aSocketServer, + CBluetoothIncomingSerialConnection& aOwner, + TUint aProtocol + ); + void ConstructL(const TUUID& aServiceUUID, + RSdp& aSdpSession, + const TBTServiceSecurity* aSecurity=NULL); + //Virtual functions from MBluetoothSocketNotifier + virtual void HandleConnectCompleteL(TInt aErr); + virtual void HandleAcceptCompleteL(TInt aErr); + virtual void HandleShutdownCompleteL(TInt aErr); + virtual void HandleSendCompleteL(TInt aErr); + virtual void HandleReceiveCompleteL(TInt aErr); + virtual void HandleIoctlCompleteL(TInt aErr); + virtual void HandleActivateBasebandEventNotifierCompleteL(TInt aErr, TBTBasebandEventNotification& aEventNotification); + + //Data members + RSocketServ& iSocketServer; + CBluetoothSocket *iAcceptorSocket; + CBluetoothSocket *iConnectionSocket; //not owned + RSdpDatabase iServiceRecord; + TSdpServRecordHandle iServiceRecordHandle; + CBluetoothIncomingSerialConnection& iOwner; + TUint iProtocol; + }; + +#endif //CBTSERVICE_H