USRP Hardware Driver and USRP Manual  Version: 4.7.0.0
UHD and USRP Manual
usrp_clock.h
Go to the documentation of this file.
1 //
2 // Copyright 2015 Ettus Research LLC
3 // Copyright 2018 Ettus Research, a National Instruments Company
4 //
5 // SPDX-License-Identifier: GPL-3.0-or-later
6 //
7 
8 #pragma once
9 
10 #include <uhd/config.h>
11 #include <uhd/error.h>
12 #include <uhd/types/sensors.h>
14 
15 #include <stdint.h>
16 #include <stdlib.h>
17 #include <time.h>
18 
19 /****************************************************************************
20  * Public Datatypes for USRP clock
21  ***************************************************************************/
22 struct uhd_usrp_clock;
23 
25 
31 typedef struct uhd_usrp_clock* uhd_usrp_clock_handle;
32 
33 /****************************************************************************
34  * Make / Free API calls
35  ***************************************************************************/
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
41 
44 UHD_API uhd_error uhd_usrp_clock_find(const char* args, uhd_string_vector_t* devices_out);
45 
47 
52 
54 
59 
62  uhd_usrp_clock_handle h, char* error_out, size_t strbuffer_len);
63 
66  uhd_usrp_clock_handle h, char* pp_string_out, size_t strbuffer_len);
67 
70  uhd_usrp_clock_handle h, size_t* num_boards_out);
71 
74  uhd_usrp_clock_handle h, size_t board, uint32_t* clock_time_out);
75 
78  const char* name,
79  size_t board,
80  uhd_sensor_value_handle* sensor_value_out);
81 
84  uhd_usrp_clock_handle h, size_t board, uhd_string_vector_handle* sensor_names_out);
85 
86 #ifdef __cplusplus
87 }
88 #endif
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_API uhd_error uhd_usrp_clock_free(uhd_usrp_clock_handle *h)
Safely destroy the clock object underlying the handle.
struct uhd_string_vector_t uhd_string_vector_t
Definition: string_vector.h:31
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_API uhd_error uhd_usrp_clock_make(uhd_usrp_clock_handle *h, const char *args)
Create a clock handle.
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_API uhd_error uhd_usrp_clock_get_num_boards(uhd_usrp_clock_handle h, size_t *num_boards_out)
Get number of boards.
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_API uhd_error uhd_usrp_clock_find(const char *args, uhd_string_vector_t *devices_out)
Find all connected clock devices.
uhd_error
UHD error codes.
Definition: error.h:20
uhd_string_vector_t * uhd_string_vector_handle
Definition: string_vector.h:33
#define UHD_API
Definition: config.h:87
struct uhd_sensor_value_t * uhd_sensor_value_handle
C-level interface for a UHD sensor.
Definition: sensors.h:35
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_API uhd_error uhd_usrp_clock_last_error(uhd_usrp_clock_handle h, char *error_out, size_t strbuffer_len)
Get last error.