Facade.cpp
Go to the documentation of this file.
/* Frobby: Software for monomial ideal computations.
Copyright (C) 2007 Bjarke Hammersholt Roune (www.broune.com)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see http://www.gnu.org/licenses/.
*/
#include "stdinc.h"
#include "Facade.h"
Facade::Facade(bool printActions):
_printActions(printActions)
#ifdef DEBUG
, _doingAnAction(false)
#endif
{
}
Facade::~Facade() {
}
void Facade::printMessage(const char* message) {
if (_printActions) {
fputs(message, stderr);
fflush(stderr);
}
}
void Facade::beginAction(const char* message) {
#ifdef DEBUG
ASSERT(!_doingAnAction);
_doingAnAction = true;
#endif
if (!_printActions)
return;
printMessage(message);
_timer.reset();
}
void Facade::endAction() {
#ifdef DEBUG
ASSERT(_doingAnAction);
_doingAnAction = false;
#endif
if (!_printActions)
return;
fputc(' ', stderr);
_timer.print(stderr);
fputc('\n', stderr);
fflush(stderr);
}
bool Facade::isPrintingActions() const {
return _printActions;
}
Facade.h
Facade::~Facade
virtual ~Facade()
Definition Facade.cpp:28
Facade::printMessage
void printMessage(const char *message)
Prints message to standard error if printing is turned on.
Definition Facade.cpp:31
Facade::beginAction
void beginAction(const char *message)
Prints message to standard error if printing is turned on, and records the time when the action start...
Definition Facade.cpp:38
Facade::endAction
void endAction()
Prints to standard error the time since the last call to beginAction.
Definition Facade.cpp:51
Facade::Facade
Facade(bool printActions)
Constructs a facade that prints out what it is doing if printActions is true.
Definition Facade.cpp:20
Facade::isPrintingActions
bool isPrintingActions() const
Returns true if printing actions.
Definition Facade.cpp:66
Facade::_printActions
bool _printActions
Keeps track of whether we are printing.
Definition Facade.h:64
Facade::_timer
Timer _timer
Keeps track of the time between calls to beginAction() and endAction().
Definition Facade.h:61
stdinc.h
This header file includes common definitions and is included as the first line of code in every imple...
ASSERT
#define ASSERT(X)
Definition stdinc.h:86