arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

AlgObjIF Class Reference

#include <AlgObj.h>

Inheritance diagram for AlgObjIF:

SimModObjIF SimCore gutz::Counted SimBase AlgObj Reader SourceObjIF SourceObj ColorMapper List of all members.

Detailed Description

Alg Obj Interface class This is just the public interface to the class, if you are creating a new algorithm, sub class "AlgObj" not the interface.

Definition at line 33 of file AlgObj.h.

framework interfaces NOT FOR GENERAL USE.

do not call from user programs/modules

virtual void update_ (gutz::SmartPtr< DataObjIF > d)=0
 input data modified notification


Modified interface

bool isModified () const
void setModified (bool mod=true)

Serialization

TODO: should be pure virtual, SOON

virtual std::ostream & saveSelf (std::ostream &os)
 serialize

virtual std::istream & readSelf (std::istream &is)
 unserialize


Forward Modify interface, NOT FOR GENERAL USE.

framework interface.

bool isForwardModified ()
 is this thing aready marked for future update?

virtual void setForwardModified ()=0
 mark all children as forward modified


Text object-name

from SimBase

std::string getObjName ()
std::string getName ()
void setName (std::string name)
void setName (const char *name)

Debug prints

from SimBase: These print the object name with the error, mostly for convenience, but they are compiled to inline-no-op if you build in release mode

void derr (const char *when, const char *where=0) const
template<class T> void derr (const char *when, const char *where, const T stuff) const

Modification, AKA "changed"

from SimBase: id based, you can capture the current id for comparison later, if the id's don't match the class has been changed

virtual int getChangeID ()
virtual int getChangeID () const
virtual void setChanged ()

Public Member Functions

virtual ~AlgObjIF ()
virtual unsigned int getNumInputs () const=0
virtual void execute ()=0
 Public Execute Interface Execute if anything changed.

virtual void force ()=0
 Execute no matter what!

void update_ (DataObjSP d)=0
 update interface update when data changes


Protected Member Functions

 AlgObjIF ()
virtual void _incCount ()
 gutz::Counted interface, increment reference count by one.

virtual void _decCount ()
 gutz::Counted interface, decrement reference count by one.

virtual int _getCount () const
 gutz::Counted interface, get the current reference count.


Protected Attributes

bool _forwardUpdate
bool _modified
bool _forward
bool _updating
std::string _name_
 a text name for the object, SimBase

int _changed
 change id, incremented whenever setChanged is called, SimBase


Friends

class SmartPtr
class SmartPtrRef


Constructor & Destructor Documentation

virtual AlgObjIF::~AlgObjIF  )  [inline, virtual]
 

Definition at line 35 of file AlgObj.h.

AlgObjIF::AlgObjIF  )  [inline, protected]
 

Definition at line 58 of file AlgObj.h.


Member Function Documentation

virtual void gutz::Counted::_decCount  )  [inline, protected, virtual, inherited]
 

gutz::Counted interface, decrement reference count by one.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr. Sometimes you need to call this though, see the documentation for gutz::SmartPtr

Definition at line 54 of file smartptr.h.

Referenced by TFImage::clear(), NrroImage::fBlendOverRGBA(), and Nrro::updateMinMax().

virtual int gutz::Counted::_getCount  )  const [inline, protected, virtual, inherited]
 

gutz::Counted interface, get the current reference count.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr.

Definition at line 58 of file smartptr.h.

virtual void gutz::Counted::_incCount  )  [inline, protected, virtual, inherited]
 

gutz::Counted interface, increment reference count by one.

Not generaly used by subclasses, mostly for collaboration with gutz::SmartPtr. Sometimes you need to call this though, see the documentation for gutz::SmartPtr

Definition at line 48 of file smartptr.h.

Referenced by TFImage::clear(), NrroImage::fBlendOverRGBA(), and Nrro::updateMinMax().

template<class T>
void SimBase::derr const char *  when,
const char *  where,
const T  stuff
const [inline, inherited]
 

only prints in debug mode, -D_DEBUG

Definition at line 130 of file simBase.h.

References SimBase::_name_.

void SimBase::derr const char *  when,
const char *  where = 0
const [inline, inherited]
 

only prints in debug mode, -D_DEBUG

Definition at line 113 of file simBase.h.

References SimBase::_name_.

Referenced by AlgObj::addInput(), Key::addKey(), SourceObj::addOutput(), VolShader::bindBlend(), VolField::checkDims(), VolFieldVec::checkField(), VolFieldVec::checkFields(), AlgObj::checkInputs(), AlgObj::delInput(), Key::delKey(), Crank::delMP(), SourceObj::delOutput(), Crank::delTape(), TFGeneric::eval(), SourceObj::execDef(), ColorMapper::execDef(), AlgObj::execDef(), AlgObj::execute(), SourceObj::force(), AlgObj::force(), VolField::genTexture(), TFGeneric::get2DMap(), DataObj::getConsumer(), VolFieldVec::getField(), AlgObj::getInputN(), Key::getKey(), Crank::getMP(), Crank::getMPIdx(), SourceObj::getOutputN(), Crank::getTape(), AlgObj::inputsModified(), Crank::insertTape(), Crank::kindErr(), VolyCube::loadNrro(), VolyCube::readState(), Volytope::readState(), SourceObj::request(), DataObj::request_(), VolytopeVec::setField(), SourceObj::setForwardModified(), DataObj::setForwardModified(), TFGeneric::setImage(), AlgObj::setInputN(), Key::setKey(), Crank::setMP(), VolField::setNrro(), SourceObj::setOutputN(), Crank::setTape(), Volume::update(), SourceObj::updateOutputs(), Volume::updateRectLin(), Volume::updateVolytopesRL(), VolyCube::VolyCube(), and Volytope::writeState().

