mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-23 18:52:28 -04:00
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.
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