Go to the documentation of this file.
46 #ifndef MUELU_TIMEMONITOR_HPP
47 #define MUELU_TIMEMONITOR_HPP
50 #include <Teuchos_DefaultComm.hpp>
51 #include <Teuchos_Time.hpp>
52 #include <Teuchos_TimeMonitor.hpp>
57 #ifdef HAVE_TEUCHOS_ADD_TIME_MONITOR_TO_STACKED_TIMER
58 #include "Teuchos_StackedTimer.hpp"
90 template <
class TagName>
116 timer_->incrementNumCalls();
122 if (
timer_ != Teuchos::null)
130 RCP<MutuallyExclusiveTime<TagName> >
timer_;
138 #endif // MUELU_TIMEMONITOR_HPP
MutuallyExclusiveTimeMonitor(const BaseClass &object, const std::string &msg, MsgType timerLevel=Timings0)
Constructor.
static RCP< MutuallyExclusiveTime< TagName > > getNewTimer(const std::string &name)
Return a new MutuallyExclusiveTime that is registered with the Teuchos::TimeMonitor (for timer summar...
DASHPOS string(SUBSTRING ${CLASS} 0 ${DASHPOS} CLASS_NAME) set(CONDITION_NAME "") set(CONDITION_NAME_END "") string(SUBSTRING $
int GetProcRankVerbose() const
Get proc rank used for printing. Do not use this information for any other purpose.
RCP< Teuchos::Time > timer_
RCP< MutuallyExclusiveTime< TagName > > timer_
~MutuallyExclusiveTimeMonitor()
@ Timings0
High level timing information (use Teuchos::TimeMonitor::summarize() to print)
Namespace for MueLu classes and methods.
VerbLevel GetVerbLevel() const
Get the verbosity level.
@ RuntimeTimings
Timers that are enabled (using Timings0/Timings1) will be printed during the execution.
Base class for MueLu classes.
MutuallyExclusiveTimeMonitor()
void SetVerbLevel(const VerbLevel verbLevel)
Set the verbosity level of this object.
@ NoTimeReport
By default, enabled timers appears in the teuchos time monitor summary. Use this option if you do not...
Integrates Teuchos::TimeMonitor with MueLu verbosity system.
bool IsPrint(MsgType type, int thisProcRankOnly=-1) const
Find out whether we need to print out information for a specific message type.
Similar to TimeMonitor, but uses MutuallyExclusiveTime objects.
int SetProcRankVerbose(int procRank) const
Set proc rank used for printing.
This class wraps a Teuchos::Time and maintains a mutually exclusive property between wrapped timers.