Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes

chomp::homengin::BKengine Class Reference

The homology engine that uses the Bill Kalies' engine. More...

#include <engines.h>

Inheritance diagram for chomp::homengin::BKengine:
chomp::homengin::engine chomp::homengin::BK_LTengine

List of all members.

Public Member Functions

int speed () const
 The speed of the engine: The higher the number, the better.
bool dimsupported (int dim) const
 Is this dimension supported by this engine?
int memory (const cubfile &X) const
 Rough memory usage estimate for a single set of cubes.
bool relative () const
 Does this engine compute relative homology?
bool elementary () const
 Is this engine capable of processing elementary cubes?
bool spacewrapping () const
 Does this engine support space wrapping?
void homology (const cubfile &x, algstruct< chomp::homology::integer > &h) const
 Compute the homology of the given set of cubes.
void homology (const cubfile &x, const cubfile &y, algstruct< chomp::homology::integer > &h) const
 Compute the relative homology of the given pair of sets of cubes.
const char * name () const
 The name of the engine to be used in the command line.
std::ostream & describe (std::ostream &out) const
 Describes this particular engine.

Static Public Attributes

static BKengine eng
 One instance of this engine.

Protected Member Functions

 BKengine ()
 The default constructor.
 ~BKengine ()
 The destructor.

Protected Attributes

bool useLookupTable
 Should the lookup table be used prior to the homology computation?

Detailed Description

The homology engine that uses the Bill Kalies' engine.

Definition at line 280 of file engines.h.


Constructor & Destructor Documentation

chomp::homengin::BKengine::BKengine (  )  [inline, protected]

The default constructor.

Definition at line 284 of file engines.h.

                   : useLookupTable (false)
        {
                return;
        }

chomp::homengin::BKengine::~BKengine (  )  [inline, protected]

The destructor.

Definition at line 290 of file engines.h.

        {
                return;
        }


Member Function Documentation

std::ostream& chomp::homengin::BKengine::describe ( std::ostream &  out  )  const [virtual]

Describes this particular engine.

Reimplemented from chomp::homengin::engine.

Reimplemented in chomp::homengin::BK_LTengine.

bool chomp::homengin::BKengine::dimsupported ( int  dim  )  const [inline, virtual]

Is this dimension supported by this engine?

Reimplemented from chomp::homengin::engine.

Definition at line 303 of file engines.h.

        {
                return (dim == DIM);
        }

bool chomp::homengin::BKengine::elementary (  )  const [inline, virtual]

Is this engine capable of processing elementary cubes?

Reimplemented from chomp::homengin::engine.

Definition at line 319 of file engines.h.

        {
                return false;
        }

void chomp::homengin::BKengine::homology ( const cubfile x,
const cubfile y,
algstruct< chomp::homology::integer > &  h 
) const [inline, virtual]

Compute the relative homology of the given pair of sets of cubes.

Reimplemented from chomp::homengin::engine.

Definition at line 335 of file engines.h.

        {
                throw "The BK engine cannot compute relative homology.";
        }

void chomp::homengin::BKengine::homology ( const cubfile x,
algstruct< chomp::homology::integer > &  h 
) const [virtual]

Compute the homology of the given set of cubes.

Reimplemented from chomp::homengin::engine.

int chomp::homengin::BKengine::memory ( const cubfile X  )  const [virtual]

Rough memory usage estimate for a single set of cubes.

Returns 0 if unknown, -1 if not enough memory.

Reimplemented from chomp::homengin::engine.

const char* chomp::homengin::BKengine::name (  )  const [inline, virtual]

The name of the engine to be used in the command line.

Reimplemented from chomp::homengin::engine.

Reimplemented in chomp::homengin::BK_LTengine.

Definition at line 342 of file engines.h.

        {
                return "BK";
        }

bool chomp::homengin::BKengine::relative (  )  const [inline, virtual]

Does this engine compute relative homology?

Reimplemented from chomp::homengin::engine.

Definition at line 313 of file engines.h.

        {
                return false;
        }

bool chomp::homengin::BKengine::spacewrapping (  )  const [inline, virtual]

Does this engine support space wrapping?

Reimplemented from chomp::homengin::engine.

Definition at line 325 of file engines.h.

        {
                return false;
        }

int chomp::homengin::BKengine::speed (  )  const [inline, virtual]

The speed of the engine: The higher the number, the better.

Reimplemented from chomp::homengin::engine.

Reimplemented in chomp::homengin::BK_LTengine.

Definition at line 297 of file engines.h.

        {
                return 250;
        }


Member Data Documentation

One instance of this engine.

Reimplemented in chomp::homengin::BK_LTengine.

Definition at line 351 of file engines.h.

Should the lookup table be used prior to the homology computation?

Definition at line 355 of file engines.h.

Referenced by chomp::homengin::BK_LTengine::BK_LTengine().


The documentation for this class was generated from the following file: