Mistake on this page?
Report an issue in GitHub or email us
NRFCordioHCITransportDriver.h
1 /* mbed Microcontroller Library
2  * Copyright (c) 2017-2018 ARM Limited
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef NRF_CORDIO_HCI_TRANSPORT_DRIVER_H_
19 #define NRF_CORDIO_HCI_TRANSPORT_DRIVER_H_
20 
21 #include "ble/driver/CordioHCITransportDriver.h"
22 
23 namespace ble {
24 
25 
26 /**
27  * Nordic port of CordioHCITransportDriver
28  */
30 public:
31  /**
32  * Driver destructor.
33  */
35 
36  /**
37  * Inialization of the transport.
38  */
39  virtual void initialize();
40 
41  /**
42  * termination of the transport.
43  */
44  virtual void terminate();
45 
46  /**
47  * Write data in the transport channel.
48  *
49  * @param type The type of packet to transmit. It might be an HCI command
50  * packet, ACL packet or EVT packet. Depending on the type of transport
51  * it can prefix the packet itself.
52  * @param len Number of bytes to transmit.
53  * @param pData Pointer to the data to transmit. This is an WSF buffer
54  * and if CORDIO_ZERO_COPY_HCI is enabled we receive ownership.
55  *
56  * @return The number of bytes which have been transmited.
57  */
58  virtual uint16_t write(uint8_t type, uint16_t len, uint8_t *pData);
59 };
60 
61 } // namespace ble
62 
63 #endif /* NRF_CORDIO_HCI_TRANSPORT_DRIVER_H_ */
Base class of the HCI transport driver.
Nordic port of CordioHCITransportDriver.
virtual ~NRFCordioHCITransportDriver()
Driver destructor.
virtual void terminate()
termination of the transport.
virtual uint16_t write(uint8_t type, uint16_t len, uint8_t *pData)
Write data in the transport channel.
virtual void initialize()
Inialization of the transport.
Entry namespace for all BLE API definitions.
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.