Frobby
0.9.5
|
A wrapper for a SliceStrategy that collects statistics on what is going on, while delegating everything to the strategy being wrapped. More...
#include <StatisticsStrategy.h>
Classes | |
struct | StatTracker |
Tracks statistics on slices. More... | |
Public Member Functions | |
StatisticsStrategy (SliceStrategy *strategy, FILE *out) | |
Statistics are written to out, and every call is delegated to strategy. More... | |
virtual | ~StatisticsStrategy () |
virtual void | run (const Ideal &ideal) |
Run the Slice algorithm. More... | |
virtual bool | processSlice (TaskEngine &tasks, auto_ptr< Slice > slice) |
Process the parameter slice. More... | |
virtual void | setUseIndependence (bool use) |
This method should only be called before calling run(). More... | |
virtual void | setUseSimplification (bool use) |
This method should only be called before calling run(). More... | |
virtual bool | getUseSimplification () const |
virtual void | freeSlice (auto_ptr< Slice > slice) |
It is allowed to delete returned slices directly, but it is better to use freeSlice. More... | |
Public Member Functions inherited from PivotStrategy | |
virtual | ~PivotStrategy () |
virtual EulerState * | doPivot (EulerState &state, const size_t *divCounts)=0 |
Split state. More... | |
virtual void | getName (ostream &out) const =0 |
Prints the name of the strategy to out. More... | |
virtual void | computationCompleted (const PivotEulerAlg &alg)=0 |
Call this function once when computation is complete. More... | |
virtual bool | shouldTranspose (const EulerState &state) const =0 |
Returns true if transposing state is adviced. More... | |
Public Member Functions inherited from SliceStrategy | |
virtual | ~SliceStrategy () |
Private Attributes | |
SliceStrategy * | _strategy |
FILE * | _out |
StatTracker | _internalTracker |
StatTracker | _leafTracker |
Additional Inherited Members | |
Protected Member Functions inherited from PivotStrategy | |
PivotStrategy () | |
A wrapper for a SliceStrategy that collects statistics on what is going on, while delegating everything to the strategy being wrapped.
Definition at line 27 of file StatisticsStrategy.h.
StatisticsStrategy::StatisticsStrategy | ( | SliceStrategy * | strategy, |
FILE * | out | ||
) |
Statistics are written to out, and every call is delegated to strategy.
Definition at line 24 of file StatisticsStrategy.cpp.
|
virtual |
Definition at line 32 of file StatisticsStrategy.cpp.
|
virtual |
It is allowed to delete returned slices directly, but it is better to use freeSlice.
freeSlice can only be called on slices obtained from a method of the same strategy. This allows caching of slices to avoid frequent allocation and deallocation.
Implements SliceStrategy.
Definition at line 70 of file StatisticsStrategy.cpp.
|
virtual |
Implements SliceStrategy.
Definition at line 66 of file StatisticsStrategy.cpp.
|
virtual |
Process the parameter slice.
Returns true if this is a base case and false otherwise.
Implements SliceStrategy.
Definition at line 43 of file StatisticsStrategy.cpp.
|
virtual |
Run the Slice algorithm.
Implements SliceStrategy.
Definition at line 35 of file StatisticsStrategy.cpp.
|
virtual |
This method should only be called before calling run().
Implements SliceStrategy.
Definition at line 58 of file StatisticsStrategy.cpp.
|
virtual |
This method should only be called before calling run().
Implements SliceStrategy.
Definition at line 62 of file StatisticsStrategy.cpp.
|
private |
Definition at line 90 of file StatisticsStrategy.h.
|
private |
Definition at line 91 of file StatisticsStrategy.h.
|
private |
Definition at line 46 of file StatisticsStrategy.h.
|
private |
Definition at line 45 of file StatisticsStrategy.h.