Skip to content
Josh Blum edited this page Mar 31, 2013 · 1 revision
http://i.imgur.com/7El6W8N.png

Introducing Actor Topology

One of the goals of GRAS is to be able to dynamically reconfigure the flow graph while it executes. A lightweight library, Apology (short for Actor Topology) was created to facilitate the comprehension of hierarchy and connections, and to deal with such in a thread-safe manner:

The project page is here: https://github.com/guruofquality/Apology

Separating hierarchy from design

So, there isnt much in Apology. This project is just directly submoduled and compiled into GRAS. But in its simplicity, it is powerful:

One of the nice things about Apology is that GRAS needs little or no information about how to handle connections and hierarchy; allowing the implementation of GRAS to be simpler and more on focus.

Other fortuitous benefits

Simply as a side-effect of the implementation of Apology, the following long-term GNU Radio issues have been addressed:

  • users will be able to connect and disconnect blocks in a live flow graph
  • hierarchical blocks can have optional or dynamic number of ports
  • hierarchical blocks will be able to internally connect inputs to outputs
  • recover from exceptions thrown in hierarchical block constructors
Clone this wiki locally