OK, tried it and I clearly need to call the "make" functions, otherwise the code segfaults.
On Sat, Jul 15, 2017 at 7:02 PM, Sivan Toledo <stol...@tau.ac.il> wrote: > Like question 1: > > Do I need to "make" the uhd_meta_range_handle or will the call > to uhd_usrp_get_rx_gain_range make it? > > If I need to make it, I assume that I also need to free it. > If I don't need to make it, do I still need to free it? > > On Sat, Jul 15, 2017 at 1:46 PM, Sivan Toledo <stol...@tau.ac.il> wrote: > >> I'm converting a CPP code from UHD 3.8.5 to the C api for 3.10. (The main >> reason for the conversion is that I binaries of my CPP programs don't run >> on both Ubuntu 14 and 16 because of incompatible libboost; hopefully using >> the C API and the Ubuntu uhd-host package will resolve this). >> >> I have a few questions: >> >> 1. Is the following correct, or do I have to "make" the >> string_vector_handle before I pass it to get_rx_gain_names? The manual says >> to always make, but my intuition is that get_rx_gain_names will make it for >> me, given that it gets a pointer to the handle, not the handle itself. >> >> uhd_string_vector_handle gain_names; >> uhd_usrp_get_rx_gain_names(usrp, 0 /* channel */, &gain_names); >> >> 2. Is there a C api version of set_rx_gain >> <https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a8234968ad1fefef299ef9541cc193915> >> (double >> gain, size_t chan=0)? In the header files I found only set_rx_gain but >> with a gain_name argument. The CPP api has two overloaded methods, one with >> a gain-name argument and the other without it. Is the convenience method >> missing from the C API? Can I invoke it by passing NULL for the gain name? >> >> Thanks, Sivan Toledo >> > >
_______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com