pub struct CuConfig {
pub monitor: Option<MonitorConfig>,
pub logging: Option<LoggingConfig>,
pub graphs: ConfigGraphs,
}
Expand description
CuConfig is the programmatic representation of the configuration graph. It is a directed graph where nodes are tasks and edges are connections between tasks.
The core of CuConfig is its graphs
field which can be either a simple graph
or a collection of mission-specific graphs. The graph structure is based on petgraph.
Fields§
§monitor: Option<MonitorConfig>
Optional monitoring configuration
logging: Option<LoggingConfig>
Optional logging configuration
graphs: ConfigGraphs
Graph structure - either a single graph or multiple mission-specific graphs
Implementations§
Source§impl CuConfig
The implementation has a lot of convenience methods to manipulate
the configuration to give some flexibility into programmatically creating the configuration.
impl CuConfig
The implementation has a lot of convenience methods to manipulate the configuration to give some flexibility into programmatically creating the configuration.
pub fn new_simple_type() -> Self
pub fn new_mission_type() -> Self
pub fn serialize_ron(&self) -> String
pub fn deserialize_ron(ron: &str) -> Self
Sourcepub fn render(
&self,
output: &mut dyn Write,
mission_id: Option<&str>,
) -> CuResult<()>
pub fn render( &self, output: &mut dyn Write, mission_id: Option<&str>, ) -> CuResult<()>
Render the configuration graph in the dot format.
pub fn get_all_instances_configs( &self, mission_id: Option<&str>, ) -> Vec<Option<&ComponentConfig>>
pub fn get_graph(&self, mission_id: Option<&str>) -> CuResult<&CuGraph>
pub fn get_graph_mut( &mut self, mission_id: Option<&str>, ) -> CuResult<&mut CuGraph>
pub fn get_monitor_config(&self) -> Option<&MonitorConfig>
Sourcepub fn validate_logging_config(&self) -> CuResult<()>
pub fn validate_logging_config(&self) -> CuResult<()>
Validate the logging configuration to ensure section pre-allocation sizes do not exceed slab sizes. This method is wrapper around LoggingConfig::validate
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CuConfig
impl<'de> Deserialize<'de> for CuConfig
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
This is a custom serialization to make this implementation independent of petgraph.