WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
WireCell::Main Class Reference

#include <Main.h>

Public Member Functions

 Main ()
 
 ~Main ()
 
int cmdline (int argc, char *argv[])
 
void add_app (const std::string &tn)
 
void add_config (const std::string &filename)
 
void add_var (const std::string &name, const std::string &value)
 
void add_code (const std::string &name, const std::string &value)
 
void add_path (const std::string &dirname)
 
void add_plugin (const std::string &libname)
 
void add_logsink (const std::string &log, const std::string &level="")
 Add a log sink, reserved names 'stdout' and 'stderr' or a filename. More...
 
void set_loglevel (const std::string &log, const std::string &level="")
 
void initialize ()
 
void operator() ()
 Run any and all application components once. More...
 

Detailed Description

Definition at line 23 of file Main.h.

Constructor & Destructor Documentation

◆ Main()

Main::Main ( )

Definition at line 27 of file Main.cxx.

◆ ~Main()

Main::~Main ( )

Definition at line 32 of file Main.cxx.

Member Function Documentation

◆ add_app()

void Main::add_app ( const std::string &  tn)

Individual setup methods called by cmdline() or called explicitly by external application/frameork: Add an IApplication component to execute as a type:name string.

Definition at line 142 of file Main.cxx.

Here is the caller graph for this function:

◆ add_code()

void Main::add_code ( const std::string &  name,
const std::string &  value 
)

Bind external configuration code (in Jsonnet language) to a variable so that its may be referenced the configuration files (via std.extVar())

Definition at line 173 of file Main.cxx.

Here is the caller graph for this function:

◆ add_config()

void Main::add_config ( const std::string &  filename)

Append a top-level JSON/Jsonnet configuration file to the configuration sequence.

Definition at line 163 of file Main.cxx.

Here is the caller graph for this function:

◆ add_logsink()

void Main::add_logsink ( const std::string &  log,
const std::string &  level = "" 
)

Add a log sink, reserved names 'stdout' and 'stderr' or a filename.

Definition at line 147 of file Main.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_path()

void Main::add_path ( const std::string &  dirname)

Add an element to the configuration path in which configuration files may be found.

Definition at line 178 of file Main.cxx.

Here is the caller graph for this function:

◆ add_plugin()

void Main::add_plugin ( const std::string &  libname)

Add a plugin library in which components may be found. The libname may lack the initial "lib" prefix and file extension.

Definition at line 137 of file Main.cxx.

Here is the caller graph for this function:

◆ add_var()

void Main::add_var ( const std::string &  name,
const std::string &  value 
)

Bind an external scalar value to a variable so that it may be referenced in the configuration files (via std.extVar()).

Definition at line 168 of file Main.cxx.

Here is the caller graph for this function:

◆ cmdline()

int Main::cmdline ( int  argc,
char *  argv[] 
)

Single-point entry to Wire Cell.

Pass in literal command line arguments and return a return code. See wire-cell --help for args.

Or, one can use subsequent methods for more fine-grained setup and execution.

Definition at line 38 of file Main.cxx.

Here is the call graph for this function:

◆ initialize()

void Main::initialize ( )

Call once after all setup has been done and before running.

Definition at line 184 of file Main.cxx.

Here is the call graph for this function:

◆ operator()()

void Main::operator() ( )

Run any and all application components once.

Definition at line 265 of file Main.cxx.

Here is the call graph for this function:

◆ set_loglevel()

void Main::set_loglevel ( const std::string &  log,
const std::string &  level = "" 
)

Set a minimum level to emit a message for a given log. (levels: critical, error, warn, info, debug, trace).

Definition at line 159 of file Main.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files: