timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
tim::operation::finalize::print< Tp, false > Struct Template Referenceabstract

#include "timemory/operations/types.hpp"

+ Collaboration diagram for tim::operation::finalize::print< Tp, false >:

Public Types

using this_type = print
 
using stream_type = std::shared_ptr< utility::stream >
 
using settings_t = std::shared_ptr< settings >
 

Public Member Functions

template<typename... Args>
 print (Args &&...)
 
virtual void setup ()=0
 
virtual void execute ()=0
 
virtual void read_json ()=0
 
virtual void print_dart ()=0
 
virtual void update_data ()=0
 
virtual void print_custom ()=0
 
virtual void write (std::ostream &os, stream_type stream)
 
virtual void print_cout (stream_type stream)
 
virtual void print_text (const std::string &fname, stream_type stream)
 
virtual void print_plot (const std::string &fname, std::string suffix)
 
auto get_label () const
 
auto get_text_output_name () const
 
auto get_tree_output_name () const
 
auto get_json_output_name () const
 
auto get_json_input_name () const
 
auto get_text_diff_name () const
 
auto get_json_diff_name () const
 
void set_debug (bool v)
 
void set_update (bool v)
 
void set_verbose (int32_t v)
 
void set_max_call_stack (int64_t v)
 
int64_t get_max_depth () const
 
bool dart_output ()
 
bool file_output ()
 
bool cout_output ()
 
bool tree_output ()
 
bool json_output ()
 
bool text_output ()
 
bool plot_output ()
 
bool flame_output ()
 

Protected Attributes

settings_t m_settings = settings::shared_instance()
 
bool debug = false
 
bool update = true
 
bool json_forced = false
 
bool node_init = dmp::is_initialized()
 
int32_t node_rank = dmp::rank()
 
int32_t node_size = dmp::size()
 
int32_t verbose = 0
 
int64_t max_depth = 0
 
int64_t max_call_stack = std::numeric_limits<int64_t>::max()
 
std::string label = ""
 
std::string description = ""
 
std::string text_outfname = ""
 
std::string tree_outfname = ""
 
std::string json_outfname = ""
 
std::string json_inpfname = ""
 
std::string text_diffname = ""
 
std::string json_diffname = ""
 
stream_type data_stream = stream_type{}
 
stream_type diff_stream = stream_type{}
 

Detailed Description

template<typename Tp>
struct tim::operation::finalize::print< Tp, false >

Definition at line 1499 of file types.hpp.

Member Typedef Documentation

◆ settings_t

using tim::operation::finalize::base::print::settings_t = std::shared_ptr<settings>
inherited

Definition at line 1174 of file types.hpp.

◆ stream_type

Definition at line 1173 of file types.hpp.

◆ this_type

Definition at line 1172 of file types.hpp.

Constructor & Destructor Documentation

◆ print()

template<typename Tp >
template<typename... Args>
tim::operation::finalize::print< Tp, false >::print ( Args &&  ...)
inline

Definition at line 1502 of file types.hpp.

1503 {}

Member Function Documentation

◆ cout_output()

bool tim::operation::finalize::base::print::cout_output ( )
inlineinherited

Definition at line 1255 of file types.hpp.

1256 {
1257 if(!m_settings)
1258 {
1259 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1260 return false;
1261 }
1262 return m_settings->get_cout_output();
1263 }
#define PRINT_HERE(...)
Definition: macros.hpp:152

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ dart_output()

bool tim::operation::finalize::base::print::dart_output ( )
inlineinherited

Definition at line 1237 of file types.hpp.

1238 {
1239 if(!m_settings)
1240 {
1241 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1242 return false;
1243 }
1244 return m_settings->get_dart_output();
1245 }

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ execute()

virtual void tim::operation::finalize::base::print::execute ( )
pure virtualinherited

◆ file_output()

bool tim::operation::finalize::base::print::file_output ( )
inlineinherited

Definition at line 1246 of file types.hpp.

1247 {
1248 if(!m_settings)
1249 {
1250 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1251 return false;
1252 }
1253 return m_settings->get_file_output();
1254 }

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ flame_output()

bool tim::operation::finalize::base::print::flame_output ( )
inlineinherited

