An Overlay-based
Virtual Network Substrate
SpoVNet

source: source/ariba/utility/transport/rfcomm/bluetooth_rfcomm.hpp @ 10653

Last change on this file since 10653 was 10653, checked in by Michael Tänzer, 7 years ago

Merge the ASIO branch back into trunk

File size: 1.2 KB
Line 
1#ifndef BOOST_ASIO_BLUETOOTH_RFCOMM_HPP__
2#define BOOST_ASIO_BLUETOOTH_RFCOMM_HPP__
3
4#include "bluetooth_endpoint.hpp"
5
6#include <bluetooth/bluetooth.h>
7#include <bluetooth/rfcomm.h>
8
9namespace boost {
10namespace asio {
11namespace bluetooth {
12
13/**
14 * The rfcomm class contains flags necessary for RFCOMM sockets.
15 *
16 * @author Martin Florian <mflorian@lafka.net>
17 */
18class rfcomm {
19public:
20        /// The type of endpoint.
21        typedef bluetooth_endpoint<rfcomm> endpoint;
22
23        /// Get an Instance.
24        /// We need this to fulfill the asio Endpoint requirements, I think.
25        static rfcomm get() {
26                return rfcomm();
27        }
28
29        /// Obtain an identifier for the type of the protocol.
30        int type() const {
31                return SOCK_STREAM;
32        }
33
34        /// Obtain an identifier for the protocol.
35        int protocol() const {
36                return BTPROTO_RFCOMM;
37        }
38
39        /// Obtain an identifier for the protocol family.
40        int family() const {
41                return AF_BLUETOOTH;
42        }
43
44        /// The RFCOMM socket type, lets pray that this will work.
45        typedef basic_stream_socket<rfcomm> socket;
46
47        /// The RFCOMM acceptor type.
48        typedef basic_socket_acceptor<rfcomm> acceptor;
49
50};
51
52}}} // namespace boost::asio::bluetooth
53
54#endif /* BOOST_ASIO_BLUETOOTH_RFCOMM_HPP__ */
Note: See TracBrowser for help on using the repository browser.