vendredi 30 mars 2018

GNU Radio programming pattern / control flow graph

I’m about to start developing an application (probably in C#) that has similar mechanics to GNU radio but a totally different purpose.

GNU Radio has a GUI that is like your typical flowchart type editor / drawing tool, but each object displayed on the “canvas” is part of a reactive control flow graph (rather than a flowchart box).

Basically, they are black boxes each having a specific internal purpose and each also having input(s) and output(s) where required.

For the simplicity of explanation let’s say my scope is to create a GUI canvas that I can drag objects on to and a run / stop button (to run the “program”). I suppose in some ways a little like the GUI from programming Scratch the kids programming tool.

I initially have 3 objects.

1) Some type of keyboard input box where I will input some Base64 encoded text. This has only an output that goes into object number 2.

2) This object takes input fed to it (the above encoded text) and converts it back to UTF-8 (its only purpose) and outputs it to the object number 3.

3) This object takes the input fed to it (from object number 3) and outputs it to screen (in its little box).

What these objects do is not important this is simply for example. This is basically how GNU Radio works except its passing digital signal data around rather than text.

My question is what sort of programming patterns does GNU radio use (before I pull it apart) or what sort of OOP type patterns or ideas should I maybe by looking at for this type of application. Or even some good Google links.

I have tried for a few hours now trying to Google something but it’s really difficult to find the right words that don’t return x zillion adverts for flowchart software for sale and such like.

I should also add that new objects (black boxes) can be added later.

Aucun commentaire:

Enregistrer un commentaire