Definition at line 1303 of file types.hpp.

1304 {
1305 if(!m_settings)
1306 {
1307 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1308 return false;
1309 }
1310 return m_settings->get_flamegraph_output() && m_settings->get_file_output();
1311 }

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ get_json_diff_name()

auto tim::operation::finalize::base::print::get_json_diff_name ( ) const
inlineinherited

Definition at line 1223 of file types.hpp.

1223{ return json_diffname; }

References tim::operation::finalize::base::print::json_diffname.

◆ get_json_input_name()

auto tim::operation::finalize::base::print::get_json_input_name ( ) const
inlineinherited

Definition at line 1221 of file types.hpp.

1221{ return json_inpfname; }

References tim::operation::finalize::base::print::json_inpfname.

◆ get_json_output_name()

auto tim::operation::finalize::base::print::get_json_output_name ( ) const
inlineinherited

Definition at line 1220 of file types.hpp.

1220{ return json_outfname; }

References tim::operation::finalize::base::print::json_outfname.

◆ get_label()

auto tim::operation::finalize::base::print::get_label ( ) const
inlineinherited

Definition at line 1217 of file types.hpp.

1217{ return label; }

References tim::operation::finalize::base::print::label.

◆ get_max_depth()

int64_t tim::operation::finalize::base::print::get_max_depth ( ) const
inlineinherited

◆ get_text_diff_name()

auto tim::operation::finalize::base::print::get_text_diff_name ( ) const
inlineinherited

Definition at line 1222 of file types.hpp.

1222{ return text_diffname; }

References tim::operation::finalize::base::print::text_diffname.

◆ get_text_output_name()

auto tim::operation::finalize::base::print::get_text_output_name ( ) const
inlineinherited

Definition at line 1218 of file types.hpp.

1218{ return text_outfname; }

References tim::operation::finalize::base::print::text_outfname.

◆ get_tree_output_name()

auto tim::operation::finalize::base::print::get_tree_output_name ( ) const
inlineinherited

Definition at line 1219 of file types.hpp.

1219{ return tree_outfname; }

References tim::operation::finalize::base::print::tree_outfname.

◆ json_output()

bool tim::operation::finalize::base::print::json_output ( )
inlineinherited

Definition at line 1274 of file types.hpp.

1275 {
1276 if(!m_settings)
1277 {
1278 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1279 return false;
1280 }
1281 return (m_settings->get_json_output() || json_forced) &&
1282 m_settings->get_file_output();
1283 }

References tim::operation::finalize::base::print::json_forced, tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ plot_output()

bool tim::operation::finalize::base::print::plot_output ( )
inlineinherited

Definition at line 1293 of file types.hpp.

1294 {
1295 if(!m_settings)
1296 {
1297 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1298 return false;
1299 }
1300 return m_settings->get_plot_output() && m_settings->get_json_output() &&
1301 m_settings->get_file_output();
1302 }

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ print_cout()

virtual void tim::operation::finalize::base::print::print_cout ( stream_type  stream)
virtualinherited

◆ print_custom()

virtual void tim::operation::finalize::base::print::print_custom ( )
pure virtualinherited

◆ print_dart()

virtual void tim::operation::finalize::base::print::print_dart ( )
pure virtualinherited

◆ print_plot()

virtual void tim::operation::finalize::base::print::print_plot ( const std::string &  fname,
std::string  suffix 
)
virtualinherited

◆ print_text()

virtual void tim::operation::finalize::base::print::print_text ( const std::string &  fname,
stream_type  stream 
)
virtualinherited

◆ read_json()

virtual void tim::operation::finalize::base::print::read_json ( )
pure virtualinherited

◆ set_debug()

void tim::operation::finalize::base::print::set_debug ( bool  v)
inlineinherited

Definition at line 1225 of file types.hpp.

References tim::operation::finalize::base::print::debug.

◆ set_max_call_stack()

void tim::operation::finalize::base::print::set_max_call_stack ( int64_t  v)
inlineinherited

Definition at line 1228 of file types.hpp.

1228{ max_call_stack = v; }

References tim::operation::finalize::base::print::max_call_stack.

◆ set_update()

void tim::operation::finalize::base::print::set_update ( bool  v)
inlineinherited

