OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
config.hpp File Reference

Tools for reading options from a configuration file and building application-specific parameter sets for use in executables. More...

#include "hash.hpp"
#include "hashmap.hpp"
#include "keys.hpp"
#include "logging.hpp"
#include "util/network/socket.hpp"
#include <map>
#include <optional>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <variant>
#include <vector>
Include dependency graph for config.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  cbdc::config::options
 Project-wide configuration options. More...
 
class  cbdc::config::parser
 Reads configuration parameters line-by-line from a file. More...
 

Namespaces

namespace  cbdc
 
namespace  cbdc::config
 
namespace  cbdc::config::defaults
 

Typedefs

using cbdc::config::shard_range_t = std::pair<uint8_t, uint8_t>
 [start, end] inclusive.
 

Functions

auto cbdc::config::read_options (const std::string &config_file) -> std::variant< options, std::string >
 Read options from the given config file without checking invariants.
 
auto cbdc::config::load_options (const std::string &config_file) -> std::variant< options, std::string >
 Loads options from the given config file and check for invariants.
 
auto cbdc::config::check_options (const options &opts) -> std::optional< std::string >
 Checks a fully populated options struct for invariants.
 
auto cbdc::config::hash_in_shard_range (const shard_range_t &range, const hash_t &val) -> bool
 Checks if a hash is in the given range handled.
 
auto cbdc::config::loadgen_seed_range (const options &opts, size_t gen_id) -> std::pair< size_t, size_t >
 Calculates the sub-range of total seeded outputs for a particular load generator ID.
 
auto cbdc::config::get_args (int argc, char **argv) -> std::vector< std::string >
 Converts c-args from an executable's main function into a vector of strings.
 
auto cbdc::config::parse_ip_port (const std::string &in_str) -> network::endpoint_t
 

Detailed Description

Tools for reading options from a configuration file and building application-specific parameter sets for use in executables.

Definition in file config.hpp.