Expand description
Configuration management system Configuration management for OpenMECP.
This module provides a flexible configuration system that allows users to customize program behavior through INI-format configuration files. The system supports hierarchical configuration with the following precedence:
- Local configuration (
./omecp_config.cfg) - User configuration (
~/.config/omecp/omecp_config.cfg) - System configuration (
/etc/omecp/omecp_config.cfg) - Built-in defaults
§Configuration File Format
The configuration uses INI format with sections for different types of settings:
[extensions]
gaussian = log
orca = out
xtb = out
bagel = json
custom = log
[general]
max_memory = 4GB
default_nprocs = 4
[logging]
level = info
file_logging = false§Usage
use omecp::settings::SettingsManager;
use omecp::config::QMProgram;
let settings = SettingsManager::load()?;
let extension = settings.get_output_extension(QMProgram::Orca);
println!("ORCA output extension: {}", extension);Structs§
- Cleanup
Settings - Cleanup configuration settings.
- Extension
Settings - File extension settings for different quantum chemistry programs.
- General
Settings - General program settings.
- Logging
Settings - Logging configuration settings.
- Settings
- Main configuration structure containing all program settings.
- Settings
Manager - Configuration manager that handles loading and accessing program settings.
Enums§
- Config
Error - Errors that can occur during configuration loading and processing.