11 #include <corsika/output/Configurable.hpp> 12 #include <boost/filesystem.hpp> 13 #include <yaml-cpp/yaml.h> 31 virtual void startOfLibrary(boost::filesystem::path
const& directory) = 0;
45 virtual void endOfShower(
unsigned int const showerId) = 0;
55 bool isInit()
const {
return is_init_; }
65 virtual YAML::Node
getSummary()
const {
return YAML::Node(); }
71 void setInit(
bool const v) { is_init_ = v; }
75 inline static auto logger_{
get_logger(
"output")};
virtual void startOfShower(unsigned int const)
Called at the start of each event/shower.
virtual void startOfLibrary(boost::filesystem::path const &directory)=0
Called at the start of each run.
void setInit(bool const v)
Set init flag.
This is the base class for all classes that have YAML representations of their configurations.
std::shared_ptr< spdlog::logger > get_logger(std::string const &name, bool const defaultlog=false)
Get a smart pointer to an existing logger.
bool isInit() const
Flag to indicate readiness.
CORSIKA8 logging utilities.
virtual YAML::Node getSummary() const
Provide YAML Summary for this BaseOutput.
virtual void endOfShower(unsigned int const showerId)=0
Called at the end of each event/shower.
static auto getLogger()
The output logger.
`, since they are used everywhere as integral part of the framework.
virtual void endOfLibrary()=0
Called at the end of each run.
This is the base class for all outputs so that they can be stored in homogeneous containers.