Frobby  0.9.5
Facade.h
Go to the documentation of this file.
1 /* Frobby: Software for monomial ideal computations.
2  Copyright (C) 2007 Bjarke Hammersholt Roune (www.broune.com)
3 
4  This program is free software; you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation; either version 2 of the License, or
7  (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program. If not, see http://www.gnu.org/licenses/.
16 */
17 #ifndef FACADE_GUARD
18 #define FACADE_GUARD
19 
20 #include "Timer.h"
21 
32 class Facade {
33  protected:
36  Facade(bool printActions);
37  virtual ~Facade();
38 
40  void printMessage(const char* message);
41 
46  void beginAction(const char* message);
47 
52  void endAction();
53 
55  bool isPrintingActions() const;
56 
57  private:
62 
65 
66 #ifdef DEBUG
72  bool _doingAnAction;
73 #endif
74 };
75 
76 #endif
This is the super class of all facades.
Definition: Facade.h:32
virtual ~Facade()
Definition: Facade.cpp:28
void printMessage(const char *message)
Prints message to standard error if printing is turned on.
Definition: Facade.cpp:31
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
void endAction()
Prints to standard error the time since the last call to beginAction.
Definition: Facade.cpp:51
Facade(bool printActions)
Constructs a facade that prints out what it is doing if printActions is true.
Definition: Facade.cpp:20
bool isPrintingActions() const
Returns true if printing actions.
Definition: Facade.cpp:66
bool _printActions
Keeps track of whether we are printing.
Definition: Facade.h:64
Timer _timer
Keeps track of the time between calls to beginAction() and endAction().
Definition: Facade.h:61
Measures spans of CPU time.
Definition: Timer.h:27