/*
 * Copyright (C) 2021 Satlab A/S (https://www.satlab.com)
 *
 * This file is part of CSP. See COPYING for details.
 */

#ifndef _CSP_IF_SLTCP_H_
#define _CSP_IF_SLTCP_H_

#include "csp.h"
#include "csp_interface.h"


/**
   Default name of SLTCP interface.
*/
/** Default interface name for ground station 1 */
#define CSP_IF_SLTCP_DEFAULT_NAME	"SLTCP_GS1"
/** Default interface name for ground station 2 */  
#define CSP_IF_SLTCP_DEFAULT_NAME_GS2	"SLTCP_GS2"
/** Default interface name for UHF */
#define CSP_IF_SLTCP_DEFAULT_NAME_UHF	"SLTCP_UHF"

/**
   Setup SLTCP interface.
   @param[in] device Ethernet device to bind and read address prefix from.
   @param[in] ifname Name of CSP interface, use NULL for default name #CSP_IF_SLTCP_DEFAULT_NAME.
   @param[out] ifc Created CSP interface.
   @return #CSP_ERR_NONE on succcess - else assert.
*/
int csp_sltcp_init_gs1(const char *device, const char *ifname, csp_iface_t **ifc);

int csp_sltcp_init_gs2(const char *device, const char *ifname, csp_iface_t **ifc);

int csp_sltcp_init_uhf(const char *device, const char *ifname, csp_iface_t **ifc);

#endif /* _CSP_IF_SLTCP_H_ */
