10b50beb5SMatthias Ringwald /* 20b50beb5SMatthias Ringwald * Copyright (C) 2014 BlueKitchen GmbH 30b50beb5SMatthias Ringwald * 40b50beb5SMatthias Ringwald * Redistribution and use in source and binary forms, with or without 50b50beb5SMatthias Ringwald * modification, are permitted provided that the following conditions 60b50beb5SMatthias Ringwald * are met: 70b50beb5SMatthias Ringwald * 80b50beb5SMatthias Ringwald * 1. Redistributions of source code must retain the above copyright 90b50beb5SMatthias Ringwald * notice, this list of conditions and the following disclaimer. 100b50beb5SMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright 110b50beb5SMatthias Ringwald * notice, this list of conditions and the following disclaimer in the 120b50beb5SMatthias Ringwald * documentation and/or other materials provided with the distribution. 130b50beb5SMatthias Ringwald * 3. Neither the name of the copyright holders nor the names of 140b50beb5SMatthias Ringwald * contributors may be used to endorse or promote products derived 150b50beb5SMatthias Ringwald * from this software without specific prior written permission. 160b50beb5SMatthias Ringwald * 4. Any redistribution, use, or modification is done solely for 170b50beb5SMatthias Ringwald * personal benefit and not for any commercial purpose or for 180b50beb5SMatthias Ringwald * monetary gain. 190b50beb5SMatthias Ringwald * 200b50beb5SMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS 210b50beb5SMatthias Ringwald * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 220b50beb5SMatthias Ringwald * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 230b50beb5SMatthias Ringwald * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS 240b50beb5SMatthias Ringwald * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 250b50beb5SMatthias Ringwald * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 260b50beb5SMatthias Ringwald * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 270b50beb5SMatthias Ringwald * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 280b50beb5SMatthias Ringwald * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 290b50beb5SMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 300b50beb5SMatthias Ringwald * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 310b50beb5SMatthias Ringwald * SUCH DAMAGE. 320b50beb5SMatthias Ringwald * 330b50beb5SMatthias Ringwald * Please inquire about commercial licensing options at 340b50beb5SMatthias Ringwald * [email protected] 350b50beb5SMatthias Ringwald * 360b50beb5SMatthias Ringwald */ 370b50beb5SMatthias Ringwald 380b50beb5SMatthias Ringwald /* 390b50beb5SMatthias Ringwald * btstack.h 400b50beb5SMatthias Ringwald * Convenience header to include all public APIs 410b50beb5SMatthias Ringwald */ 420b50beb5SMatthias Ringwald 430b50beb5SMatthias Ringwald 4480e33422SMatthias Ringwald #ifndef BTSTACK_H 4580e33422SMatthias Ringwald #define BTSTACK_H 460b50beb5SMatthias Ringwald 477907f069SMatthias Ringwald #include "btstack_config.h" 480b50beb5SMatthias Ringwald 4936cf8ec8SMilanka Ringwald #include "ad_parser.h" 500b50beb5SMatthias Ringwald #include "bluetooth.h" 5184e3541eSMilanka Ringwald #include "bluetooth_psm.h" 5236cf8ec8SMilanka Ringwald #include "bluetooth_company_id.h" 53c8771c20SMatthias Ringwald #include "bluetooth_data_types.h" 54c8771c20SMatthias Ringwald #include "bluetooth_gatt.h" 55779b256eSMatthias Ringwald #include "bluetooth_sdp.h" 562ab2c985SMatthias Ringwald #include "btstack_audio.h" 57dc4b18a4SMatthias Ringwald #include "btstack_control.h" 58b673498bSMatthias Ringwald #include "btstack_crypto.h" 5916ece135SMatthias Ringwald #include "btstack_debug.h" 60dc4b18a4SMatthias Ringwald #include "btstack_defines.h" 6136cf8ec8SMilanka Ringwald #include "btstack_event.h" 623cbedd43SMatthias Ringwald #include "btstack_hid.h" 6312ccb71bSMatthias Ringwald #include "btstack_hid_parser.h" 64dc4b18a4SMatthias Ringwald #include "btstack_linked_list.h" 65dc4b18a4SMatthias Ringwald #include "btstack_memory.h" 66dc4b18a4SMatthias Ringwald #include "btstack_memory_pool.h" 67a7473022SMatthias Ringwald #include "btstack_network.h" 68dd0cd63eSMatthias Ringwald #include "btstack_ring_buffer.h" 69dc4b18a4SMatthias Ringwald #include "btstack_run_loop.h" 7036cf8ec8SMilanka Ringwald #include "btstack_stdin.h" 71dc4b18a4SMatthias Ringwald #include "btstack_util.h" 720b50beb5SMatthias Ringwald #include "gap.h" 730b50beb5SMatthias Ringwald #include "hci.h" 7456042629SMatthias Ringwald #include "hci_cmd.h" 750b50beb5SMatthias Ringwald #include "hci_dump.h" 760b50beb5SMatthias Ringwald #include "hci_transport.h" 770b50beb5SMatthias Ringwald #include "l2cap.h" 780b50beb5SMatthias Ringwald #include "l2cap_signaling.h" 790b50beb5SMatthias Ringwald 80a9a4c409SMatthias Ringwald #ifdef ENABLE_BLE 81591423b2SMatthias Ringwald #include "ble/att_db.h" 820b50beb5SMatthias Ringwald #include "ble/att_db_util.h" 830b50beb5SMatthias Ringwald #include "ble/att_dispatch.h" 840b50beb5SMatthias Ringwald #include "ble/att_server.h" 856bdecec7SMatthias Ringwald #include "ble/gatt-service/ancs_client.h" 866bdecec7SMatthias Ringwald #include "ble/gatt-service/battery_service_client.h" 870b8dd114SMilanka Ringwald #include "ble/gatt-service/battery_service_server.h" 88*f229ad0aSMilanka Ringwald #include "ble/gatt-service/bond_management_service_server.h" 890b8dd114SMilanka Ringwald #include "ble/gatt-service/cycling_power_service_server.h" 900b8dd114SMilanka Ringwald #include "ble/gatt-service/cycling_speed_and_cadence_service_server.h" 916bdecec7SMatthias Ringwald #include "ble/gatt-service/device_information_service_client.h" 920b8dd114SMilanka Ringwald #include "ble/gatt-service/device_information_service_server.h" 930b8dd114SMilanka Ringwald #include "ble/gatt-service/heart_rate_service_server.h" 94fc975d0eSMilanka Ringwald #include "ble/gatt-service/hids_client.h" 950b8dd114SMilanka Ringwald #include "ble/gatt-service/hids_device.h" 96*f229ad0aSMilanka Ringwald #include "ble/gatt-service/microphone_control_service_server.h" 9778ae886bSMilanka Ringwald #include "ble/gatt-service/scan_parameters_service_client.h" 9889974af9SMilanka Ringwald #include "ble/gatt-service/scan_parameters_service_server.h" 99*f229ad0aSMilanka Ringwald #include "ble/gatt-service/tx_power_service_server.h" 100d6915e6fSMatthias Ringwald #ifdef ENABLE_MESH 101d6915e6fSMatthias Ringwald #include "ble/gatt-service/mesh_provisioning_service_server.h" 102d6915e6fSMatthias Ringwald #include "ble/gatt-service/mesh_proxy_service_server.h" 103d6915e6fSMatthias Ringwald #endif 1040b50beb5SMatthias Ringwald #include "ble/gatt_client.h" 1050b50beb5SMatthias Ringwald #include "ble/le_device_db.h" 1060b50beb5SMatthias Ringwald #include "ble/sm.h" 1070b50beb5SMatthias Ringwald #endif 1080b50beb5SMatthias Ringwald 109f45d1a4eSMatthias Ringwald #ifdef ENABLE_CLASSIC 11036cf8ec8SMilanka Ringwald #include "classic/a2dp_sink.h" 11136cf8ec8SMilanka Ringwald #include "classic/a2dp_source.h" 11236cf8ec8SMilanka Ringwald #include "classic/avdtp.h" 11336cf8ec8SMilanka Ringwald #include "classic/avdtp_acceptor.h" 11436cf8ec8SMilanka Ringwald #include "classic/avdtp_initiator.h" 11536cf8ec8SMilanka Ringwald #include "classic/avdtp_sink.h" 11636cf8ec8SMilanka Ringwald #include "classic/avdtp_source.h" 117c4c891e9SMilanka Ringwald #include "classic/avdtp_util.h" 11836cf8ec8SMilanka Ringwald #include "classic/avrcp.h" 119665a00cbSMilanka Ringwald #include "classic/avrcp_browsing.h" 120954cc391SMilanka Ringwald #include "classic/avrcp_browsing_controller.h" 121654724deSMilanka Ringwald #include "classic/avrcp_browsing_target.h" 1226983e65eSMilanka Ringwald #include "classic/avrcp_controller.h" 123954cc391SMilanka Ringwald #include "classic/avrcp_media_item_iterator.h" 1246983e65eSMilanka Ringwald #include "classic/avrcp_target.h" 1250b50beb5SMatthias Ringwald #include "classic/bnep.h" 126efda0b48SMatthias Ringwald #include "classic/btstack_link_key_db.h" 1273dfd0eb6SMilanka Ringwald #include "classic/btstack_sbc.h" 12859fb9ebdSMatthias Ringwald #include "classic/device_id_server.h" 129e5836bafSMatthias Ringwald #include "classic/gatt_sdp.h" 1300b50beb5SMatthias Ringwald #include "classic/hfp.h" 1310b50beb5SMatthias Ringwald #include "classic/hfp_ag.h" 1320b50beb5SMatthias Ringwald #include "classic/hfp_hf.h" 133d40c9ac6SMatthias Ringwald #include "classic/hid_device.h" 13463bf37cdSMilanka Ringwald #include "classic/hid_host.h" 1350b50beb5SMatthias Ringwald #include "classic/hsp_ag.h" 1360b50beb5SMatthias Ringwald #include "classic/hsp_hs.h" 1370b50beb5SMatthias Ringwald #include "classic/pan.h" 1380b50beb5SMatthias Ringwald #include "classic/rfcomm.h" 1390b50beb5SMatthias Ringwald #include "classic/sdp_client.h" 140efda0b48SMatthias Ringwald #include "classic/sdp_client_rfcomm.h" 141efda0b48SMatthias Ringwald #include "classic/sdp_server.h" 1420b50beb5SMatthias Ringwald #include "classic/sdp_util.h" 143efda0b48SMatthias Ringwald #include "classic/spp_server.h" 144f45d1a4eSMatthias Ringwald #endif 1450b50beb5SMatthias Ringwald 146d6915e6fSMatthias Ringwald #ifdef ENABLE_MESH 14739018edaSMilanka Ringwald #include "ble/gatt-service/mesh_provisioning_service_server.h" 14839018edaSMilanka Ringwald #include "ble/gatt-service/mesh_proxy_service_server.h" 149d6915e6fSMatthias Ringwald #include "mesh/adv_bearer.h" 150d6915e6fSMatthias Ringwald #include "mesh/beacon.h" 151d6915e6fSMatthias Ringwald #include "mesh/gatt_bearer.h" 152f4854a5eSMatthias Ringwald #include "mesh/mesh.h" 153f4854a5eSMatthias Ringwald #include "mesh/mesh_access.h" 154cc2a5f42SMilanka Ringwald #include "mesh/mesh_configuration_client.h" 155f4854a5eSMatthias Ringwald #include "mesh/mesh_configuration_server.h" 156d6915e6fSMatthias Ringwald #include "mesh/mesh_crypto.h" 157f4854a5eSMatthias Ringwald #include "mesh/mesh_foundation.h" 15885dc67fcSMilanka Ringwald #include "mesh/mesh_generic_default_transition_time_client.h" 15907affd82SMilanka Ringwald #include "mesh/mesh_generic_default_transition_time_server.h" 16039018edaSMilanka Ringwald #include "mesh/mesh_generic_level_client.h" 16139018edaSMilanka Ringwald #include "mesh/mesh_generic_level_server.h" 162f4854a5eSMatthias Ringwald #include "mesh/mesh_generic_model.h" 16339018edaSMilanka Ringwald #include "mesh/mesh_generic_on_off_client.h" 16439018edaSMilanka Ringwald #include "mesh/mesh_generic_on_off_server.h" 16539018edaSMilanka Ringwald #include "mesh/mesh_health_server.h" 166f77356eeSMatthias Ringwald #include "mesh/mesh_iv_index_seq_number.h" 167f4854a5eSMatthias Ringwald #include "mesh/mesh_proxy.h" 168d6915e6fSMatthias Ringwald #include "mesh/mesh_upper_transport.h" 169f4854a5eSMatthias Ringwald #include "mesh/mesh_virtual_addresses.h" 170d6915e6fSMatthias Ringwald #include "mesh/pb_adv.h" 171d6915e6fSMatthias Ringwald #include "mesh/pb_gatt.h" 172f4854a5eSMatthias Ringwald #include "mesh/provisioning.h" 173f4854a5eSMatthias Ringwald #include "mesh/provisioning_device.h" 17439018edaSMilanka Ringwald #include "mesh/provisioning_provisioner.h" 175d6915e6fSMatthias Ringwald #endif 1760b50beb5SMatthias Ringwald 177d6915e6fSMatthias Ringwald #endif // __BTSTACK_H 178