Expand description
This module defines the configuration of the copper runtime. The configuration is a directed graph where nodes are tasks and edges are connections between tasks. The configuration is serialized in the RON format. The configuration is used to generate the runtime code at compile time.
Re-exports§
Structs§
- Bridge
Config - Declarative definition of a bridge component with a list of channels.
- Cnx
- This represents a connection between 2 tasks (nodes) in the configuration graph.
- Component
Config - This is the configuration of a component (like a task config or a monitoring config):w It is a map of key-value pairs. It is given to the new method of the task implementation.
- CuConfig
- CuConfig is the programmatic representation of the configuration graph. It is a directed graph where nodes are tasks and edges are connections between tasks.
- CuGraph
- Includes
Config - Includes are used to include other configuration files.
- Logging
Config - Missions
Config - Missions are used to generate alternative DAGs within the same configuration.
- Monitor
Config - Node
- A node in the configuration graph. A node represents a Task in the system Graph.
- Node
Logging - Configuration for logging in the node.
- Runtime
Config - Value
- Wrapper around the ron::Value to allow for custom serialization.
Enums§
- Bridge
Channel Config Representation - Directional mapping for bridge channels.
- Config
Graphs - CuDirection
- A simple wrapper enum for
petgraph::Direction, designed to be converted into it via theFromtrait. - Flavor
- Distinguishes regular tasks from bridge nodes so downstream stages can apply bridge-specific instantiation rules.
Constants§
Functions§
- read_
configuration - Read a copper configuration from a file.
- read_
configuration_ str
Type Aliases§
- NodeId
- NodeId is the unique identifier of a node in the configuration graph for petgraph and the code generation.