mirror of
https://github.com/EttusResearch/uhd.git
synced 2026-10-25 17:36:10 +00:00
Previously, only FBX could use the internal sync feature as there was a hard connection to the FBX Ctrl class in it. This makes it independent and daughterboard drivers now only need to implement the internal_sync_actor class.
39 lines
882 B
C++
39 lines
882 B
C++
//
|
|
// Copyright 2023 Ettus Research, a National Instruments Brand
|
|
//
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
//
|
|
|
|
#pragma once
|
|
|
|
#include <uhd/features/internal_sync_iface.hpp>
|
|
|
|
|
|
namespace uhd { namespace features {
|
|
|
|
/*!
|
|
* This class should serve as starting point for using the internal sync. Currently it
|
|
* only supports switching on and off the 5 MHz Sync Clock. So it has to be extended once
|
|
* more functionality should be required.
|
|
*/
|
|
class internal_sync : public internal_sync_iface
|
|
{
|
|
public:
|
|
internal_sync(uhd::usrp::internal_sync_actor::sptr db_ctrl);
|
|
|
|
/*
|
|
* Enables the sync clock for this daughterboard.
|
|
*/
|
|
void enable_sync_clk() override;
|
|
|
|
|
|
/*
|
|
* Disables the sync clock for this daughterboard.
|
|
*/
|
|
void disable_sync_clk() override;
|
|
|
|
private:
|
|
uhd::usrp::internal_sync_actor::sptr _db_ctrl;
|
|
};
|
|
}} // namespace uhd::features
|