JSON Config

From GNU Radio
Revision as of 16:16, 8 May 2023 by Duggabe (talk | contribs) (total revamp)
Jump to navigation Jump to search

This block presents a JSON config file which is read in as a dictionary.

The values can be used directly when instantiating blocks. For example, Sample Rate: yaml_config["samp_rate"]

Optionally, a JSON schema can be specified to validate the configuration.

For example, you could have a JSON file that contains:

{
  "samp_rate": 1e6,
}

And a schema that contains

{
  "type": "object",
  "properties": {
    "samp_rate": {"type": "number", "exclusiveMinimum": 0}
   }
}

If the id of this block is json_config_0, then you can access the samp rate in other blocks as json_config_0["samp_rate"].

Parameters

Config File
File name of the JSON config file
Config Schema
(Optional) File name of the JSON schema file

Example Flowgraph

The example.json file contains:

{
"amplitude": 0.1,
"frequency": 1000
}

Json config example prop.png

Json config example fg.png

Example Output

Json config example out.png

Source Files

Block definition
json_config.block.yml