Loading...
Searching...
No Matches
Timer.h
// Copyright (C) 2008 Anders Logg, 2015 Jan Blechta
//
// This file is part of DOLFIN.
//
// DOLFIN is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// DOLFIN is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with DOLFIN. If not, see <http://www.gnu.org/licenses/>.
//
// First added: 2008-06-13
// Last changed: 2010-11-16
#ifndef __TIMER_H
#define __TIMER_H
#include <string>
#include <tuple>
#include <boost/timer/timer.hpp>
namespace dolfin
{
class Timer
{
public:
Timer();
Timer(std::string task);
~Timer();
void start();
void resume();
double stop();
std::tuple<double, double, double> elapsed() const;
private:
// Name of task
std::string _task;
// Implementation of timer
boost::timer::cpu_timer _timer;
};
}
#endif
dolfin::Timer::~Timer
~Timer()
Destructor.
Definition Timer.cpp:39
dolfin::Timer::start
void start()
Zero and start timer.
Definition Timer.cpp:45
dolfin::Timer::resume
void resume()
Resume timer. Not well-defined for logging timer.
Definition Timer.cpp:50
dolfin::Timer::Timer
Timer()
Create timer without logging.
Definition Timer.cpp:28
dolfin::Timer::stop
double stop()
Definition Timer.cpp:60
dolfin::Timer::elapsed
std::tuple< double, double, double > elapsed() const
Definition Timer.cpp:69
dolfin
Definition adapt.h:30