OmniSciDB  1dac507f6e
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
logger::DurationTree Class Reference

Public Member Functions

 depth_ (start_depth)
 
 thread_id_ (thread_id)
 
void pushDurationTree (DurationTree &duration_tree)
 
const DurationbaseDuration () const
 
int currentDepth () const
 
void decrementDepth ()
 
std::deque< DurationTreeNode >
const & 
durations () const
 
template<typename... Ts>
DurationnewDuration (Ts &&...args)
 

Public Attributes

int const depth_
 
std::thread::id const thread_id_
 
 __pad0__: current_depth_(start_depth + (start_depth == 0 ? 0 : 1))
 

Private Attributes

std::deque< DurationTreeNodedurations_
 
int current_depth_
 

Detailed Description

Definition at line 435 of file Logger.cpp.

Member Function Documentation

const Duration& logger::DurationTree::baseDuration ( ) const
inline

Definition at line 450 of file Logger.cpp.

References CHECK(), and durations_.

450  {
451  CHECK(!durations_.empty());
452  return boost::get<Duration>(durations_.front());
453  }
std::deque< DurationTreeNode > durations_
Definition: Logger.cpp:436
CHECK(cgen_state)

+ Here is the call graph for this function:

int logger::DurationTree::currentDepth ( ) const
inline

Definition at line 454 of file Logger.cpp.

References current_depth_.

454 { return current_depth_; }
void logger::DurationTree::decrementDepth ( )
inline

Definition at line 455 of file Logger.cpp.

References current_depth_.

Referenced by logger::Duration::stop().

455 { --current_depth_; }

+ Here is the caller graph for this function:

logger::DurationTree::depth_ ( start_depth  )
std::deque<DurationTreeNode> const& logger::DurationTree::durations ( ) const
inline

Definition at line 456 of file Logger.cpp.

References durations_.

Referenced by logger::EraseDurationTrees::operator()(), and logger::operator<<().

456 { return durations_; }
std::deque< DurationTreeNode > durations_
Definition: Logger.cpp:436

+ Here is the caller graph for this function:

template<typename... Ts>
Duration* logger::DurationTree::newDuration ( Ts &&...  args)
inline

Definition at line 458 of file Logger.cpp.

References run_benchmark_import::args, current_depth_, and durations_.

458  {
459  durations_.emplace_back(Duration(this, current_depth_++, std::forward<Ts>(args)...));
460  return boost::get<Duration>(&durations_.back());
461  }
std::deque< DurationTreeNode > durations_
Definition: Logger.cpp:436
void logger::DurationTree::pushDurationTree ( DurationTree duration_tree)
inline

Definition at line 447 of file Logger.cpp.

References durations_.

447  {
448  durations_.emplace_back(duration_tree);
449  }
std::deque< DurationTreeNode > durations_
Definition: Logger.cpp:436
logger::DurationTree::thread_id_ ( thread_id  )
inline

Definition at line 446 of file Logger.cpp.

446 {}

Member Data Documentation

logger::DurationTree::__pad0__

Definition at line 445 of file Logger.cpp.

int logger::DurationTree::current_depth_
private

Definition at line 437 of file Logger.cpp.

Referenced by currentDepth(), decrementDepth(), and newDuration().

int const logger::DurationTree::depth_

Definition at line 440 of file Logger.cpp.

Referenced by logger::operator<<().

std::deque<DurationTreeNode> logger::DurationTree::durations_
private

Definition at line 436 of file Logger.cpp.

Referenced by baseDuration(), durations(), newDuration(), and pushDurationTree().

std::thread::id const logger::DurationTree::thread_id_

Definition at line 441 of file Logger.cpp.

Referenced by logger::EraseDurationTrees::operator()(), and logger::operator<<().


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