1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-26 09:48:45 -05:00
sdrangel/devices
Andreas Baulig 94ab1bb438
Use shared_ptr to keep track of DeviceScan across multiple collections
Fixes #681.

Relying on memory allocated by `std::vector` via direct pointers is dangerous,
as vectors may move buffers during resize. This fix puts the `DeviceScan`
allocation into a `str::shared_ptr`, which 1) allocates the memory on heap and
2) keeps track of the memory through reference counting. Thus it is safe to
store the `shared_ptr` across different vectors/maps.
2021-05-30 09:34:46 +00:00
..
bladerf1
bladerf2
hackrf
limesdr
metis
perseus
plutosdr
soapysdr
usrp
xtrx
CMakeLists.txt
readme.md

Devices common resources

This folder contains classes and methods that can be used by different plugins that work with a common physical device or via network. Thus this can be one of the following devices:

  • BladeRF1: one Rx and one Tx full duplex. Plugins are:

    • bladerf1input
    • bladerf1output
  • BladeRF2: 2 Rx and 2 Tx full duplex (BladeRF 2.0 micro). Plugins are:

    • bladerf2input
    • bladerf2output
  • HackRF: one Rx and one Tx half duplex. Plugins are:

    • hackrfinput
    • hackrfoutput
  • LimeSDR: 2 Rx and 2 Tx full duplex (Lime-USB). 1 Rx and 1 Tx full duplex (Lime-Mini). Plugins are

    • limesdrinput
    • limesdroutput
  • PlutoSDR: one Rx and one Tx full duplex. Plugins are

    • plutosdrinput
    • plutosdroutput
  • SoapySDR: Soapy SDR virtual device

    • soapysdrinput
    • soapysdroutput
  • USRP: Up to 2 Rx and 2 Tx full duplex. Plugins are

    • usrpinput
    • usrpoutput