virtual void AlgObjIF::execute  )  [pure virtual]
 

Public Execute Interface Execute if anything changed.

Implements SimModObjIF.

Implemented in AlgObj, SourceObjIF, and SourceObj.

virtual void AlgObjIF::force  )  [pure virtual]
 

Execute no matter what!

Implements SimModObjIF.

Implemented in AlgObj, SourceObjIF, and SourceObj.

virtual int SimBase::getChangeID  )  const [inline, virtual, inherited]
 

Definition at line 73 of file simBase.h.

References SimBase::_changed.

virtual int SimBase::getChangeID  )  [inline, virtual, inherited]
 

Reimplemented in TFGeneric, TFBaseSP, and TFEltSP.

Definition at line 72 of file simBase.h.

References SimBase::_changed.

Referenced by TFEltSP::getChangeID(), TFBaseSP::getChangeID(), and TFGeneric::getChangeID().

std::string SimBase::getName  )  [inline, inherited]
 

Definition at line 45 of file simBase.h.

References SimBase::_name_.

Referenced by MetaProg::operator<<().

virtual unsigned int AlgObjIF::getNumInputs  )  const [pure virtual]
 

Implemented in AlgObj.

std::string SimBase::getObjName  )  [inline, inherited]
 

Definition at line 44 of file simBase.h.

References string.

bool SimCore::isForwardModified  )  [inline, inherited]
 

is this thing aready marked for future update?

Definition at line 63 of file simCore.h.

References SimCore::_forward.

bool SimCore::isModified  )  const [inline, inherited]
 

Definition at line 40 of file simCore.h.

References SimCore::_modified.

virtual std::istream& SimCore::readSelf std::istream &  is  )  [inline, virtual, inherited]
 

unserialize

Reimplemented from SimBase.

Definition at line 52 of file simCore.h.

virtual std::ostream& SimCore::saveSelf std::ostream &  os  )  [inline, virtual, inherited]
 

serialize

Reimplemented from SimBase.

Definition at line 50 of file simCore.h.

virtual void SimBase::setChanged  )  [inline, virtual, inherited]
 

Definition at line 74 of file simBase.h.

References SimBase::_changed.

Referenced by TFEltSP::getChangeID(), TFBaseSP::getChangeID(), TFBaseSP::operator=(), and TFGeneric::update().

virtual void SimCore::setForwardModified  )  [pure virtual, inherited]
 

mark all children as forward modified

Implemented in AlgObj, DataObj, and SourceObj.

void SimCore::setModified bool  mod = true  )  [inline, inherited]
 

Definition at line 41 of file simCore.h.

References SimCore::_modified.

Referenced by EventData::setEvent().

void SimBase::setName const char *  name  )  [inline, inherited]
 

Definition at line 47 of file simBase.h.

References SimBase::_name_, and name.

void SimBase::setName std::string  name  )  [inline, inherited]
 

Reimplemented in Key.

Definition at line 46 of file simBase.h.

References SimBase::_name_, and name.

Referenced by EventData::EventData(), and GenDataObj_base< Nrro, gutz::SmartPtr< Nrro > >::GenDataObj_base().

virtual void SimModObjIF::update_ gutz::SmartPtr< DataObjIF d  )  [pure virtual, inherited]
 

input data modified notification

void AlgObjIF::update_ DataObjSP  d  )  [pure virtual]
 

update interface update when data changes

Implemented in AlgObj.


Friends And Related Function Documentation

friend class SmartPtr [friend, inherited]
 

Definition at line 40 of file smartptr.h.

Referenced by Nrro::NrroIter< T >::NrroIter().

friend class SmartPtrRef [friend, inherited]
 

Definition at line 41 of file smartptr.h.


Member Data Documentation

int SimBase::_changed [protected, inherited]
 

change id, incremented whenever setChanged is called, SimBase

Definition at line 103 of file simBase.h.

Referenced by SimBase::getChangeID(), SimBase::setChanged(), and SimBase::SimBase().

bool SimCore::_forward [protected, inherited]
 

Definition at line 74 of file simCore.h.

Referenced by SourceObj::force(), AlgObj::force(), SimCore::isForwardModified(), SourceObj::request(), DataObj::request_(), SourceObj::setForwardModified(), DataObj::setForwardModified(), AlgObj::setForwardModified(), SimCore::SimCore(), DataObj::update_(), and AlgObj::update_().

bool SimModObjIF::_forwardUpdate [protected, inherited]
 

Definition at line 69 of file SimModObj.h.

Referenced by SimModObjIF::SimModObjIF().

bool SimCore::_modified [protected, inherited]
 

Definition at line 73 of file simCore.h.

Referenced by AlgObj::execute(), SourceObj::force(), AlgObj::force(), SimCore::isModified(), SourceObj::request(), DataObj::request_(), SimCore::setModified(), SimCore::SimCore(), DataObj::update_(), and AlgObj::update_().

std::string SimBase::_name_ [protected, inherited]
 

a text name for the object, SimBase

Definition at line 101 of file simBase.h.

Referenced by SimBase::derr(), SimBase::getName(), SimBase::setName(), and SimBase::SimBase().

bool SimCore::_updating [protected, inherited]
 

Definition at line 75 of file simCore.h.

Referenced by SimCore::SimCore(), DataObj::update_(), and SourceObj::updateOutputs().


The documentation for this class was generated from the following file:
Send questions, comments, and bug reports to:
jmk