| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
|
|
|
| |
Signed-off-by: Josh Morman <jmorman@gnuradio.org>
|
|
|
|
|
|
|
|
| |
MAKE_CUSTOM_BUFFER_TYPE macro function to DEFINE_CUSTOM_BUFFER_TYPE;
mark unused parameters from virtual functions with the
[[maybe_unused]] C++ attribute
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
| |
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Completion of custom buffer/accelerator device support changes:
* Improved custom buffer interface by removing awkward memory
allocation functions from the block class
* Increased flexibility for creating custom buffers by allowing
creation of buffer_single_mapped subclasses
* Fully incorporated data movement abstraction into the custom
buffer interface and the runtime itself; accelerated blocks are no
longer directly responsible for their own data movement
* Zero copy back-to-back accelerated blocks are now supported (data
no longer needs to be moved back to the host between each block)
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
Signed-off-by: Mike Mason <mike.mason@blacklynx.tech>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Custom Buffer/Accelerator Device Support - Milestone 1 changes:
* Refactored existing single mapped buffer code and created single
mapped buffer abstraction; wrapping within single mapped buffers
is handled explicitly by input blocked and output blocked
callbacks that are called from block_executor
* Added simple custom buffer allocation interface (NOTE: this
interface will change for milestone 2)
* Accelerated blocks are still responsible for data transfer but the
custom buffer interface eliminates the double copy problem
Signed-off-by: David Sorber <david.sorber@blacklynx.tech>
|
|
|
|
|
|
|
|
| |
used command:
sed -i '/^#include.*boost.*$/d' $(ag -L '(boost::|BOOST)' $(ag --cpp -l '#include <boost'))
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
| |
|
|
|
|
|
|
| |
The remaining ones:
* `pmt_pool.cc`, which is a memory allocator so that makes sense
* the tricky and aptly named `sptr_magic.cc`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of this code is automated code changes:
```
set -e
SUB="s/dummy/dummy/"
for i in shared_ptr make_shared dynamic_pointer_cast weak_ptr enable_shared_from_this get_deleter; do
SUB="$SUB;s/boost::$i/std::$i/g"
done
SUB="$SUB;s^#include <boost/shared_ptr.hpp>^#include <memory>^g"
SUB="$SUB;s^namespace boost^namespace std^g"
find . \( -name "*.cc" -o -name "*.h" -o -name "*.i" -o -name "*.cxx" -o -name "*.py" \) -print0 | xargs -0 sed -i "$SUB"
```
Only one manual change. In `./gr-fec/lib/fec_mtrx_impl.cc`, add
`#include <algorithm>`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang-format: ordering includes in gnuradio-runtime
clang-format: ordering includes in gr-filter
clang-format: ordering includes in gr-fft
clang-format: ordering includes in gr-audio
clang-format: ordering includes in gr-analog
clang-format: ordering includes in gr-fec
clang-format: ordering includes in gr-wavelet
clang-format: ordering includes in gr-zeromq
clang-format: ordering includes in gr-vocoder
clang-format: ordering includes in gr-video-sdl
clang-format: ordering includes in gr-trellis
clang-format: ordering includes in gr-blocks
clang-format: ordering includes in gr-digital
clang-format: ordering includes in gr-uhd
clang-format: ordering includes in gr-dtv
clang-format: ordering includes in gr-channels
clang-format: ordering includes in gr-qtgui
clang_format.py: re-enable include reordering
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When disconnecting and reconnecting, buffers can change and new
buffers will have their item counters zeroed out. Buffers held over
will keep their current item counters at some value >> 0. In the case
of the pfb_arb_resampler of issue #713, the rate update in the
scheduler was getting confusing numbers and setting the rates to
ridiculous values. Also, tags emitted from these new blocks will have
offsets meaningless to the other blocks that held on to their buffers.
This patch tells the scheduler to reset all buffer item counters (read
and write) to 0 when connections are merged and also makes sure all
tags are cleared from each block's input buffers. So upon a
lock/unlock and reset event, all buffers' counters and tag containers
are reset/cleared.
|
| |
|
|
|
|
|
|
| |
Reintroduced qa_gr_block and added t2 tests to get input/output buffer size and base.
Need to include buffer.h, block.h, and block_detail.h when calling these in a block's work function.
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Moritz Fischer <moritz@ettus.com>
|
| |
|
|
|
|
|
|
| |
according to the delay. Since group delay is often unknown, we have added a new function set_group_delay to allow the user to set the value once delay is calculated.
Also added ability to set the tag propagation delay, which is required for how the blocks::delay works.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Catches up runtime_pimpl branch with changes on next since
the initial branch start.
Conflicts:
gnuradio-runtime/include/gnuradio/constants.h
gnuradio-runtime/include/gnuradio/tags.h
gnuradio-runtime/include/gr_block_detail.h
gnuradio-runtime/include/gr_buffer.h
gnuradio-runtime/lib/CMakeLists.txt
gnuradio-runtime/lib/gr_block.cc
gnuradio-runtime/lib/gr_block_detail.cc
gnuradio-runtime/lib/gr_block_executor.cc
gnuradio-runtime/lib/gr_buffer.cc
gnuradio-runtime/lib/gr_realtime.cc
gr-blocks/lib/interleaved_short_to_complex_impl.cc
|
|
|