File: freesrp_common.h

package info (click to toggle)
gr-osmosdr 0.2.6-4
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 2,184 kB
  • sloc: cpp: 16,440; python: 11,368; xml: 42; ansic: 34; makefile: 16
file content (30 lines) | stat: -rw-r--r-- 744 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef INCLUDED_FREESRP_COMMON_H
#define INCLUDED_FREESRP_COMMON_H

#include <memory>
#include <vector>
#include <string>

#include "osmosdr/ranges.h"

#include <freesrp.hpp>

class freesrp_common
{
protected:
    freesrp_common(const std::string &args);
public:
    static std::vector<std::string> get_devices();

    size_t get_num_channels( void );
    osmosdr::meta_range_t get_sample_rates( void );
    osmosdr::freq_range_t get_freq_range( size_t chan = 0 );
    osmosdr::freq_range_t get_bandwidth_range( size_t chan = 0 );
    double set_freq_corr( double ppm, size_t chan = 0 );
    double get_freq_corr( size_t chan = 0 );
protected:
    static std::shared_ptr<::FreeSRP::FreeSRP> _srp;
    bool _ignore_overflow = false;
};

#endif