Loading...
Searching...
No Matches
usrp_clock.h
Go to the documentation of this file.
//
// Copyright 2015 Ettus Research LLC
// Copyright 2018 Ettus Research, a National Instruments Company
//
// SPDX-License-Identifier: GPL-3.0-or-later
//
#pragma once
#include <uhd/config.h>
#include <uhd/error.h>
#include <uhd/types/sensors.h>
#include <uhd/types/string_vector.h>
#include <stdint.h>
#include <stdlib.h>
#include <time.h>
/****************************************************************************
* Public Datatypes for USRP clock
***************************************************************************/
struct uhd_usrp_clock;
typedef struct uhd_usrp_clock* uhd_usrp_clock_handle;
/****************************************************************************
* Make / Free API calls
***************************************************************************/
#ifdef __cplusplus
extern "C" {
#endif
UHD_API uhd_error uhd_usrp_clock_find(const char* args, uhd_string_vector_t* devices_out);
UHD_API uhd_error uhd_usrp_clock_make(uhd_usrp_clock_handle* h, const char* args);
UHD_API uhd_error uhd_usrp_clock_free(uhd_usrp_clock_handle* h);
UHD_API uhd_error uhd_usrp_clock_last_error(
uhd_usrp_clock_handle h, char* error_out, size_t strbuffer_len);
UHD_API uhd_error uhd_usrp_clock_get_pp_string(
uhd_usrp_clock_handle h, char* pp_string_out, size_t strbuffer_len);
UHD_API uhd_error uhd_usrp_clock_get_num_boards(
uhd_usrp_clock_handle h, size_t* num_boards_out);
UHD_API uhd_error uhd_usrp_clock_get_time(
uhd_usrp_clock_handle h, size_t board, uint32_t* clock_time_out);
UHD_API uhd_error uhd_usrp_clock_get_sensor(uhd_usrp_clock_handle h,
const char* name,
size_t board,
uhd_sensor_value_handle* sensor_value_out);
UHD_API uhd_error uhd_usrp_clock_get_sensor_names(
uhd_usrp_clock_handle h, size_t board, uhd_string_vector_handle* sensor_names_out);
#ifdef __cplusplus
}
#endif
config.h
UHD_API
#define UHD_API
Definition config.h:87
error.h
uhd_error
uhd_error
UHD error codes.
Definition error.h:20
sensors.h
uhd_sensor_value_handle
struct uhd_sensor_value_t * uhd_sensor_value_handle
C-level interface for a UHD sensor.
Definition sensors.h:35
string_vector.h
uhd_string_vector_t
struct uhd_string_vector_t uhd_string_vector_t
Definition string_vector.h:31
uhd_string_vector_handle
uhd_string_vector_t * uhd_string_vector_handle
Definition string_vector.h:33
uhd_usrp_clock_free
UHD_API uhd_error uhd_usrp_clock_free(uhd_usrp_clock_handle *h)
Safely destroy the clock object underlying the handle.
uhd_usrp_clock_get_time
UHD_API uhd_error uhd_usrp_clock_get_time(uhd_usrp_clock_handle h, size_t board, uint32_t *clock_time_out)
Get time.
uhd_usrp_clock_find
UHD_API uhd_error uhd_usrp_clock_find(const char *args, uhd_string_vector_t *devices_out)
Find all connected clock devices.
uhd_usrp_clock_get_sensor_names
UHD_API uhd_error uhd_usrp_clock_get_sensor_names(uhd_usrp_clock_handle h, size_t board, uhd_string_vector_handle *sensor_names_out)
Get sensor names.
uhd_usrp_clock_get_num_boards
UHD_API uhd_error uhd_usrp_clock_get_num_boards(uhd_usrp_clock_handle h, size_t *num_boards_out)
Get number of boards.
uhd_usrp_clock_get_sensor
UHD_API uhd_error uhd_usrp_clock_get_sensor(uhd_usrp_clock_handle h, const char *name, size_t board, uhd_sensor_value_handle *sensor_value_out)
Get sensor.
uhd_usrp_clock_handle
struct uhd_usrp_clock * uhd_usrp_clock_handle
A C-level interface for interacting with an Ettus Research clock device.
Definition usrp_clock.h:31
uhd_usrp_clock_get_pp_string
UHD_API uhd_error uhd_usrp_clock_get_pp_string(uhd_usrp_clock_handle h, char *pp_string_out, size_t strbuffer_len)
Get board information in a nice output.
uhd_usrp_clock_last_error
UHD_API uhd_error uhd_usrp_clock_last_error(uhd_usrp_clock_handle h, char *error_out, size_t strbuffer_len)
Get last error.
uhd_usrp_clock_make
UHD_API uhd_error uhd_usrp_clock_make(uhd_usrp_clock_handle *h, const char *args)
Create a clock handle.