bluetoothengine/btnotif/btnotifclient/inc/btnotifclient.h
branchRCL_3
changeset 55 613943a21004
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothengine/btnotif/btnotifclient/inc/btnotifclient.h	Tue Aug 31 15:25:10 2010 +0300
@@ -0,0 +1,179 @@
+/*
+* ============================================================================
+*  Name        : btnotifclient.h
+*  Part of     : bluetoothengine / btnotifclient
+*  Description : Session class for client-server interaction with btnotifserver.
+*
+*  Copyright © 2009-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"
+*  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:
+*  Nokia Corporation
+* ============================================================================
+* Template version: 4.2
+*/
+
+#ifndef RBTNOTIFCLIENT_H
+#define RBTNOTIFCLIENT_H
+
+#include <e32base.h>
+#include <btmanclient.h>
+
+/**
+ *  A handle to a session with the Bluetooth notifier server for showing
+ *  Bluetooth-related notifications to the user.
+ *
+ *  ?more_complete_description
+ *  @code
+ *   ?good_class_usage_example(s)
+ *  @endcode
+ *
+ *  @lib ?library
+ *  @since Symbian^4
+ */
+NONSHARABLE_CLASS( RBTNotifier ) : public RSessionBase
+    {
+public:
+
+    /**
+     * Constructor.
+     *
+     * @since Symbian^4
+     */
+    IMPORT_C RBTNotifier();
+    
+    /**
+     * Connect to the Bluetooth notifier server.
+     *
+     * @since Symbian^4
+     * @return KErrNone, if successful. Otherwise one of 
+     *         the system-wide error codes.
+     */
+    IMPORT_C TInt Connect();
+
+    /**
+     * Get the version information about the client.
+     *
+     * @since Symbian^4
+     * @return The version of the client-server interface implemented by this client.
+     */
+    IMPORT_C TVersion Version();
+
+    /**
+     * Requests the extended notifier server to start the notifier
+     * identified by the specified UID. The request is synchronous; 
+     * the call returns when the request is complete.
+     *
+     * @since Symbian^4
+     * @param aNotifierUid The UID identifying the notifier. This is 
+     *        the same UID as used with RNotifier for the same purpose.
+     * @param aBuffer Data that can be passed to the notifier; the format and 
+     *        meaning of this depends on the notifier.
+     * @return KErrNone, if successful; KErrNotFound, if there 
+     *         is no notifier matching the specified UID; otherwise 
+     *         one of the other system-wide error codes.
+     */
+    IMPORT_C TInt StartNotifier( TUid aNotifierUid, const TDesC8& aBuffer );
+
+    /**
+     * Requests the extended notifier server to start the notifier 
+     * identified by the specified UID. This is an asynchronous request.
+     *
+     * @since Symbian^4
+     * @param aRs The request status. On request completion, contains KErrNone, 
+     *        if successful; KErrNotFound, if there is no notifier matching the 
+     *        specified UID; KErrCancel, if the notifier was cancelled through 
+     *        RBTNotifier::CancelNotifier; otherwise, one of the other system 
+     *        wide error codes.
+     * @param aNotifierUid The UID identifying the notifier. This is 
+     *        the same UID as used with RNotifier for the same purpose.
+     * @param aBuffer Data that can be passed to the notifier; the format and 
+     *        meaning of this depends on the notifier.
+     * @param aResponse Response data from the notifier; the format and meaning 
+     *        of this depends on the notifier.
+     */
+    IMPORT_C void StartNotifierAndGetResponse( TRequestStatus& aRs, 
+                TUid aNotifierUid, const TDesC8& aBuffer, TDes8& aResponse );
+
+    /**
+     * Requests the Bluetooth notifier server to cancel the notifier 
+     * identified by the specified UID. The request is synchronous; 
+     * the call returns when the request is complete.
+     *
+     * @since Symbian^4
+     * @param aNotifierUid The UID identifying the notifier. This is 
+     *        the same UID as used with RNotifier for the same purpose.
+     * @return KErrNone, if successful; KErrNotFound, if there 
+     *         is no notifier matching the specified UID; otherwise 
+     *         one of the other system-wide error codes.
+     */
+    IMPORT_C TInt CancelNotifier( TUid aNotifierUid );
+
+    /**
+     * Requests the Bluetooth notifier server to update the active
+     * notifier identified by the specified UID, with the data supplied.
+     * The request is synchronous; the call returns when the request is complete.
+     *
+     * @since Symbian^4
+     * @param aNotifierUid The UID identifying the notifier. This is 
+     *        the same UID as used with RNotifier for the same purpose.
+     * @param aBuffer Data that can be passed to the notifier; the format and 
+     *        meaning of this depends on the notifier.
+     * @param aResponse Response data from the notifier; the format and meaning 
+     *        of this depends on the notifier.
+     * @return KErrNone, if successful; KErrNotFound, if there 
+     *         is no notifier matching the specified UID; otherwise 
+     *         one of the other system-wide error codes.
+     */
+    IMPORT_C TInt UpdateNotifier( TUid aNotifierUid, 
+                const TDesC8& aBuffer, TDes8& aResponse );
+
+    /**
+     * Requests the Bluetooth notifier server to pair with the device 
+     * specified by the given Bluetooth device address.
+     * The request is asynchronous; Use CancelPairing() to cancel
+     * an outstanding pairing request.
+     *
+     * @since Symbian^4
+     * @param aAddr The address of the remote device to perform pairing with.
+     * @param aDeviceClass the CoD of the remote device.
+     * @param aStatus The request status. On request completion, contains KErrNone, 
+     *        if successful; KErrCancel, if the notifier was cancelled through 
+     *        RBTNotifier::CancelPair; otherwise, one of the other system 
+     *        wide error codes.
+     */
+    IMPORT_C void PairDevice( const TBTDevAddrPckgBuf& aAddr, TInt32 aDeviceClass,
+                TRequestStatus& aStatus );
+    
+    /**
+     * Requests the Bluetooth notifier server to cancel the current pairing 
+     * request. The request is synchronous; 
+     * the call returns when the request is complete.
+     * 
+     * If this request is issued when the Bluetooth
+     * notifier server has completed pairing with the device, the pairing 
+     * will not be un-done. That is, the device will not be unpaired. 
+     *
+     * @since Symbian^4
+     */
+    IMPORT_C void CancelPairDevice();
+
+private:
+
+private: // data
+
+    /**
+     * ?description_of_member
+     */
+//    ?type ?member_name;
+
+    };
+
+#endif // RBTNOTIFCLIENT_H