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.
|
This data type is used when rendering the flat representation (i.e. loop-iterable) representation of the calling-context. The prefix here will be identical to the prefix in the text output. More...
#include "timemory/storage/node.hpp"
Public Types | |
using | uintvector_t = std::vector< uint64_t > |
using | base_type = typename data< Tp >::result_type |
using | stats_type = typename data< Tp >::stats_type |
using | this_type = result< Tp > |
Public Member Functions | |
result ()=default | |
~result ()=default | |
result (const result &)=default | |
result (result &&) noexcept=default | |
result & | operator= (const result &)=default |
result & | operator= (result &&) noexcept=default |
result (base_type &&_base) noexcept | |
result (uint64_t _hash, const Tp &_data, const string_t &_prefix, int64_t _depth, uint64_t _rolling, const uintvector_t &_hierarchy, const stats_type &_stats, uint32_t _tid, uint32_t _pid) | |
uint32_t & | tid () |
measurement thread. May be std::numeric_limits<uint16_t>max() (i.e. 65536) if this entry is a combination of multiple threads More... | |
uint32_t & | pid () |
the process identifier of the reporting process, if multiple process data is combined, or the process identifier of the collecting process More... | |
int64_t & | depth () |
depth of the node in the calling-context More... | |
uint64_t & | hash () |
hash identifer of the node More... | |
uint64_t & | rolling_hash () |
the summation of this hash and it's parent hashes More... | |
string_t & | prefix () |
the associated string with the hash + indentation and other decoration More... | |
uintvector_t & | hierarchy () |
an array of the hash value + each parent hash (not serialized) More... | |
Tp & | data () |
reference to the component More... | |
stats_type & | stats () |
reference to the associate statistical accumulation of the data (if any) More... | |
uint64_t & | id () |
alias for hash() More... | |
Tp & | obj () |
alias for data() More... | |
const uint32_t & | tid () const |
const uint32_t & | pid () const |
const int64_t & | depth () const |
const uint64_t & | hash () const |
const uint64_t & | rolling_hash () const |
const string_t & | prefix () const |
const uintvector_t & | hierarchy () const |
const Tp & | data () const |
const stats_type & | stats () const |
const uint64_t & | id () const |
const Tp & | obj () const |
bool | operator== (const this_type &rhs) const |
bool | operator!= (const this_type &rhs) const |
this_type & | operator+= (const this_type &rhs) |
this_type & | operator-= (const this_type &rhs) |
This data type is used when rendering the flat representation (i.e. loop-iterable) representation of the calling-context. The prefix here will be identical to the prefix in the text output.
Tp | Component type |
using tim::node::result< Tp >::base_type = typename data<Tp>::result_type |
using tim::node::result< Tp >::stats_type = typename data<Tp>::stats_type |
using tim::node::result< Tp >::this_type = result<Tp> |
using tim::node::result< Tp >::uintvector_t = std::vector<uint64_t> |
|
default |
|
default |
|
default |
|
defaultnoexcept |
|
inlinenoexcept |
tim::node::result< Tp >::result | ( | uint64_t | _hash, |
const Tp & | _data, | ||
const string_t & | _prefix, | ||
int64_t | _depth, | ||
uint64_t | _rolling, | ||
const uintvector_t & | _hierarchy, | ||
const stats_type & | _stats, | ||
uint32_t | _tid, | ||
uint32_t | _pid | ||
) |
|
inline |
reference to the component
Definition at line 268 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator+=(), tim::node::result< Tp >::operator-=(), and tim::cereal::save().
|
inline |
|
inline |
depth of the node in the calling-context
Definition at line 253 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator==(), and tim::cereal::save().
|
inline |
|
inline |
hash identifer of the node
Definition at line 256 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator==(), and tim::cereal::save().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 299 of file node.hpp.
References tim::node::result< Tp >::data(), and tim::node::result< Tp >::stats().
|
inline |
Definition at line 306 of file node.hpp.
References tim::node::result< Tp >::data(), and tim::node::result< Tp >::stats().
|
default |
|
defaultnoexcept |
|
inline |
Definition at line 291 of file node.hpp.
References tim::node::result< Tp >::depth(), tim::node::result< Tp >::hash(), tim::node::result< Tp >::prefix(), and tim::node::result< Tp >::rolling_hash().
|
inline |
|
inline |
|
inline |
the associated string with the hash + indentation and other decoration
Definition at line 262 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator==(), and tim::cereal::save().
|
inline |
|
inline |
the summation of this hash and it's parent hashes
Definition at line 259 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator==(), and tim::cereal::save().
|
inline |
|
inline |
reference to the associate statistical accumulation of the data (if any)
Definition at line 271 of file node.hpp.
Referenced by tim::cereal::load(), tim::node::result< Tp >::operator+=(), tim::node::result< Tp >::operator-=(), and tim::cereal::save().
|
inline |
|
inline |
|
inline |