xref: /haiku/headers/os/bluetooth/DiscoveryAgent.h (revision a381c8a06378de22ff08adf4282b4e3f7e50d250)
1 /*
2  * Copyright 2007 Oliver Ruiz Dorantes, oliver.ruiz.dorantes_at_gmail.com
3  *
4  * All rights reserved. Distributed under the terms of the MIT License.
5  *
6  */
7 
8 #ifndef _DISCOVERY_AGENT_H
9 #define _DISCOVERY_AGENT_H
10 
11 #include <bluetooth/bluetooth.h>
12 
13 #define B_BT_CACHED 0x00
14 #define B_BT_PREKNOWN 0x01
15 #define B_BT_NOT_DISCOVERABLE 0x01
16 
17 #define B_BT_GIAC 0x9E8B33
18 #define B_BT_LIAC 0x9E8B00
19 
20 namespace Bluetooth {
21 
22 class DiscoveryListener;
23 class RemoteDevice;
24 
25 class DiscoveryAgent {
26 
27     public:
28 
29         static const int GIAC = B_BT_GIAC;
30         static const int LIAC = B_BT_LIAC;
31 
32         static const int PREKNOWN = B_BT_PREKNOWN;
33         static const int CACHED = B_BT_CACHED;
34         static const int NOT_DISCOVERABLE = B_BT_NOT_DISCOVERABLE;
35 
36         RemoteDevice** RetrieveDevices(int option); /* TODO */
37         bool StartInquiry(int accessCode, DiscoveryListener listener); /* Throwing */
38         bool CancelInquiry(DiscoveryListener listener);
39 
40         /*
41         int searchServices(int[] attrSet,
42                                UUID[] uuidSet,
43                                RemoteDevice btDev,
44                                DiscoveryListener discListener);
45 
46         bool cancelServiceSearch(int transID);
47         BString selectService(UUID uuid, int security, boolean master);
48         */
49 
50     private:
51         DiscoveryAgent();
52 
53 };
54 
55 }
56 
57 #endif
58