Module config

Module config 

Source
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ยง

pub use petgraph::Direction::Incoming;
pub use petgraph::Direction::Outgoing;

Modulesยง

imp ๐Ÿ”’

Macrosยง

impl_from_numeric_for_value ๐Ÿ”’
impl_from_value_for_int ๐Ÿ”’

Structsยง

BridgeConfig
Declarative definition of a bridge component with a list of channels.
Cnx
This represents a connection between 2 tasks (nodes) in the configuration graph.
ComponentConfig
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.
CuConfigRepresentation ๐Ÿ”’
This is the main Copper configuration representation.
CuGraph
IncludesConfig
Includes are used to include other configuration files.
LoggingConfig
MissionsConfig
Missions are used to generate alternative DAGs within the same configuration.
MonitorConfig
Node
A node in the configuration graph. A node represents a Task in the system Graph.
NodeLogging
Configuration for logging in the node.
PortLookup ๐Ÿ”’
RenderConnection ๐Ÿ”’
RenderNode ๐Ÿ”’
RenderSection ๐Ÿ”’
RenderTopology ๐Ÿ”’
RuntimeConfig
SerializedCnx ๐Ÿ”’
Serialized representation of a connection used for the RON config.
Value
Wrapper around the ron::Value to allow for custom serialization.

Enumsยง

BridgeChannelConfigRepresentation
Directional mapping for bridge channels.
ConfigGraphs
CuDirection
A simple wrapper enum for petgraph::Direction, designed to be converted into it via the From trait.
EndpointRole ๐Ÿ”’
Flavor
Distinguishes regular tasks from bridge nodes so downstream stages can apply bridge-specific instantiation rules.

Constantsยง

DEFAULT_KEYFRAME_INTERVAL

Functionsยง

build_bridge_lookup ๐Ÿ”’
build_config_table ๐Ÿ”’
build_port_table ๐Ÿ”’
build_render_topology ๐Ÿ”’
config_representation_to_config ๐Ÿ”’
Convert a CuConfigRepresentation to a CuConfig. Uses the deserialize_impl method and validates the logging configuration.
default_as_true ๐Ÿ”’
default_keyframe_interval ๐Ÿ”’
deserialize_config_representation ๐Ÿ”’
Shared implementation for deserializing a CuConfigRepresentation into a CuConfig
escape_dot_id ๐Ÿ”’
format_endpoint ๐Ÿ”’
insert_bridge_node ๐Ÿ”’
mission_applies ๐Ÿ”’
parse_config_string ๐Ÿ”’
Read a copper configuration from a String. Parse a RON string into a CuConfigRepresentation, using the standard options. Returns an error if the parsing fails.
parse_endpoint ๐Ÿ”’
process_includes ๐Ÿ”’
Returns a merged CuConfigRepresentation.
read_configuration
Read a copper configuration from a file.
read_configuration_str
sanitize_identifier ๐Ÿ”’
substitute_parameters ๐Ÿ”’
validate_bridge_channel ๐Ÿ”’

Type Aliasesยง

NodeId
NodeId is the unique identifier of a node in the configuration graph for petgraph and the code generation.