GNU Radio 3.9 OOT Module Porting Guide

From GNU Radio
Jump to navigation Jump to search

The major changes in the (in-progress) GNU Radio 3.9 release that will impact OOTs are:

  • C++ modernization (C++11/14?)
  • Replacement of SWIG with Pybind11



C++ Modernization

(Currently merged onto master branch)

The most obvious change that will impact OOTs is that Boost shared pointers have been replaced with std:: shared pointers and memory management. At the top level of each block, the instantiation will need to change, e.g.

In include/blockname_xx.h:

typedef std::shared_ptr<blockname_xx> sptr;

Pybind11 Python Bindings

(NOT MERGED - future changes)

OOT Workflow

OOT Migration

Caveats