CBluetoothSocket Class Reference

#include <bt_sock.h>

Link against: bluetooth.lib

class CBluetoothSocket : public CBase

Inherits from

  • CBluetoothSocket
    Public Member Functions
    ~CBluetoothSocket()
    IMPORT_C TIntAccept(CBluetoothSocket &)
    IMPORT_C TIntAccept(CBluetoothSocket &, TDes8 &)
    IMPORT_C TIntActivateBasebandEventNotifier(TUint32)
    IMPORT_C TIntActivateParkRequester()
    IMPORT_C TIntActivateSniffRequester()
    IMPORT_C TIntAllowLowPowerModes(TUint32)
    IMPORT_C TIntAllowRoleSwitch()
    IMPORT_C voidAsyncDelete()
    IMPORT_C TBoolAutomaticSniffMode()
    RBTBaseband &BTBaseband()
    CBTBasebandManager &BTBasebandManager()
    IMPORT_C TIntBind(TSockAddr &)
    IMPORT_C voidCancelAccept()
    IMPORT_C voidCancelAll()
    IMPORT_C voidCancelBasebandEventNotifier()
    IMPORT_C voidCancelConnect()
    IMPORT_C voidCancelIoctl()
    IMPORT_C TIntCancelLowPowerModeRequester()
    IMPORT_C voidCancelRead()
    IMPORT_C voidCancelRecv()
    IMPORT_C voidCancelSend()
    IMPORT_C voidCancelWrite()
    IMPORT_C TIntConnect(TBTSockAddr &)
    IMPORT_C TIntConnect(TBTSockAddr &, const TDesC8 &, TDes8 &)
    IMPORT_C TIntConnect(TBTSockAddr &, TUint16)
    IMPORT_C TIntGetDisconnectData(TDes8 &)
    IMPORT_C TIntGetOpt(TUint, TUint, TDes8 &)
    IMPORT_C TIntGetOpt(TUint, TUint, TInt &)
    voidHandleAcceptCompleteL(TInt)
    voidHandleActivateBasebandEventNotifierCompleteL(TInt, TBTBasebandEventNotification)
    voidHandleConnectCompleteL(TInt)
    voidHandleIoctlCompleteL(TInt)
    voidHandleReceiveCompleteL(TInt)
    voidHandleSendCompleteL(TInt)
    voidHandleShutdownCompleteL(TInt)
    IMPORT_C TIntInfo(TProtocolDesc &)
    IMPORT_C TIntIoctl(TUint, TUint, TDes8 *)
    IMPORT_C TIntIoctl(TUint, TDes8 *, TUint)
    IMPORT_C TIntListen(TUint)
    IMPORT_C TIntListen(TUint, const TDesC8 &)
    IMPORT_C TIntListen(TUint, TUint16)
    IMPORT_C voidLocalName(TSockAddr &)
    IMPORT_C TUintLocalPort()
    IMPORT_C TIntName(TName &)
    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint)
    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint, RConnection &)
    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &, RSocketServ &, const TDesC &)
    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &, RSocketServ &)
    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &, RSocketServ &, RSocket &)
    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint)
    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint, RConnection &)
    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &, RSocketServ &, const TDesC &)
    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &, RSocketServ &)
    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &, RSocketServ &, RSocket &)
    MBluetoothSocketNotifier &Notifier()
    IMPORT_C TIntPhysicalLinkState(TUint32 &)
    IMPORT_C TIntPreventLowPowerModes(TUint32)
    IMPORT_C TIntPreventRoleSwitch()
    IMPORT_C TIntRead(TDes8 &)
    IMPORT_C TIntRecv(TDes8 &, TUint)
    IMPORT_C TIntRecv(TDes8 &, TUint, TSockXfrLength &)
    IMPORT_C TIntRecvFrom(TDes8 &, TSockAddr &, TUint)
    IMPORT_C TIntRecvFrom(TDes8 &, TSockAddr &, TUint, TSockXfrLength &)
    IMPORT_C TIntRecvOneOrMore(TDes8 &, TUint, TSockXfrLength &)
    IMPORT_C voidRemoteName(TSockAddr &)
    IMPORT_C TIntRequestChangeSupportedPacketTypes(TUint16)
    IMPORT_C TIntRequestMasterRole()
    IMPORT_C TIntRequestSlaveRole()
    IMPORT_C TIntSend(const TDesC8 &, TUint)
    IMPORT_C TIntSend(const TDesC8 &, TUint, TSockXfrLength &)
    IMPORT_C TIntSendTo(const TDesC8 &, TSockAddr &, TUint)
    IMPORT_C TIntSendTo(const TDesC8 &, TSockAddr &, TUint, TSockXfrLength &)
    IMPORT_C TIntSetAutomaticSniffMode(TBool)
    IMPORT_C TIntSetAutomaticSniffMode(TBool, TInt)
    IMPORT_C TIntSetLocalPort(TInt)
    IMPORT_C voidSetNotifier(MBluetoothSocketNotifier &)
    IMPORT_C TIntSetOpt(TUint, TUint, TInt)
    IMPORT_C TIntSetOpt(TUint, TUint, const TDesC8 &)
    IMPORT_C TIntSetOption(TUint, TUint, const TDesC8 &)
    IMPORT_C TIntShutdown(RSocket::TShutdown)
    IMPORT_C TIntShutdown(RSocket::TShutdown, const TDesC8 &, TDes8 &)
    RSocket &Socket()
    RSocketServ &SocketServer()
    IMPORT_C TIntTransfer(RSocketServ &, const TDesC &)
    IMPORT_C TIntWrite(const TDesC8 &)
    Inherited Functions
    CBase::CBase()
    CBase::Delete(CBase *)
    CBase::Extension_(TUint,TAny *&,TAny *)
    CBase::operator new(TUint)
    CBase::operator new(TUint,TAny *)
    CBase::operator new(TUint,TLeave)
    CBase::operator new(TUint,TLeave,TUint)
    CBase::operator new(TUint,TUint)
    CBase::~CBase()

    Detailed Description

    This allows Bluetooth ACL socket-based services to be run.

    It allows all user-plane data flow to occur, plus control-plane Bluetooth baseband modification capabilities.

    For a more detailed description of RBTBaseband functionality see the class and function documentation for RBTPhysicalLinkAdapter.

    This class doesn't provide the functionality to directly activate Active mode (this is implementated in class RBTPhysicalLinkAdapter.)

    See also: RBTPhysicalLinkAdapter::ActivateActiveRequester() Explicit Active mode requests are made automatically when using the Automatic Sniff Requester utility provided by this class. CBluetoothSocket::SetAutomaticSniffModeRBTPhysicalLinkAdapter

    Constructor & Destructor Documentation

    ~CBluetoothSocket ( )

    IMPORT_C~CBluetoothSocket()

    Destructor

    Cancels any outstanding Bluetooth socket functions and closes the socket. Note sockets should be closed or shutdown before destructor is called.

    Member Function Documentation

    Accept ( CBluetoothSocket & )

    IMPORT_C TIntAccept(CBluetoothSocket &aBlankSocket)

    Accepts a connection from a remote Bluetooth socket.

    The call extracts the first pending connection on a queue of sockets, the queue size being previously specified by Listen(). On successful completion the blank socket is given the handle of the new socket and it may then be used to transfer data. After completion the accept socket may be used to make further connections with new blank sockets (see Open() on how to open a blank socket).

    See also: RSocket::Accept(CBluetoothSocket& aBlankSocket)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleAcceptCompleteL(TInt aErr)

    ParameterDescription
    aBlankSocketA socket opened as a blank socket.

    Returns: KErrNone if the connection is established. KErrInUse if a connection already exists.

    Accept ( CBluetoothSocket &, TDes8 & )

    IMPORT_C TIntAccept(CBluetoothSocket &aBlankSocket,
    TDes8 &aConnectData
    )

    Reserved for future.

    ParameterDescription
    aBlankSocketa socket opened as a blank socket.
    aConnectDataData that may be received in connection.

    Returns: KErrNone if the connection is established. KErrInUse if a connection already exists.

    ActivateBasebandEventNotifier ( TUint32 )

    IMPORT_C TIntActivateBasebandEventNotifier(TUint32aEventTypes)

    Set up notification of baseband events

    Elect to be notified whenever one of a user specified selection of baseband events occurs.

    The notification takes place in the pure virtual function MBluetoothSocketNotifier::HandleActivateBasebandEventNotifierCompleteL(TInt aErr, TBTBasebandEventNotification& aEventNotification)

    The FIRST notification will take place ALMOST INSTANTANEOUSLY and will be A FULL DESCRIPTION (OR SNAPSHOT) OF THE CURRENT STATE OF THE PHYSICAL LINK irrespective of the specified selection of events wanted. This first notification or snapshot has NOTHING to do with a baseband event occurring. Once this snapshot has taken place, all occurrences of the specified events from the instant of the snapshot onwards will be notified until CBluetoothSocket::CancelBasebandEventNotifier() is called.

    See also: PhysicalLinkState(TUint32& aState) if only a single full description of the physical link state is required.

    See also: TBTPhysicalLinkStateNotifier TBTPhysicalLinkStateNotifierCombinations

    ParameterDescription
    aEventTypesbitmask for those events for which notification is being requested (Combine elements of TBTPhysicalLinkStateNotifier and TBTPhysicalLinkStateNotifierCombinations)

    Returns: KErrNone if activated or KErrInUse if the baseband event notifier is already being used.

    ActivateParkRequester ( )

    IMPORT_C TIntActivateParkRequester()

    Activate park requestor.

    See also: RBTPhysicalLinkAdapter::ActivateParkRequester()

    panic
    EInvalidOpWhenAutoSniffOn (10) This API is not allowed when AutoSniff is On

    Returns: KErrNone if successful. KErrInUse if the socket is using automatic sniff mode.

    ActivateSniffRequester ( )

    IMPORT_C TIntActivateSniffRequester()

    See also: RBTPhysicalLinkAdapter::ActivateSniffRequester()

    panic
    EInvalidOpWhenAutoSniffOn (10) This API is not allowed when AutoSniff is On

    Returns: KErrNone if successful. KErrInUse if the socket is using automatic sniff mode.

    AllowLowPowerModes ( TUint32 )

    IMPORT_C TIntAllowLowPowerModes(TUint32aLowPowerModes)

    Allow low power modes.

    The power modes are indicated by aLowPowerModes.

    See also: RBTPhysicalLinkAdapter::AllowLowPowerModes(TUint32 aLowPowerModes)

    panic
    EInvalidOpWhenAutoSniffOn (10) This API is not allowed when AutoSniff is On
    ParameterDescription
    aLowPowerModesThe low power mode.

    Returns: KErrNone if successful. KErrInUse if the socket is using automatic sniff mode.

    AllowRoleSwitch ( )

    IMPORT_C TIntAllowRoleSwitch()

    Allow the socket to switch roles.

    See also: RBTPhysicalLinkAdapter::AllowRoleSwitch()

    Returns: KErrNone if successful.

    AsyncDelete ( )

    IMPORT_C voidAsyncDelete()

    Asynchronous deletion of the CBluetoothSocket object.

    Function will cause asynchronous deletion of CBluetoothSocket object. It should be called if associated MBluetoothSocketNotifier needs to delete CBluetoothSocket from any of its callback functions.

    AutomaticSniffMode ( )

    IMPORT_C TBoolAutomaticSniffMode()const

    Reports the automatic sniff/unsniff requesting status of the socket.

    Returns: ETrue if automatic sniff/unsniff has been selected for this socket.

    BTBaseband ( )

    RBTBaseband &BTBaseband()

    BTBasebandManager ( )

    CBTBasebandManager &BTBasebandManager()

    Bind ( TSockAddr & )

    IMPORT_C TIntBind(TSockAddr &aSockAddr)

    Sets a Bluetooth socket address.

    Sets the local address of a socket. When a socket is opened it has no name associated with it, and binding is required so data can be routed to the socket. Bind() should be called before Listen() or Connect().

    See also: RSocket::Bind(TSockAddr& aAddr)

    ParameterDescription
    aSockAddrThe address of the socket.

    Returns: aAddr The address of the socket.

    CancelAccept ( )

    IMPORT_C voidCancelAccept()

    Cancels the Accept() operation.

    See also: RSocket::CancelAccept()

    CancelAll ( )

    IMPORT_C voidCancelAll()

    Cancels all outstanding operations.

    Calling it will cause all outstanding operations to cancel. Outstanding operations for a socket include: read, write, Ioctl, connect, accept, shutdown and the Baseband event notifier. All of these operations will be completed by this call.

    CancelBasebandEventNotifier ( )

    IMPORT_C voidCancelBasebandEventNotifier()

    Cancels an active baseband notifier.

    No further baseband events will be notified.

    If this function is called when there is no active baseband notifier, it will do nothing.

    CancelConnect ( )

    IMPORT_C voidCancelConnect()

    Cancel an attempted connection.

    See also: RSocket::CancelConnect()

    CancelIoctl ( )

    IMPORT_C voidCancelIoctl()

    Cancels the Ioctl() asynchronous control operation.

    See also: RSocket::CancelIoctl()

    CancelLowPowerModeRequester ( )

    IMPORT_C TIntCancelLowPowerModeRequester()

    Cancels the low power mode request.

    See also: RBTPhysicalLinkAdapter::CancelLowPowerModeRequester()

    panic
    EInvalidOpWhenAutoSniffOn (10) This API is not allowed when AutoSniff is On

    Returns: KErrNone if successful. KErrInUse if the socket is using automatic sniff mode.

    CancelRead ( )

    IMPORT_C voidCancelRead()

    Cancels an outstanding Read() operation.

    Calling this function will cause any outstanding Read() operation to cancel.

    See also: RSocket::CancelRead()

    CancelRecv ( )

    IMPORT_C voidCancelRecv()

    Cancels an outstanding Recv() operation.

    Calling this function will cause any outstanding receive operation to cancel.

    See also: RSocket::CancelRecv()

    CancelSend ( )

    IMPORT_C voidCancelSend()

    Cancels an outstanding Bluetooth Send() operation.

    Calling the function will cause an outstanding Bluetooth Send() operation to complete prematurely.

    See also: RSocket::CancelSend()

    CancelWrite ( )

    IMPORT_C voidCancelWrite()

    Cancels an outstanding Write() operation.

    Calling this operation will cause any outstanding Write() operation to cancel.

    See also: RSocket::CancelWrite()

    Connect ( TBTSockAddr & )

    IMPORT_C TIntConnect(TBTSockAddr &aSockAddr)

    Opens a connection to a specific Bluetooth device by its address.

    The address represents the address of the remote Bluetooth device. A socket may only have one connect operation outstanding at any one time. Once the connect is completed, the socket is ready to send or receive data. If a socket is unbound - i.e. Bind() has not been called yet - then it will automatically have a local address allocated.

    See also: RSocket::Connect(TBTSockAddr& aAddr)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleConnectCompleteL(TInt aErr)

    ParameterDescription
    aSockAddrThe address of the bluetooth device to which the connection is being made.

    Returns: KErrInUse if the device is already being used, else KErrNone is the connection is successful.

    Connect ( TBTSockAddr &, const TDesC8 &, TDes8 & )

    IMPORT_C TIntConnect(TBTSockAddr &aSockAddr,
    const TDesC8 &aConnectDataOut,
    TDes8 &aConnectDataIn
    )

    Connects to a remote Bluetooth device by address with a defined data-out and data-in descriptor.

    The address provided specifies the address of the remote Bluetooth host. Data can be sent in connect request packets, which may be provided in the data-out descriptor, or connect responses, which may be collected in the data-in descriptor.

    A socket may only have one connect operation outstanding at any one time. Once the connect is completed, the socket is ready to send or receive data. If a socket is unbound - i.e. Bind() has not been called yet - then it will automatically have a local address allocated.

    See also: RSocket::Connect(TBTSockAddr& aAddr,const TDesC8& aConnectDataOut,TDes8& aConnectDataIn)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleConnectCompleteL(TInt aErr).

    ParameterDescription
    aSockAddrThe address of the remote Bluetooth device.
    aConnectDataOutA descriptor containing data to be sent.
    aConnectDataInA descriptor to receive data.

    Returns: KErrInUse if the device is already being used, else KErrNone is the connection is successful.

    Connect ( TBTSockAddr &, TUint16 )

    IMPORT_C TIntConnect(TBTSockAddr &aAddr,
    TUint16aServiceBits
    )

    Sets the Service bits in the Class Of Device. If this is successful, the socket then opens a connection to a specific Bluetooth device by its address.

    The address represents the address of the remote Bluetooth device. A socket may only have one connect operation outstanding at any one time. Once the connect is completed, the socket is ready to send or receive data. If a socket is unbound - i.e. Bind() has not been called yet - then it will automatically have a local address allocated.

    See also: RSocket::Connect(TBTSockAddr& aAddr)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleConnectCompleteL(TInt aErr)

    ParameterDescription
    aAddrThe address of the bluetooth device to which the connection is being made.

    Returns: KErrInUse if the device is already being used, else KErrNone is the connection is successful.

    GetDisconnectData ( TDes8 & )

    IMPORT_C TIntGetDisconnectData(TDes8 &aDesc)
    ParameterDescription
    aDescA descriptor for the disconnect data.

    Returns: KErrNone if successful.

    GetOpt ( TUint, TUint, TDes8 & )

    IMPORT_C TIntGetOpt(TUintaOptionName,
    TUintaOptionLevel,
    TDes8 &aOption
    )

    Gets a socket option.

    The socket server has options which are generic to all sockets and protocols may add specific options.

    Options available for all protocols can be got with anOptionLevel set to KSOLSocket. See individual protocol notes for other socket options.

    See also: RSocket::GetOpt(TUint aOptionName,TUint aOptionLevel,TDes8& aOption)

    ParameterDescription
    aOptionNameAn option identifier.
    aOptionLevelAn option level. Option levels 'group' related options.
    aOptionThe option value as a descriptor.

    Returns: The socket options set.

    GetOpt ( TUint, TUint, TInt & )

    IMPORT_C TIntGetOpt(TUintaOptionName,
    TUintaOptionLevel,
    TInt &aOption
    )

    Gets a socket option.

    The socket server has options which are generic to all sockets and protocols may add specific options.

    Options available for all protocols can be got with anOptionLevel set to KSOLSocket. See individual protocol notes for other socket options.

    See also: RSocket::GetOpt(TUint aOptionName,TUint aOptionLevel,TDes8& aOption)

    ParameterDescription
    aOptionNameAn option identifier.
    aOptionLevelAn option level. Option levels 'group' related options.
    aOptionThe option value as an integer.

    Returns: The socket options set.

    HandleAcceptCompleteL ( TInt )

    voidHandleAcceptCompleteL(TIntaErr)

    HandleActivateBasebandEventNotifierCompleteL ( TInt, TBTBasebandEventNotification )

    voidHandleActivateBasebandEventNotifierCompleteL(TIntaErr,
    TBTBasebandEventNotificationaEventNotification
    )

    HandleConnectCompleteL ( TInt )

    voidHandleConnectCompleteL(TIntaErr)

    HandleIoctlCompleteL ( TInt )

    voidHandleIoctlCompleteL(TIntaErr)

    HandleReceiveCompleteL ( TInt )

    voidHandleReceiveCompleteL(TIntaErr)

    HandleSendCompleteL ( TInt )

    voidHandleSendCompleteL(TIntaErr)

    HandleShutdownCompleteL ( TInt )

    voidHandleShutdownCompleteL(TIntaErr)

    Info ( TProtocolDesc & )

    IMPORT_C TIntInfo(TProtocolDesc &aProtocol)

    Gets information about the protocol the socket is opened on.

    See also: RSocket::Info(TProtocolDesc& aProtocol)

    ParameterDescription
    aProtocolThe protocol on which the socket is opened. Note that if the socket is a null socket, and aProtocol is a null TProtocolDesc when it is passed in, if will be null on return as well.

    Returns: KErrNone if successful.

    Ioctl ( TUint, TUint, TDes8 * )

    IMPORT_C TIntIoctl(TUintaLevel,
    TUintaCommand,
    TDes8 *aDesc
    )

    Applies an asynchronous control operation on a socket.

    Data may be passed and received if a descriptor address is provided as an argument. Only one Ioctl() operation may be outstanding for each socket.

    See also: RSocket::Ioctl(TUint aCommand,TDes8* aDesc,TUint aLevel)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleIoctlCompleteL(TInt aErr)

    ParameterDescription
    aLevelControl operation level.
    aCommandioctl command.
    aDescPointer to a descriptor in which data may be sent and received on completion.

    Returns: KErrNone if the ioctl command is applied or KErrInUse if another ioctl command is still being used.

    Ioctl ( TUint, TDes8 *, TUint )

    IMPORT_C TIntIoctl(TUintaCommand,
    TDes8 *aDesc = NULL,
    TUintaLevel = KLevelUnspecified
    )

    Deprecated

    Applies an asynchronous control operation on a socket.

    Data may be passed and received if a descriptor address is provided as an argument. Only one Ioctl() operation may be outstanding for each socket.

    See also: RSocket::Ioctl(TUint aCommand,TDes8* aDesc,TUint aLevel)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleIoctlCompleteL(TInt aErr) Deprecated

    ParameterDescription
    aCommandioctl command.
    aDescPointer to a descriptor in which data may be sent and received on completion.
    aLevelControl operation level.

    Returns: KErrNone if the ioctl command is applied or KErrInUse if another ioctl command is still being used.

    Listen ( TUint )

    IMPORT_C TIntListen(TUintqSize)

    Sets up a socket to listen for incoming connections.

    Before calling this procedure a socket should be opened using Open() and be bound to a local address using Bind().

    Listen() creates a queue to hold incoming connections which can be married with blank sockets using Accept().

    Once a listen queue has been created it will continue to allow peers to connect until it is full, at which point it will reject any incoming connections as specified by protocol behaviour. When a socket is accepted by the client a space is made available in the queue.

    See also: RSocket::Listen(TUint qSize)

    ParameterDescription
    qSizeThe number of connections allowed in the queue.

    Returns: The 'listen' queue.

    Listen ( TUint, const TDesC8 & )

    IMPORT_C TIntListen(TUintqSize,
    const TDesC8 &aConnectData
    )
    ParameterDescription
    qSizeThe size of the 'listen' queue.
    aConnectDataThe descriptor for data sent in connection respoonses.

    Returns: The 'listen' queue.

    Listen ( TUint, TUint16 )

    IMPORT_C TIntListen(TUintqSize,
    TUint16aServiceBits
    )

    Sets the Service bits in the Class Of Device. If this is successful, the socket will then be set to Listen for incoming connections.

    Before calling this procedure a socket should be opened using Open() and be bound to a local address using Bind().

    Listen() creates a queue to hold incoming connections which can be married with blank sockets using Accept().

    Once a listen queue has been created it will continue to allow peers to connect until it is full, at which point it will reject any incoming connections as specified by protocol behaviour. When a socket is accepted by the client a space is made available in the queue.

    See also: RSocket::Listen(TUint qSize)

    ParameterDescription
    qSizeThe number of connections allowed in the queue.

    Returns: The 'listen' queue.

    LocalName ( TSockAddr & )

    IMPORT_C voidLocalName(TSockAddr &aSockAddr)

    Gets the local address of a socket.

    The local address is set either by calling Bind() or it is automatically set when Connect() is called. If a socket is created through Accept() then a socket will inherit the port of its parent unless otherwise specified by a protocol's behaviour.

    See also: RSocket::LocalName(TSockAddr& aAddr)

    ParameterDescription
    aSockAddrThe socket address.

    LocalPort ( )

    IMPORT_C TUintLocalPort()

    Gets the local port of a socket.

    Similar to LocalName().

    See also: RSocket::LocalPort()

    Returns: The local port of the socket.

    Name ( TName & )

    IMPORT_C TIntName(TName &aName)

    Used to get a unique name of a socket.

    The name is needed when Transfer() is called.

    See also: RSocket::Name(TName& aName)

    ParameterDescription
    aNameThe system name of a socket.

    Returns: KErrNone if successful.

    NewL ( MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint )

    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    TUintaSockType,
    TUintaProtocol
    )[static]

    Standard Bluetooth socket NewL constructor.

    Opens a Bluetooth socket. The constructor identifies the server, socket type, and bluetooth protocol to be used for the socket, as well as an asynchronous notifier.
    Pre-condition
    A session on the socket server has been started.
    leave
    No memory, or error on opening socket.
    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock).
    aSockTypeOne of a set of values defined in es_sock.h, for example KSockStream.
    aProtocolAn entry point into the Bluetooth stack, for example KL2CAP.

    Returns: The Bluetooth socket created with the constructor.

    NewL ( MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint, RConnection & )

    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    TUintaSockType,
    TUintaProtocol,
    RConnection &aConnection
    )[static]
    Opens a Bluetooth socket on a specified connection.
    Pre-condition
    A session on the socket server has been started.
    leave
    No memory, or error on opening socket
    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aSockTypeOne of a set of values defined in es_sock.h, for example KSockStream
    aProtocolAn entry point into the Bluetooth stack, for example KL2CAP
    aConnectionA socket server management interface for a connection

    Returns: The Bluetooth socket created with the constructor.

    NewL ( MBluetoothSocketNotifier &, RSocketServ &, const TDesC & )

    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    const TDesC &aName
    )[static]

    Bluetooth socket named protocol NewL() constructor.

    Opens a Bluetooth socket over a specified named protocol, such as "L2CAP".
    Pre-condition
    A session on the socket server has been started.
    leave
    No memory, or error on opening socket
    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aNameA descriptor containing the name of the protocol wanted for making a Bluetooth connection, for example _L("L2CAP")

    Returns: The Bluetooth socket created with the constructor.

    NewL ( MBluetoothSocketNotifier &, RSocketServ & )

    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer
    )[static]

    Bluetooth blank socket NewL() constructor.

    Opens a blank socket to be used when accepting an incoming connection. This socket should be used as the parameter when a listening socket calls CBluetoothSocket::Accept(CBluetoothSocket& aBlankSocket). When that connection completes this blank socket becomes the Bluetooth socket for that connection.

    Pre-condition
    A session on the socket server has been started.
    leave
    No memory, or error on opening socket
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)

    Returns: The Bluetooth socket created with the constructor.

    NewL ( MBluetoothSocketNotifier &, RSocketServ &, RSocket & )

    IMPORT_C CBluetoothSocket *NewL(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    RSocket &aSocket
    )[static]

    Bluetooth socket using an existing RSocket instance constructor.

    Takes ownership of an existing socket to be used as the underlying connection for this Socket wrapper. This should be used where an existing API returned a RSocket representing a Bluetooth connection.

    Pre-condition
    A session on the socket server has been started, and aSocket is open and is set as "Transferable" through the KSOEnableTransfer SetOpt.
    leave
    No memory
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aSocketA handle to an existing socket.

    Returns: The Bluetooth socket created with the constructor.

    NewLC ( MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint )

    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    TUintaSockType,
    TUintaProtocol
    )[static]

    Standard Bluetooth socket NewLC constructor.

    Opens a Bluetooth socket as with the NewL() above, but leaves the returned CBluetoothSocket object on the cleanup stack.

    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aSockTypeOne of a set of values defined in es_sock.h, for example KSockStream
    aProtocolAn entry point into the Bluetooth stack, for example KL2CAP

    Returns: The Bluetooth socket created with the constructor.

    NewLC ( MBluetoothSocketNotifier &, RSocketServ &, TUint, TUint, RConnection & )

    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    TUintaSockType,
    TUintaProtocol,
    RConnection &aConnection
    )[static]

    This constructor opens a Bluetooth socket on a specified connection.

    Leaves the socket on the cleanup stack.

    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aSockTypeOne of a set of values defined in es_sock.h, for example KSockStream
    aProtocolAn entry point into the Bluetooth stack, for example KL2CAP
    aConnectionA socket server management interface for a connection

    Returns: The Bluetooth socket created with the constructor.

    NewLC ( MBluetoothSocketNotifier &, RSocketServ &, const TDesC & )

    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    const TDesC &aName
    )[static]

    Bluetooth socket named protocol NewLC() constructor.

    Opens a Bluetooth socket over a specified named protocol, such as "L2CAP". Leaves returned CBluetoothSocket object on the cleanup stack.

    capability
    LocalServices
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aNameA descriptor containing the name of the protocol wanted for making a Bluetooth connection, for example _L("L2CAP")

    Returns: The Bluetooth socket created with the constructor.

    NewLC ( MBluetoothSocketNotifier &, RSocketServ & )

    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer
    )[static]

    Bluetooth blank socket NewLC() constructor

    Opens a blank socket to be used when accepting an incoming connection. This socket should be used as the parameter when a listening socket calls CBluetoothSocket::Accept(CBluetoothSocket& aBlankSocket). When that connection completes this blank socket becomes the Bluetooth socket for that connection.

    Leaves returned CBluetoothSocket object on the cleanup stack.

    Pre-condition
    A session on the socket server has been started.
    leave
    No memory, or error on opening socket
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)

    Returns: The Bluetooth socket created with the constructor.

    NewLC ( MBluetoothSocketNotifier &, RSocketServ &, RSocket & )

    IMPORT_C CBluetoothSocket *NewLC(MBluetoothSocketNotifier &aNotifier,
    RSocketServ &aServer,
    RSocket &aSocket
    )[static]

    Bluetooth socket using an existing RSocket instance constructor.

    Takes ownership of an existing socket to be used as the underlying connection for this Socket wrapper. This should be used where an existing API returned a RSocket representing a Bluetooth connection.

    Leaves returned CBluetoothSocket object on the cleanup stack.

    Pre-condition
    A session on the socket server has been started, and aSocket is open and is set as "Transferable" through the KSOEnableTransfer SetOpt.
    leave
    No memory
    ParameterDescription
    aNotifierThe object which will receive asynchronous events.
    aServerA handle to an existing session on the socket server (ESock)
    aSocketA handle to an existing socket.

    Returns: The Bluetooth socket created with the constructor.

    Notifier ( )

    PhysicalLinkState ( TUint32 & )

    IMPORT_C TIntPhysicalLinkState(TUint32 &aState)

    Get the state of the physical link.

    See also: RBTPhysicalLinkAdapter::PhysicalLinkState(TUint32& aState)

    ParameterDescription
    aStateThe state of the physical link.

    Returns: The state of the physical link.

    PreventLowPowerModes ( TUint32 )

    IMPORT_C TIntPreventLowPowerModes(TUint32aLowPowerModes)

    Prevents low power modes from being activated.

    See also: RBTPhysicalLinkAdapter::PreventLowPowerModes(TUint32 aLowPowerModes)

    panic
    EInvalidOpWhenAutoSniffOn (10) This API is not allowed when AutoSniff is On
    ParameterDescription
    aLowPowerModesThe low power mode being prevented.

    Returns: KErrNone if successful. KErrInUse if the socket is using automatic sniff mode.

    PreventRoleSwitch ( )

    IMPORT_C TIntPreventRoleSwitch()

    Role switching is not allowed.

    See also: RBTPhysicalLinkAdapter::PreventRoleSwitch()

    Returns: KErrNone if successful.

    Read ( TDes8 & )

    IMPORT_C TIntRead(TDes8 &aDesc)

    Receives data from a remote Bluetooth host.

    Read() is only used with a connected Bluetooth host.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr)

    See also: RSocket::Read(TDes8& aDesc)

    ParameterDescription
    aDescA descriptor for the data being read.

    Returns: KErrNone meaning the operation was successful and data is being received from the remote device, or KErrInUse meaning a previous Recv() is not yet finished.

    Recv ( TDes8 &, TUint )

    IMPORT_C TIntRecv(TDes8 &aDesc,
    TUintflags
    )

    Receives data from a remote Bluetooth device.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr)

    See also: RSocket::Recv(TDes8& aDesc,TUint flags)

    ParameterDescription
    aDescA descriptor for the information being sent to the remote Bluetooth device.
    flagsBluetooth information flags.

    Returns: KErrNone meaning the operation was successful and data is being received from the remote device, or KErrInUse meaning a previous Recv() is not yet finished.

    Recv ( TDes8 &, TUint, TSockXfrLength & )

    IMPORT_C TIntRecv(TDes8 &aDesc,
    TUintflags,
    TSockXfrLength &aLen
    )

    Receives data from a remote Bluetooth device.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr)

    See also: RSocket::Recv(TDes8& aDesc,TUint flags, TSockXfrLength& aLen)

    ParameterDescription
    aDescA descriptor for the information being sent to the remote Bluetooth device.
    flagsBluetooth information flags.
    aLenA length indicating how much data was read. This is the same as length of the returned aDesc.

    Returns: KErrNone meaning the operation was successful and data is being received from the remote device, or KErrInUse meaning a previous Recv() is not yet finished.

    RecvFrom ( TDes8 &, TSockAddr &, TUint )

    IMPORT_C TIntRecvFrom(TDes8 &aDesc,
    TSockAddr &aSockAddr,
    TUintflags
    )

    Receives aDesc data from the named remote aAddr Bluetooth device using the flags indicated.

    See also: RSocket::RecvFrom(TDes8& aDesc,TSockAddr& aAddr,TUint flags)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr)

    ParameterDescription
    aDescA descriptor for the data being received.
    aSockAddrThe address of the Bluetooth device.
    flagsThe Bluetooth flags.

    Returns: KErrNone meaning the operation was successful and data is being received from the specified and addressed remote device, or KErrInUse meaning a previous RecvFrom() is not yet finished.

    RecvFrom ( TDes8 &, TSockAddr &, TUint, TSockXfrLength & )

    IMPORT_C TIntRecvFrom(TDes8 &aDesc,
    TSockAddr &aSockAddr,
    TUintflags,
    TSockXfrLength &aLen
    )

    Receives aDesc data from the named remote aAddr Bluetooth device using the flags indicated.

    See also: RSocket::RecvFrom(TDes8& aDesc,TSockAddr& aAddr,TUint flags,TSockXfrLength& aLen)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr)

    ParameterDescription
    aDescA descriptor for the data being received.
    aSockAddrThe address of the Bluetooth device.
    flagsThe Bluetooth flags.
    aLenAn integer representing the length of the message.

    Returns: KErrNone meaning the operation was successful and data is being received from the specified and addressed remote device, or KErrInUse meaning a previous RecvFrom() is not yet finished.

    RecvOneOrMore ( TDes8 &, TUint, TSockXfrLength & )

    IMPORT_C TIntRecvOneOrMore(TDes8 &aDesc,
    TUintflags,
    TSockXfrLength &aLen
    )

    Receives data from a remote Bluetooth device, completing when data is available.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleReceiveCompleteL(TInt aErr).

    See also: RSocket::RecvOneOrMore(TDes8& aDesc,TUint flags,TSockXfrLength& aLen)

    ParameterDescription
    aDescA descriptor for the information being sent to the remote Bluetooth device.
    flagsBluetooth information flags.
    aLenA length indicating how much data was read. This is the same as length of the returned aDesc.

    Returns: KErrNone meaning the operation was successful and data is being received from the remote device, or KErrInUse meaning a previous Recv() is not yet finished.

    RemoteName ( TSockAddr & )

    IMPORT_C voidRemoteName(TSockAddr &aSockAddr)

    Gets the remote address of a socket.

    The remote name (address) of a socket is associated with the remote host the socket is connected to. The remote name is only valid for a connected socket. A socket is either connected through calling Connect() or Accept().

    See also: RSocket::RemoteName(TSockAddr& aAddr)

    ParameterDescription
    aSockAddrThe remote socket address.

    RequestChangeSupportedPacketTypes ( TUint16 )

    IMPORT_C TIntRequestChangeSupportedPacketTypes(TUint16aPacketTypes)

    Request to change the supported packet types.

    See also: RBTPhysicalLinkAdapter::RequestChangeSupportedPacketTypes(TUint16 aPacketTypes)

    Returns: KErrNone if successful.

    RequestMasterRole ( )

    IMPORT_C TIntRequestMasterRole()

    Request the socket take on the master role.

    See also: RBTPhysicalLinkAdapter::RequestMasterRole()

    Returns: KErrNone if successful.

    RequestSlaveRole ( )

    IMPORT_C TIntRequestSlaveRole()

    Request the socket take on a slave role.

    See also: RBTPhysicalLinkAdapter::RequestSlaveRole()

    Returns: KErrNone if successful.

    Send ( const TDesC8 &, TUint )

    IMPORT_C TIntSend(const TDesC8 &aDesc,
    TUintsomeFlags
    )

    Sends data to a remote bluetooth device.

    The Send() operation checks that another Send() operation isn't already in progress before sending.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleSendCompleteL(TInt aErr).

    If Automatic Sniff Mode is active, using this function will not automatically put the link into active mode. If it is required that the link be taken out of sniff mode automatically when data is to be sent then the CBluetoothSocket::Write(const TDesC8& aDesc) function should be used instead.

    See also: RSocket::Send(const TDesC8& aDesc,TUint someFlags,TRequestStatus& aStatus)

    ParameterDescription
    aDescA descriptor for the data being sent to the remote device.
    someFlagsBluetooth specific flags.

    Returns: KErrNone meaning the operation was successful and data is being sent to the remote device, or KErrInUse meaning a previous Send() is not yet finished.

    Send ( const TDesC8 &, TUint, TSockXfrLength & )

    IMPORT_C TIntSend(const TDesC8 &aDesc,
    TUintsomeFlags,
    TSockXfrLength &aLen
    )

    Sends data to a remote bluetooth device.

    The Send() operation checks that another Send() operation isn't already in progress before sending.

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleSendCompleteL(TInt aErr)

    If Automatic Sniff Mode is active, using this function will not automatically put the link into active mode. If it is required that the link be taken out of sniff mode automatically when data is to be sent then the CBluetoothSocket::Write(const TDesC8& aDesc) function should be used instead.

    See also: RSocket::Send(const TDesC8& aDesc,TUint someFlags,TSockXfrLength& aLen)

    ParameterDescription
    aDescA descriptor for the data being sent to the remote device.
    someFlagsBluetooth specific flags.
    aLenAmount of data being sent.

    Returns: KErrNone meaning the operation was successful and data is being sent to the remote device, or KErrInUse meaning a previous Send() is not yet finished.

    SendTo ( const TDesC8 &, TSockAddr &, TUint )

    IMPORT_C TIntSendTo(const TDesC8 &aDesc,
    TSockAddr &aSockAddr,
    TUintflags
    )

    Sends the aDesc data to the aAddr specified and applies the flags indicated to the operation.

    See also: RSocket::SendTo(const TDesC8& aDesc,TSockAddr& aAddr,TUint flags)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleSendCompleteL(TInt aErr)

    If Automatic Sniff Mode is active, using this function will not automatically put the link into active mode. If it is required that the link be taken out of sniff mode automatically when data is to be sent then the CBluetoothSocket::Write(const TDesC8& aDesc) function should be used instead.

    ParameterDescription
    aDescA descriptor for the data being sent.
    aSockAddrThe address of the Bluetooth device.
    flagsThe Bluetooth flags.

    Returns: KErrNone meaning the operation was successful and data is being sent to the specified and addressed remote device, or KErrInUse meaning a previous SendTo() is not yet finished.

    SendTo ( const TDesC8 &, TSockAddr &, TUint, TSockXfrLength & )

    IMPORT_C TIntSendTo(const TDesC8 &aDesc,
    TSockAddr &aSockAddr,
    TUintflags,
    TSockXfrLength &aLen
    )

    Sends the aDesc data to the aAddr specified and applies the flags indicated to the operation.

    See also: RSocket::SendTo(const TDesC8& aDesc,TSockAddr& aAddr,TUint flags,TSockXfrLength& aLen)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleSendCompleteL(TInt aErr)

    If Automatic Sniff Mode is active, using this function will not automatically put the link into active mode. If it is required that the link be taken out of sniff mode automatically when data is to be sent then the CBluetoothSocket::Write(const TDesC8& aDesc) function should be used instead.

    ParameterDescription
    aDescA descriptor for the data being sent.
    aSockAddrThe address of the Bluetooth device.
    flagsThe Bluetooth flags.
    aLenAn integer representing the length of the message.

    Returns: KErrNone meaning the operation was successful and data is being sent to the specified and addressed remote device, or KErrInUse meaning a previous SendTo() is not yet finished.

    SetAutomaticSniffMode ( TBool )

    IMPORT_C TIntSetAutomaticSniffMode(TBoolaAutoSniffMode)

    Sets up automatic sniff/unsniff requesting for the socket.

    If Automatic Sniff requesting is being selected, a timer with default delay in seconds before the idle socket will request the link to go into sniff mode. The CBluetoothSocket::Write() method will clear an outstanding sniff requester and start the CAutoSniffDelayTimer active object which will issue another request for sniff mode once it times out.

    If Automatic Sniff requesting is being deselected, a previous sniff requester will be cancelled.

    If Automatic Sniff requesting is selected when it is already active, no change will be performed and KErrInUse will be returned

    ParameterDescription
    aAutoSniffModeETrue if Automatic Sniff/Unsniff requests are required.

    Returns: KErrNone if the automatic sniff mode has been successfully changed. KErrInUse if automatic sniff mode is requested, when it is already active. KErrArgument if an invalid idle timer value for the sniff request is provided. A Symbian wide error code for another other error that might have occurred.

    SetAutomaticSniffMode ( TBool, TInt )

    IMPORT_C TIntSetAutomaticSniffMode(TBoolaAutoSniffMode,
    TIntaIdleSecondsBeforeSniffRequest
    )

    Sets up automatic sniff/unsniff requesting for the socket.

    If Automatic Sniff requesting is being selected, supply the delay in seconds required before the idle socket will request the link to go into sniff mode. The CBluetoothSocket::Write() method will clear an outstanding sniff requester and start the CAutoSniffDelayTimer active object which will issue another request for sniff mode once it times out.

    If Automatic Sniff requesting is being deselected, a previous sniff requester will be cancelled.

    If Automatic Sniff requesting is selected when it is already active, no change will be performed and KErrInUse will be returned

    ParameterDescription
    aAutoSniffModeETrue if Automatic Sniff/Unsniff requests are required.
    aIdleSecondsBeforeSniffRequestA delay after the socket becomes idle before it will request sniff mode.

    Returns: KErrNone if the automatic sniff mode has been successfully changed. KErrInUse if automatic sniff mode is requested, when it is already active. KErrArgument if an invalid idle timer value for the sniff request is provided. A Symbian wide error code for another other error that might have occurred.

    SetLocalPort ( TInt )

    IMPORT_C TIntSetLocalPort(TIntaPort)

    Sets the local port of a Bluetooth socket.

    Setting the local port is equivalent to calling Bind() with only the port set in the address.

    See also: RSocket::SetLocalPort(TInt aPort)

    ParameterDescription
    aPortThe socket port.

    Returns: aPort The socket port.

    SetNotifier ( MBluetoothSocketNotifier & )

    IMPORT_C voidSetNotifier(MBluetoothSocketNotifier &aNewNotifier)

    Changes the owner (receiver of notifications) of the socket.

    The previous notifier will not be deleted after the change has been made.

    ParameterDescription
    aNewNotifierThe object which will receive asynchronous events.

    SetOpt ( TUint, TUint, TInt )

    IMPORT_C TIntSetOpt(TUintaOptionName,
    TUintaOptionLevel,
    TIntaOption
    )

    Sets a socket option.

    The socket server has options which are generic to all sockets and protocols may add specific options.

    Options available for all protocols can be set with anOptionLevel set to KSOLSocket. See individual protocol notes for other socket options.

    See also: RSocket::SetOpt(TUint aOptionName, TUint aOptionLevel,const TDesC8& aOption)

    ParameterDescription
    aOptionNameAn option identifier.
    aOptionLevelAn option level. Option levels 'group' related options.
    aOptionThe option value as an integer.

    Returns: The socket options set.

    SetOpt ( TUint, TUint, const TDesC8 & )

    IMPORT_C TIntSetOpt(TUintaOptionName,
    TUintaOptionLevel,
    const TDesC8 &aOption = TPtrC8(NULL, 0)
    )

    Deprecated

    Sets a socket option.

    The socket server has options which are generic to all sockets and protocols may add specific options.

    Options available for all protocols can be set with anOptionLevel set to KSOLSocket. See individual protocol notes for other socket options.

    See also: RSocket::SetOpt(TUint aOptionName, TUint aOptionLevel,const TDesC8& aOption)

    Deprecated
    ParameterDescription
    aOptionNameAn option identifier.
    aOptionLevelAn option level. Option levels 'group' related options.
    aOptionThe option value as a descriptor.

    Returns: The socket options set.

    SetOption ( TUint, TUint, const TDesC8 & )

    IMPORT_C TIntSetOption(TUintaOptionName,
    TUintaOptionLevel,
    const TDesC8 &aOption
    )

    Sets a socket option.

    The socket server has options which are generic to all sockets and protocols may add specific options.

    Options available for all protocols can be set with anOptionLevel set to KSOLSocket. See individual protocol notes for other socket options.

    See also: RSocket::SetOpt(TUint aOptionName, TUint aOptionLevel,const TDesC8& aOption)

    ParameterDescription
    aOptionNameAn option identifier.
    aOptionLevelAn option level. Option levels 'group' related options.
    aOptionThe option value as a descriptor.

    Returns: The socket options set.

    Shutdown ( RSocket::TShutdown )

    IMPORT_C TIntShutdown(RSocket::TShutdownaHow)

    Shuts down a connected socket. (The socket cannot be null.

    See also: CBluetoothSocket::Info.)

    The shutdown method allows input and output to be individually stopped for a protocol endpoint.

    See also: RSocket::Shutdown(RSocket::TShutdown aHow)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleShutdownCompleteL(TInt aErr)

    ParameterDescription
    aHowShutdown option. All variants complete when a socket is disconnected.

    Returns: KErrNone if successful or KErrInUse if the system is already trying to shutdown a connected socket.

    Shutdown ( RSocket::TShutdown, const TDesC8 &, TDes8 & )

    IMPORT_C TIntShutdown(RSocket::TShutdownaHow,
    const TDesC8 &aDisconnectDataOut,
    TDes8 &aDisconnectDataIn
    )

    Reserved for future. The socket must not be null. (

    See also: CBluetoothSocket::Info.) RSocket::Shutdown(RSocket::TShutdown aHow,const TDesC8& aDisconnectDataOut,TDes8& aDisconnectDataIn)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleShutdownCompleteL(TInt aErr)

    ParameterDescription
    aHowShutdown option. All variants complete when a socket is disconnected.
    aDisconnectDataOutA descriptor to send data.
    aDisconnectDataInA descriptor to recive data.

    Returns: KErrNone if successful or KErrInUse if the system is already trying to shutdown a connected socket.

    Socket ( )

    RSocket &Socket()

    SocketServer ( )

    RSocketServ &SocketServer()

    Transfer ( RSocketServ &, const TDesC & )

    IMPORT_C TIntTransfer(RSocketServ &aServer,
    const TDesC &aName
    )

    Transfers a socket from one socket server session to another.

    It creates the socket in the target session, and removes the socket from the source session. The call is made on an uninitialised RSocket object. The socket system name 'Name()' is used to identify the socket to transfer.

    If the call fails, the socket that is being transferred remains with the original session. Success or failure can be checked on the originating socket by calling Info(), which returns KErrNone if the transfer failed, and KErrBadHandle if it succeeded.

    See also: RSocket::Transfer(RSocketServ& aServer, const TDesC& aName)

    ParameterDescription
    aServerThe session to which the socket is being transfered
    aNameThe system name of the socket being transfered.

    Returns: KErrNone if successful.

    Write ( const TDesC8 & )

    IMPORT_C TIntWrite(const TDesC8 &aDesc)

    Writes to a remote Bluetooth device

    See also: RSocket::Write(const TDesC8& aDesc)

    When this request completes, notification is sent to the MBluetoothSocketNotifier object supplied when this CBluetoothSocket was constructed. This is done in the function MBluetoothSocketNotifier::HandleSendCompleteL(TInt aErr)

    If Automatic Sniff Mode is active on this socket instance, then upon calling this function the link will be put into active mode. If no CBluetoothSocket::Write() calls are made for a period of the timeout specified during activation of the automatic sniffing then the link will be put back into sniff mode.

    See also: CBluetoothSocket::SetAutomaticSniffMode(TBool aAutoSniffMode, TInt aIdleSecondsBeforeSniffRequest) CBluetoothSocket::SetAutomaticSniffMode(TBool aAutoSniffMode)

    ParameterDescription
    aDescA descriptor for the data being sent to the remote Bluetooth device.

    Returns: KErrNone meaning the operation was successful and data is being sent to the remote device, or KErrInUse meaning a previous Write() is not yet finished.