1#ifndef CHITECH_POSTPROCESSORPRINTER_H
2#define CHITECH_POSTPROCESSORPRINTER_H
13class PostProcessorPrinter;
75 const std::vector<const PostProcessor*>& pp_list,
76 const Event& event)
const;
80 scalar_ppnames_and_vals,
84 scalar_ppnames_and_vals,
89 const std::vector<const PostProcessor*>& pp_list,
91 bool per_column_sizes =
false)
const;
94 const std::vector<std::vector<std::string>>& sub_history);
100 const std::vector<const PostProcessor*>& pp_list);
103 const std::vector<const PostProcessor*>& pp_list);
106 const std::vector<const PostProcessor*>& pp_list);
109 static std::vector<const PostProcessor*>
112 static std::vector<const PostProcessor*>
115 static std::vector<const PostProcessor*>
118 static std::vector<std::vector<std::string>>
120 size_t time_history_limit,
121 const std::vector<const PostProcessor*>& pp_sub_list);
PPPrinterSubscribeHelper(PostProcessorPrinter &printer_ref)
PostProcessorPrinter & printer_ref_
void ReceiveEventUpdate(const Event &event) override
PostProcessorPrinter(const PostProcessorPrinter &)=delete
void SetPrintScalarTimeHistory(bool value)
static std::shared_ptr< PPPrinterSubscribeHelper > helper_ptr_
bool per_column_size_vectors_
static void PrintScalarPPsToCSV(std::ofstream &csvfile, const std::vector< const PostProcessor * > &pp_list)
ScalarPPTableFormat scalar_pp_table_format_
static std::vector< const PostProcessor * > GetArbitraryPostProcessorsList(const Event &event)
static std::vector< const PostProcessor * > GetVectorPostProcessorsList(const Event &event)
static PostProcessorPrinter & GetInstance()
static std::string PrintPPsVertical(const std::vector< std::pair< std::string, std::string > > &scalar_ppnames_and_vals, int event_code)
static std::vector< const PostProcessor * > GetScalarPostProcessorsList(const Event &event)
void SetTimeHistoryLimit(size_t limit)
static char SubscribeToSystemWideEventPublisher()
void SetScalarPerColumnSize(bool value)
static void PrintArbitraryPPsToCSV(std::ofstream &csvfile, const std::vector< const PostProcessor * > &pp_list)
void ReceiveEventUpdate(const Event &event)
bool print_vector_time_history_
void PrintCSVFile(const Event &event) const
void SetPrintVectorTimeHistory(bool value)
void PrintPPsLatestValuesOnly(const std::string &pps_typename, const std::vector< const PostProcessor * > &pp_list, const Event &event) const
PostProcessorPrinter operator=(const PostProcessorPrinter &)=delete
void SetCSVFilename(const std::string &csv_filename)
bool print_scalar_time_history_
static std::string PrintPPsHorizontal(const std::vector< std::pair< std::string, std::string > > &scalar_ppnames_and_vals, int)
bool per_column_size_scalars_
void PrintPostProcessors(const Event &event) const
std::string csv_filename_
std::string GetPrintedPostProcessors(const std::vector< const PostProcessor * > &pp_list) const
void SetScalarPPTableFormat(ScalarPPTableFormat format)
void SetTableColumnLimit(size_t limit)
static std::vector< std::vector< std::string > > BuildPPHistoryMatrix(size_t timehistsize, size_t time_history_limit, const std::vector< const PostProcessor * > &pp_sub_list)
void PrintPPsTimeHistory(const std::string &pps_typename, const std::vector< const PostProcessor * > &pp_list, const Event &event, bool per_column_sizes=false) const
size_t time_history_limit_
std::vector< std::string > events_on_which_to_print_postprocs_
void SetEventsOnWhichPrintPPs(const std::vector< std::string > &events)
size_t table_column_limit_
static std::string PrintPPsSubTimeHistory(const std::vector< std::vector< std::string > > &sub_history)
static void PrintVectorPPsToCSV(std::ofstream &csvfile, const std::vector< const PostProcessor * > &pp_list)
void SetVectorPerColumnSize(bool value)