summaryrefslogtreecommitdiff
path: root/gnuradio-runtime
Commit message (Collapse)AuthorAgeFilesLines
* runtime: dummy use argument to make some compiler happyMichael Dickens2018-05-261-1/+2
|
* Merge branch 'maint' through 'last_merge_to_master'Marcus Müller2018-03-306-27/+136
|\ | | | | | | | | | | | | | | This is the last time we're merging 'maint' to 'master'. The 'maint' branch will cease to exist shortly; we'll have a 'maint-3.7' branch. For further information on the new development model: http://lists.gnu.org/archive/html/discuss-gnuradio/2018-02/msg00133.html
| * analog: improve readability of laplacian distributionAndrej Rode2018-03-301-4/+5
| |
| * analog: remove std::time(0) seed from gr::random if 0 is selectedAndrej Rode2018-03-301-3/+6
| | | | | | | | | | Instead the default seed implemented in boost::random is used by calling seed() without arguments
| * runtime: py_feval now includes Python.hMarcus Müller2018-03-301-0/+1
| | | | | | | | | | | | feels like this was an oversight; part of Maitland Bottoms ABI compatibility checker happiness patches: https://sources.debian.org/data/main/g/gnuradio/3.7.11-10/debian/patches/make-acc-happy
| * runtime: proper visibility for gr::sys_pri constantsMarcus Müller2018-03-301-5/+5
| | | | | | | | | | | | From the patches that Maitland Bottoms applies to the source tree to make the debian builds checkable with abi-compliance-checker: https://sources.debian.org/data/main/g/gnuradio/3.7.11-10/debian/patches/make-acc-happy
| * Added XOROSHIRO128+ implementationMarcus Müller2018-03-301-0/+103
| | | | | | | | Header-only implementation, based on Public Domain code.
| * runtime: address floating point roundoff concerns in num_to_str() in ↵Jacob Gilbert2018-03-301-11/+12
| | | | | | | | eng_notation - attempt 2
| * pmt: extract lengths before memcmp #1598Andrej Rode2018-03-301-3/+3
| |
| * pmt: fix for error in pmt::equal() when comparing uniform vectorsJacob Gilbert2018-03-301-1/+1
| |
* | runtime: demoted static const pmt_t members of block:: to constMarcus Müller2018-03-302-7/+8
|/
* runtime: BSD shared memory and threading specificsA. Maitland Bottoms2018-03-272-2/+2
| | | | From the debian patch set
* Test: adds swig dirs to python tests to allow ctest to run on win buildsgnieboer2018-03-222-0/+6
|
* runtime: make py_io_signature iterable, hashableMarcus Müller2018-03-061-1/+10
| | | | | | | This allows GRC to iterate the output signatures of epy blocks after switching over to py_io_signature. Fixes #1666.
* runtime: py_io_signature method documentationMarcus Müller2018-03-061-17/+23
| | | | Only moved code comments to become docstrings.
* runtime: PMT recreation for system bus messages suppressedMarcus Müller2018-02-232-10/+13
| | | | | Cache the port name `pmt::mp("system")` as well as the magic "done" value `pmt::mp("done")` to avoid repeated hashing.
* python gateway: added arg descriptions as docstringsJeff Long2018-02-211-0/+57
|
* python gateway: use range instead of xrange for Python 3 compatibilityJeff Long2018-02-211-4/+4
| | | | | Performance testing shows that the difference between range and xrange is negligable here, using Python 2.7.14.
* python gateway: use tuples instead of lists where possibleJeff Long2018-02-211-4/+4
|
* python gateway: permit a variable number of portsJeff Long2018-02-212-28/+65
| | | | | | | | | | | | | | | | | | | | | C++ block in/out ports are described by io_signature, which holds the min number of ports, max number of ports, and a list of type lengths. If len(type lengths) < max number of ports, the last type is assumed to apply to the remaining ports. When a flowgraph is built, a variable number of ports can be connected. Python block ports are specified using a list of numpy types. The number of ports is fixed in the block specification, and the flowgraph must connect exactly that number of ports. This patch changes the Python behavior (while maintaining backward compatibility) to match the C++ behavior. A new py_io_signature class is used to specify port number limits, along with a list of numpy types, like this: in_sig = gr.py_io_signature(2, -1, ['float32', 'float32']) where in_sig is passed to the block super's __init__ as before.
* Merge branch 'maint'Martin Braun2018-02-035-12/+24
|\
| * fixup! fixup! Use type-generic or float versions of cmath functions where ↵Marcus Müller2018-02-031-1/+1
| | | | | | | | appropriate.
| * Use type-generic or float versions of cmath functions where appropriate.Marcus Müller2018-02-032-2/+4
| | | | | | | | | | Complements gnuradio/gnuradio#1563, larger-scope version of the issue gnuradio/gnuradio#1561 .
| * Use logf where dealing with single precision floatsMarcus Müller2018-02-031-6/+6
| | | | | | | | Fixes gnuradio/gnuradio#1561
| * docs: Add missing information on usage of produce()/consume()rear10192018-02-031-3/+13
| |
| * Replaced redmine URLs.Marcus Müller2018-02-031-1/+1
| |
* | Comment typo fixing.luz.paz2018-02-0323-36/+36
| | | | | | | | Luzpaz went ahead and found typos using `codespell -q 3`.
* | block.h: update documentation on general_work return valueJeff Long2018-02-031-5/+17
| |
* | gnuradio-runtime: Optimize some buffer[_reader]_sptr grabs and releasesAndy Walls2018-02-033-36/+66
| | | | | | | | | | | | | | | | | | Optimize some reference counted buffer[_reader]_sptr grabs and releases that show up as minor CPU wasters in profiling when there are a lot of tags or some blocks that "return 0" often. At high sample rates (e.g. 160 Msps), this can save ~2% CPU on blocks that propagate a fair number of tags.
* | Merge branch 'maint'Johnathan Corgan2017-10-051-7/+10
|\|
| * Merge remote-tracking branch 'github/pr/1476' into maintJohnathan Corgan2017-10-051-7/+10
| |\
| | * runtime: Moved block-by-block setup_rpc() calls to the end of the ↵Jacob Gilbert2017-10-041-7/+11
| |/ | | | | | | flatten_aux() function where the blocks are all identified. Also removed a workaround to the simple_copy example that is no longer relevant with this fix
* | Merge branch 'maint'Johnathan Corgan2017-08-271-1/+1
|\|
| * Merge remote-tracking branch 'github/pr/1438' into maintJohnathan Corgan2017-08-271-1/+1
| |\
| | * runtime: fix logger_ptr to always be a pointerMichael Dickens2017-08-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Addresses issue #1383, where if GR and an OOT are built with logging enabled but GR is build using log4cpp and the OOT is build without it, then gr_block will be of different size & freeing it can result in heap corruption. This fix mades all of the logger_ptr typedefs an actual pointer, which should always be the same size and hence gr_block will always be the same size no matter what logging option is selected.
* | | Merge remote-tracking branch 'github/pr/1396'Johnathan Corgan2017-08-031-0/+5
|\ \ \
| * | | block python gateway: add WORK_CALLED_PRODUCE/_DONE proxyMarcus Müller2017-07-281-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so that we can then have def general_work(self, input_items, output_items): … self.produce(0,2) self.produce(1,1) return gr.WORK_CALLED_PRODUCE Includes a unit test. We need more unit tests. There wasn't a single general block test in qa_block_gateway.py.
* | | | Merge remote-tracking branch 'github/pr/1380'Johnathan Corgan2017-07-141-24/+2
|\ \ \ \
| * | | | Removed superfluous typedefs of gr_?int*; included stdint.h uncond.Marcus Müller2017-07-141-24/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | Elsewhere in tree, we never check for #ifdef HAVE_STDINT_H, so this can't make a difference here. And, we nowhere use any gr_int types, so we don't need to drag these around.
* | | | Merge branch 'maint'Johnathan Corgan2017-07-141-1/+1
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | fix: fixed a performance bug in buffer::get_tags_in_range.Brandon P. Enochs2017-07-141-1/+1
| | | | | | | | | | | | buffer::get_tags_in_range called v.resize(0) instead of v.clear() to clear out the input vector. This causes needless memory allocation of the default value for the second argument to resize. In applications that make heavy use of tags, this can cause significant performance problems as get_tags_in_range performs an extra allocation and deallocation.
* | | Merge branch 'maint'Johnathan Corgan2017-06-274-15/+15
|\| |
| * | Revert "Fixed storing references to temporary values in RPC infrastructure"Johnathan Corgan2017-06-274-15/+15
| | | | | | | | | | | | This reverts commit a16ed67b5dae099c6ac1447c000f15765b13422f.
* | | Merge branch 'maint'Johnathan Corgan2017-06-277-23/+28
|\| |
| * | Merge remote-tracking branch 'github/pr/1341' into maintJohnathan Corgan2017-06-273-8/+13
| |\ \
| | * | fix: can't pass non-enum integer as enum parameter (#1337)Marcus Müller2017-06-243-8/+13
| | | |
| * | | Merge remote-tracking branch 'github/pr/1343' into maintJohnathan Corgan2017-06-274-15/+15
| |\ \ \
| | * | | Fixed storing references to temporary values in RPC infrastructureMarcus Müller2017-06-244-15/+15
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The RPC aggregator and friends were taking callback objects passed by value, and then internally called, again by value, constructors which initialized reference fields to these parameters. This has the effect of storing references to temporary objects. Chances are, no-one is using that code, or compiler UB saved our collective behinds. In any case, we might need to more carefully dissect the RPC code. There be dragons.
* | | | Merge remote-tracking branch 'github/pr/1333'Johnathan Corgan2017-06-222-8/+16
|\ \ \ \
| * | | | gr-runtime-test: changed test memory allocation from stack to help to avoid ↵gnieboer2017-06-132-8/+16
| | |/ / | |/| | | | | | | | | | overflow segfault on win32