mbed-os/connectivity/nanostack/mbed-mesh-api/source/include/enet_tasklet.h

77 lines
1.9 KiB
C

/*
* Copyright (c) 2016 ARM Limited. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
* Licensed under the Apache License, Version 2.0 (the License); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ENET_TASKLET_H
#define ENET_TASKLET_H
#include "mesh_interface_types.h"
#ifdef __cplusplus
extern "C" {
#endif
/*
* \brief Initialize system.
*/
void enet_tasklet_init(void);
/*
* \brief Create network interface.
*
* \param device_id Registered physical device.
* \return interface ID used to communication with this interface.
*/
int8_t enet_tasklet_network_init(int8_t device_id);
/*
* \brief Create PPP network interface.
*
* \param device_id Registered physical device.
* \return interface ID used to communication with this interface.
*/
int8_t enet_tasklet_ppp_network_init(int8_t device_id);
/*
* \brief Connect to Ethernet network.
*
* \param callback Call when network state changes.
* \param nwk_interface_id To use for networking.
*
*/
int8_t enet_tasklet_connect(void (*)(mesh_connection_status_t mesh_status), int8_t nwk_interface_id);
/*
* \brief Disconnect network interface.
*
* \param send_cb Send possible network status change event if set to `true`.
* \return >= 0 if disconnected successfully.
* \return < 0 if error.
*/
int8_t enet_tasklet_disconnect(bool send_cb);
/*
* \brief Callback to call when the link state changes.
*
* \param up Tells if link is up or down.
*/
void enet_tasklet_link_state_changed(bool up);
#ifdef __cplusplus
}
#endif
#endif // ENET_TASKLET_H