Frobby 0.9.5
HilbertIndependenceConsumer Class Reference

#include <HilbertIndependenceConsumer.h>

Inheritance diagram for HilbertIndependenceConsumer:
CoefTermConsumer Task

Classes

class  RightConsumer

Public Member Functions

 HilbertIndependenceConsumer (HilbertStrategy *strategy)
void reset (CoefTermConsumer *parent, IndependenceSplitter &splitter, size_t varCount)
void clear ()
virtual void run (TaskEngine &engine)
 Does whatever work this task represents.
virtual void dispose ()
 Called when the task is no longer used but run has not and will not be called.
CoefTermConsumer * getLeftConsumer ()
virtual void consumeRing (const VarNames &names)
virtual void beginConsuming ()
virtual void consume (const mpz_class &coef, const Term &term)
virtual void doneConsuming ()
CoefTermConsumer * getRightConsumer ()
const Projection & getLeftProjection () const
const Projection & getRightProjection () const
Public Member Functions inherited from CoefTermConsumer
virtual ~CoefTermConsumer ()
virtual void consume (const Polynomial &poly)
Public Member Functions inherited from Task
virtual ~Task ()

Private Member Functions

virtual void consumeLeft (const mpz_class &leftCoef, const Term &leftTerm)
virtual void consumeRight (const mpz_class &coef, const Term &term)

Private Attributes

Term _tmpTerm
mpz_class _tmpCoef
CoefTermConsumer * _parent
Projection _leftProjection
Projection _rightProjection
Ideal _rightTerms
vector< mpz_class > _rightCoefs
RightConsumer _rightConsumer
HilbertStrategy * _strategy

Detailed Description

Definition at line 31 of file HilbertIndependenceConsumer.h.

Constructor & Destructor Documentation

◆ HilbertIndependenceConsumer()

HilbertIndependenceConsumer::HilbertIndependenceConsumer ( HilbertStrategy * strategy)

Definition at line 23 of file HilbertIndependenceConsumer.cpp.

Member Function Documentation

◆ beginConsuming()

void HilbertIndependenceConsumer::beginConsuming ( )
virtual

Implements CoefTermConsumer.

Definition at line 68 of file HilbertIndependenceConsumer.cpp.

◆ clear()

void HilbertIndependenceConsumer::clear ( )

Definition at line 45 of file HilbertIndependenceConsumer.cpp.

◆ consume()

void HilbertIndependenceConsumer::consume ( const mpz_class & coef,
const Term & term )
virtual

Implements CoefTermConsumer.

Definition at line 74 of file HilbertIndependenceConsumer.cpp.

◆ consumeLeft()

void HilbertIndependenceConsumer::consumeLeft ( const mpz_class & leftCoef,
const Term & leftTerm )
privatevirtual

Definition at line 116 of file HilbertIndependenceConsumer.cpp.

◆ consumeRight()

void HilbertIndependenceConsumer::consumeRight ( const mpz_class & coef,
const Term & term )
privatevirtual

Definition at line 138 of file HilbertIndependenceConsumer.cpp.

◆ consumeRing()

void HilbertIndependenceConsumer::consumeRing ( const VarNames & names)
virtual

Implements CoefTermConsumer.

Definition at line 65 of file HilbertIndependenceConsumer.cpp.

◆ dispose()

void HilbertIndependenceConsumer::dispose ( )
virtual

Called when the task is no longer used but run has not and will not be called.

This can happen from a destructor being called due to an exception, so dispose must not throw an exception under any circumstances.

Implements Task.

Definition at line 51 of file HilbertIndependenceConsumer.cpp.

◆ doneConsuming()

void HilbertIndependenceConsumer::doneConsuming ( )
virtual

Implements CoefTermConsumer.

Definition at line 71 of file HilbertIndependenceConsumer.cpp.

◆ getLeftConsumer()

CoefTermConsumer * HilbertIndependenceConsumer::getLeftConsumer ( )

Definition at line 60 of file HilbertIndependenceConsumer.cpp.

◆ getLeftProjection()

const Projection & HilbertIndependenceConsumer::getLeftProjection ( ) const

Definition at line 86 of file HilbertIndependenceConsumer.cpp.

◆ getRightConsumer()

CoefTermConsumer * HilbertIndependenceConsumer::getRightConsumer ( )

Definition at line 81 of file HilbertIndependenceConsumer.cpp.

◆ getRightProjection()

const Projection & HilbertIndependenceConsumer::getRightProjection ( ) const

Definition at line 91 of file HilbertIndependenceConsumer.cpp.

◆ reset()

void HilbertIndependenceConsumer::reset ( CoefTermConsumer * parent,
IndependenceSplitter & splitter,
size_t varCount )

Definition at line 31 of file HilbertIndependenceConsumer.cpp.

◆ run()

void HilbertIndependenceConsumer::run ( TaskEngine & engine)
virtual

Does whatever work this task represents.

The parameter can be used to schedule additional tasks.

Implements Task.

Definition at line 56 of file HilbertIndependenceConsumer.cpp.

Member Data Documentation

◆ _leftProjection

Projection HilbertIndependenceConsumer::_leftProjection
private

Definition at line 79 of file HilbertIndependenceConsumer.h.

◆ _parent

CoefTermConsumer* HilbertIndependenceConsumer::_parent
private

Definition at line 78 of file HilbertIndependenceConsumer.h.

◆ _rightCoefs

vector<mpz_class> HilbertIndependenceConsumer::_rightCoefs
private

Definition at line 83 of file HilbertIndependenceConsumer.h.

◆ _rightConsumer

RightConsumer HilbertIndependenceConsumer::_rightConsumer
private

Definition at line 85 of file HilbertIndependenceConsumer.h.

◆ _rightProjection

Projection HilbertIndependenceConsumer::_rightProjection
private

Definition at line 80 of file HilbertIndependenceConsumer.h.

◆ _rightTerms

Ideal HilbertIndependenceConsumer::_rightTerms
private

Definition at line 82 of file HilbertIndependenceConsumer.h.

◆ _strategy

HilbertStrategy* HilbertIndependenceConsumer::_strategy
private

Definition at line 87 of file HilbertIndependenceConsumer.h.

◆ _tmpCoef

mpz_class HilbertIndependenceConsumer::_tmpCoef
private

Definition at line 76 of file HilbertIndependenceConsumer.h.

◆ _tmpTerm

Term HilbertIndependenceConsumer::_tmpTerm
private

Definition at line 75 of file HilbertIndependenceConsumer.h.


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