Definition at line 1226 of file types.hpp.

References tim::operation::finalize::base::print::update.

◆ set_verbose()

void tim::operation::finalize::base::print::set_verbose ( int32_t  v)
inlineinherited

Definition at line 1227 of file types.hpp.

References tim::operation::finalize::base::print::verbose.

◆ setup()

virtual void tim::operation::finalize::base::print::setup ( )
pure virtualinherited

◆ text_output()

bool tim::operation::finalize::base::print::text_output ( )
inlineinherited

Definition at line 1284 of file types.hpp.

1285 {
1286 if(!m_settings)
1287 {
1288 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1289 return false;
1290 }
1291 return m_settings->get_text_output() && m_settings->get_file_output();
1292 }

References tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ tree_output()

bool tim::operation::finalize::base::print::tree_output ( )
inlineinherited

Definition at line 1264 of file types.hpp.

1265 {
1266 if(!m_settings)
1267 {
1268 PRINT_HERE("%s", "Null pointer to settings! Disabling");
1269 return false;
1270 }
1271 return (m_settings->get_tree_output() || json_forced) &&
1272 m_settings->get_file_output();
1273 }

References tim::operation::finalize::base::print::json_forced, tim::operation::finalize::base::print::m_settings, and PRINT_HERE.

◆ update_data()

virtual void tim::operation::finalize::base::print::update_data ( )
pure virtualinherited

◆ write()

virtual void tim::operation::finalize::base::print::write ( std::ostream &  os,
stream_type  stream 
)
virtualinherited

Member Data Documentation

◆ data_stream

stream_type tim::operation::finalize::base::print::data_stream = stream_type{}
protectedinherited

Definition at line 1333 of file types.hpp.

◆ debug

bool tim::operation::finalize::base::print::debug = false
protectedinherited

◆ description

std::string tim::operation::finalize::base::print::description = ""
protectedinherited

Definition at line 1326 of file types.hpp.

◆ diff_stream

stream_type tim::operation::finalize::base::print::diff_stream = stream_type{}
protectedinherited

Definition at line 1334 of file types.hpp.

◆ json_diffname

std::string tim::operation::finalize::base::print::json_diffname = ""
protectedinherited

◆ json_forced

bool tim::operation::finalize::base::print::json_forced = false
protectedinherited

◆ json_inpfname

std::string tim::operation::finalize::base::print::json_inpfname = ""
protectedinherited

◆ json_outfname

std::string tim::operation::finalize::base::print::json_outfname = ""
protectedinherited

◆ label

std::string tim::operation::finalize::base::print::label = ""
protectedinherited

◆ m_settings

◆ max_call_stack

int64_t tim::operation::finalize::base::print::max_call_stack = std::numeric_limits<int64_t>::max()
protectedinherited

◆ max_depth

int64_t tim::operation::finalize::base::print::max_depth = 0
protectedinherited

Definition at line 1323 of file types.hpp.

Referenced by tim::operation::finalize::base::print::get_max_depth().

◆ node_init

bool tim::operation::finalize::base::print::node_init = dmp::is_initialized()
protectedinherited

Definition at line 1319 of file types.hpp.

◆ node_rank

int32_t tim::operation::finalize::base::print::node_rank = dmp::rank()
protectedinherited

Definition at line 1320 of file types.hpp.

Referenced by tim::operation::finalize::TIMEMORY_OPERATIONS_LINKAGE().

◆ node_size

int32_t tim::operation::finalize::base::print::node_size = dmp::size()
protectedinherited

Definition at line 1321 of file types.hpp.

◆ text_diffname

std::string tim::operation::finalize::base::print::text_diffname = ""
protectedinherited

◆ text_outfname

std::string tim::operation::finalize::base::print::text_outfname = ""
protectedinherited

◆ tree_outfname

std::string tim::operation::finalize::base::print::tree_outfname = ""
protectedinherited

◆ update

bool tim::operation::finalize::base::print::update = true
protectedinherited

Definition at line 1317 of file types.hpp.

Referenced by tim::operation::finalize::base::print::set_update().

◆ verbose

int32_t tim::operation::finalize::base::print::verbose = 0
protectedinherited

The documentation for this struct was generated from the following file: