|
OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
|
The base class for all OPAL tables. More...
#include <Table.h>
Classes | |
| struct | Cell |
| Descriptor for printing a table cell. More... | |
Public Types | |
| typedef std::vector< Cell > | CellArray |
| An array of cell descriptors. | |
Public Member Functions | |
| virtual | ~Table () |
| virtual bool | canReplaceBy (Object *newObject) |
| Test if object can be replaced. | |
| virtual void | fill ()=0 |
| Refill the buffer. | |
| virtual const std::string | getCategory () const |
| Return the object category as a string. | |
| virtual bool | shouldTrace () const |
| Trace flag. | |
| virtual bool | shouldUpdate () const |
| Update flag. | |
| virtual double | getCell (const PlaceRep &row, const std::string &col)=0 |
| Return value in selected table cell. | |
| virtual std::vector< double > | getColumn (const RangeRep &range, const std::string &col)=0 |
| Return column [b]col[/b] of this table, limited by [b]range[/b]. | |
| virtual CellArray | getDefault () const =0 |
| Return the default print columns. | |
| virtual double | getLength ()=0 |
| Return the length of the table. | |
| virtual const Beamline * | getLine () const =0 |
| Return embedded CLASSIC beamline. | |
| virtual std::vector< double > | getRow (const PlaceRep &, const std::vector< std::string > &)=0 |
| Return a table row. | |
| virtual void | invalidate () |
| Mark this table as invalid, if it is dynamic. | |
| virtual bool | isDependent (const std::string &name) const =0 |
| Find out if table depends on the object identified by [b]name[/b]. | |
| virtual Expressions::PtrToScalar< double > | makeColumnExpression (const std::string &) const =0 |
| virtual bool | matches (Table *rhs) const =0 |
| Check that [b]rhs[/b] is of same type as [b]this[/b]. | |
| virtual void | printTable (std::ostream &, const CellArray &) const =0 |
| Print list for the table. | |
| virtual Object * | clone (const std::string &name)=0 |
| Return a clone. | |
| void | copyAttributes (const Object &) |
| Copy attributes from another object. | |
| virtual void | execute () |
| Execute the command. | |
| virtual Attribute * | findAttribute (const std::string &name) |
| Find an attribute by name. | |
| virtual const Attribute * | findAttribute (const std::string &name) const |
| Find an attribute by name. | |
| virtual Object * | makeTemplate (const std::string &, TokenStream &, Statement &) |
| Macro handler function. | |
| virtual Object * | makeInstance (const std::string &name, Statement &, const Parser *) |
| Macro handler function. | |
| virtual void | parse (Statement &) |
| Parse the object. | |
| virtual void | parseShortcut (Statement &, bool eval=true) |
| Parser for single-attribute commands. | |
| virtual void | print (std::ostream &) const |
| Print the object. | |
| virtual void | printValue (std::ostream &) const |
| virtual void | printHelp (std::ostream &) const |
| Print help. | |
| virtual void | replace (Object *oldObject, Object *newObject) |
| Replace references. | |
| virtual void | update () |
| Update this object. | |
| bool | isBuiltin () const |
| True, if [b]this[/b] is a built-in object. | |
| virtual bool | isShared () const |
| Shared flag. | |
| virtual void | setShared (bool) |
| Set/reset shared flag. | |
| void | setDirty (bool) |
| Set/reset the [b]modified[/b] flag. | |
| bool | isDirty () const |
| True, if the [b]modified[/b] flag is set. | |
| void | setFlag (bool) |
| Flag/unflag this object, e. g. to control output of objects for. | |
| bool | isFlagged () const |
| True, if [b]this[/b] is flagged by setFlag(true). | |
| const Object * | getBaseObject () const |
| Return the object's base type object. | |
| const std::string & | getOpalName () const |
| Return object name. | |
| Object * | getParent () const |
| Return parent pointer. | |
| bool | isTreeMember (const Object *subTree) const |
| Test for tree membership. | |
| void | setOpalName (const std::string &name) |
| Set object name. | |
| void | setParent (Object *) |
| Set parent object. | |
| void | clear () |
| Clear the occurrence counter. | |
| int | increment () |
| Increment and return the occurrence counter. | |
| int | occurrenceCount () |
| Return the occurrence counter. | |
| void | registerReference (Invalidator *a) |
| Register a reference to this object. | |
| void | unregisterReference (Invalidator *a) |
| Unegister a reference to this object. | |
| void | registerOwnership (const AttributeHandler::OwnerType &itsClass) const |
| int | addReference () const |
| Increment reference count. | |
| int | removeReference () const |
| Decrement the reference count. | |
Static Public Member Functions | |
| static Table * | find (const std::string &name) |
| Find named Table. | |
Public Attributes | |
| std::vector< Attribute > | itsAttr |
| The object attributes. | |
Protected Member Functions | |
| Table (int size, const char *name, const char *help) | |
| Constructor for exemplars. | |
| Table (const std::string &name, Table *parent) | |
| Constructor for clones. | |
Protected Attributes | |
| bool | dynamic |
| Flag dynamic table. | |
| bool | refill |
| Refill flag. | |
| bool | builtin |
| Built-in flag. | |
| bool | modified |
| Dirty flag. | |
| bool | flagged |
| Object flag. | |
Private Member Functions | |
| Table () | |
| Table (const Table &) | |
| void | operator= (const Table &) |
Private Attributes | |
| Object * | itsParent |
| std::string | itsName |
| std::string | itsHelp |
| int | occurrence |
| double | timeStamp |
| std::set< Invalidator * > | references |
| bool | sharedFlag |
| int | refCount |
| typedef std::vector<Cell> Table::CellArray |
|
virtual |
Definition at line 30 of file Table.cpp.
References Object::builtin, OpalData::getInstance(), and OpalData::unregisterTable().
|
protected |
Constructor for exemplars.
Definition at line 70 of file Table.cpp.
References dynamic, Object::Object(), and refill.
Referenced by fill(), find(), matches(), operator=(), printTable(), Table(), and Table().
|
protected |
Constructor for clones.
Definition at line 76 of file Table.cpp.
References dynamic, OpalData::getInstance(), Object::Object(), refill, OpalData::registerTable(), and Table().
|
private |
|
private |
|
inlineinherited |
Increment reference count.
Definition at line 83 of file RCObject.h.
References refCount.
Referenced by Pointer< Object >::operator=(), Pointer< Object >::operator=(), and Pointer< Object >::unique().
|
virtual |
Test if object can be replaced.
Reimplemented from Object.
Definition at line 36 of file Table.cpp.
References Object::Object().
|
inherited |
|
pure virtualinherited |
Return a clone.
Implemented in Beam, BoolConstant, BoundaryGeometry, Call, Distribution, DumpEMFields, DumpFields, Echo, FieldSolverCmd, Help, Line, LineTemplate, Macro, OpalCavity, OpalDrift, OpalFilter, OpalMarker, OpalMonitor, OpalMultipole, OpalMultipoleT, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalGlobalCylindricalOffset, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalProbe, OpalRingDefinition, OpalSolenoid, OpalSource, OpalTravelingWave, OpalVacuum, OpalVerticalFFAMagnet, Option, PSystem, Quit, RealConstant, RealVariable, RealVector, Select, Sequence, SequenceTemplate, Stop, StringConstant, System, Title, TrackCmd, TrackEnd, TrackRun, and Value.
References Object().
Referenced by OpalParser::parseAction(), OpalParser::parseAssign(), and OpalParser::parseDefine().
|
inherited |
Copy attributes from another object.
Definition at line 54 of file Object.cpp.
References itsAttr, and Object().
Referenced by LineTemplate::makeInstance(), and SequenceTemplate::makeInstance().
|
virtualinherited |
Execute the command.
Reimplemented in Beam, BoundaryGeometry, Call, Distribution, DumpEMFields, DumpFields, Echo, FieldSolverCmd, Help, MacroCmd, OpalFilter, Option, PSystem, Quit, Select, Stop, System, Title, TrackCmd, TrackEnd, TrackRun, and Value.
Definition at line 59 of file Object.cpp.
|
pure virtual |
Refill the buffer.
References Table().
Referenced by Expressions::AColumn::evaluate(), Expressions::ARow::evaluate(), and Expressions::SCell::evaluate().
|
static |
Find named Table.
Definition at line 41 of file Table.cpp.
References OpalData::find(), OpalData::getInstance(), and Table().
Referenced by Expressions::AColumn::evaluate(), Expressions::ARow::evaluate(), and Expressions::SCell::evaluate().
|
virtualinherited |
Find an attribute by name.
Definition at line 64 of file Object.cpp.
References itsAttr.
Referenced by OpalElement::getParticleMatterInteraction(), OpalElement::getTypeName(), OpalElement::getWakeF(), Line::parse(), parse(), OpalElement::parse(), OpalParser::parseAssign(), SequenceParser::parsePosition(), and parseShortcut().
|
virtualinherited |
|
inherited |
Return the object's base type object.
Definition at line 301 of file Object.cpp.
References itsParent, and Object().
|
virtual |
|
pure virtual |
Return value in selected table cell.
Referenced by Expressions::SCell::evaluate().
|
pure virtual |
Return column [b]col[/b] of this table, limited by [b]range[/b].
Referenced by Expressions::AColumn::evaluate().
|
pure virtual |
Return the default print columns.
|
pure virtual |
Return the length of the table.
|
pure virtual |
Return embedded CLASSIC beamline.
|
inherited |
Return object name.
Definition at line 308 of file Object.cpp.
References itsName.
Referenced by Macro::clone(), OpalOffset::OpalLocalCartesianOffset::clone(), OpalData::create(), OpalData::define(), Sequence::findDriftLength(), ValueDefinition::getBool(), ValueDefinition::getBoolComponent(), ValueDefinition::getReal(), ValueDefinition::getRealComponent(), ValueDefinition::getString(), ValueDefinition::getStringComponent(), LineTemplate::makeInstance(), makeInstance(), SequenceTemplate::makeInstance(), parse(), SequenceParser::parsePosition(), parseShortcut(), Beam::print(), BoolConstant::print(), Line::print(), print(), OpalElement::print(), OpalFilter::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), Sequence::print(), StringConstant::print(), BoundaryGeometry::printInfo(), FieldSolverCmd::printInfo(), registerOwnership(), OpalElement::registerOwnership(), Line::replace(), Sequence::replace(), Beam::update(), BoundaryGeometry::update(), OpalFilter::update(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), and OpalOffset::OpalLocalCylindricalOffset::update().
|
inherited |
Return parent pointer.
Definition at line 313 of file Object.cpp.
References itsParent, and Object().
Referenced by OpalData::erase(), print(), OpalElement::print(), registerOwnership(), and OpalElement::registerOwnership().
|
pure virtual |
Return a table row.
Referenced by Expressions::ARow::evaluate().
|
inherited |
Increment and return the occurrence counter.
Definition at line 344 of file Object.cpp.
References occurrence.
Referenced by Line::parse(), and Sequence::storeLine().
|
virtual |
|
inherited |
True, if [b]this[/b] is a built-in object.
Definition at line 266 of file Object.cpp.
References builtin.
Referenced by OpalData::define(), and OpalData::getVariableNames().
|
pure virtual |
Find out if table depends on the object identified by [b]name[/b].
Referenced by OpalData::define().
|
inherited |
True, if the [b]modified[/b] flag is set.
Definition at line 287 of file Object.cpp.
References modified.
|
inherited |
True, if [b]this[/b] is flagged by setFlag(true).
Definition at line 297 of file Object.cpp.
References flagged.
|
virtualinherited |
Shared flag.
Definition at line 271 of file Object.cpp.
References sharedFlag.
Referenced by Sequence::print().
|
inherited |
Test for tree membership.
Definition at line 318 of file Object.cpp.
References Object().
Referenced by Selector::handleElement(), and OpalParser::parseAssign().
|
pure virtual |
|
virtualinherited |
Macro handler function.
Reimplemented in LineTemplate, MacroCmd, and SequenceTemplate.
Definition at line 89 of file Object.cpp.
References getOpalName(), and Object().
Referenced by OpalParser::parseDefine(), and OpalParser::parseMacro().
|
virtualinherited |
Macro handler function.
Reimplemented in Line, LineTemplate, MacroCmd, Sequence, and SequenceTemplate.
Definition at line 82 of file Object.cpp.
References Object().
Referenced by OpalParser::parseMacro().
|
pure virtual |
Check that [b]rhs[/b] is of same type as [b]this[/b].
References Table().
|
inherited |
|
private |
|
virtualinherited |
Parse the object.
Reimplemented in Call, Echo, Help, Line, OpalElement, PSystem, Sequence, System, Title, and Value.
Definition at line 95 of file Object.cpp.
References Statement::delimiter(), findAttribute(), getOpalName(), Expressions::parseDelimiter(), Expressions::parseRealConst(), and Expressions::parseString().
Referenced by Sequence::parse(), OpalParser::parseAction(), OpalParser::parseDefine(), and SequenceTemplate::parseTemplate().
|
virtualinherited |
Parser for single-attribute commands.
Definition at line 127 of file Object.cpp.
References Statement::delimiter(), findAttribute(), getOpalName(), Statement::mark(), and Statement::word().
Referenced by Call::parse(), Echo::parse(), Help::parse(), PSystem::parse(), System::parse(), Title::parse(), and Value::parse().
|
virtualinherited |
Print the object.
Reimplemented in Beam, BoolConstant, DumpEMFields, DumpFields, Line, OpalElement, OpalFilter, OpalMarker, OpalMultipole, OpalMultipoleT, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalGlobalCylindricalOffset, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalRingDefinition, RealConstant, RealVariable, RealVector, Sequence, and StringConstant.
Definition at line 159 of file Object.cpp.
References getOpalName(), getParent(), itsAttr, and Object().
Referenced by printValue().
|
virtualinherited |
Print help.
Definition at line 199 of file Object.cpp.
References gmsg, itsAttr, and itsHelp.
Referenced by Help::execute(), and main().
|
pure virtual |
|
inlinevirtualinherited |
Reimplemented in BoolConstant, RealConstant, RealVariable, RealVector, and StringConstant.
Definition at line 280 of file Object.h.
References print().
|
inherited |
Definition at line 189 of file Object.cpp.
References AttributeHandler::addAttributeOwner(), end(), getOpalName(), getParent(), and itsAttr.
Referenced by Beam::Beam(), BoolConstant::BoolConstant(), BoundaryGeometry::BoundaryGeometry(), Call::Call(), Distribution::Distribution(), DumpEMFields::DumpEMFields(), DumpFields::DumpFields(), Echo::Echo(), Help::Help(), Line::Line(), OpalFilter::OpalFilter(), Option::Option(), PSystem::PSystem(), RealConstant::RealConstant(), RealVariable::RealVariable(), RealVector::RealVector(), Select::Select(), Sequence::Sequence(), StringConstant::StringConstant(), System::System(), Title::Title(), TrackCmd::TrackCmd(), TrackRun::TrackRun(), and Value::Value().
|
inherited |
Register a reference to this object.
Definition at line 180 of file Object.cpp.
References references.
|
inlineinherited |
Replace references.
Reimplemented in Line, and Sequence.
Definition at line 256 of file Object.cpp.
References Object().
|
inherited |
Set/reset the [b]modified[/b] flag.
Definition at line 281 of file Object.cpp.
References modified.
Referenced by OpalData::define(), OpalData::makeDirty(), and RealVariable::RealVariable().
|
inherited |
Flag/unflag this object, e. g. to control output of objects for.
Definition at line 292 of file Object.cpp.
References flagged.
|
inherited |
Set object name.
Definition at line 329 of file Object.cpp.
References itsName.
Referenced by Beam::update(), BoundaryGeometry::update(), and OpalFilter::update().
|
inherited |
Set parent object.
Definition at line 334 of file Object.cpp.
References itsParent, and Object().
Referenced by OpalData::erase().
|
virtualinherited |
Set/reset shared flag.
Reimplemented in Element.
Definition at line 276 of file Object.cpp.
References sharedFlag.
Referenced by OpalParser::parseDefine(), and Element::setShared().
|
virtual |
|
virtual |
|
inherited |
Unegister a reference to this object.
Definition at line 185 of file Object.cpp.
References references.
|
virtualinherited |
Update this object.
Reimplemented in Beam, BoundaryGeometry, Distribution, FieldSolverCmd, OpalCavity, OpalDrift, OpalElement, OpalFilter, OpalMarker, OpalMonitor, OpalMultipole, OpalMultipoleT, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalGlobalCylindricalOffset, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalProbe, OpalRingDefinition, OpalSolenoid, OpalSource, OpalTravelingWave, OpalVacuum, OpalVerticalFFAMagnet, Option, and Sequence.
Definition at line 261 of file Object.cpp.
|
protectedinherited |
Built-in flag.
Definition at line 233 of file Object.h.
Referenced by Beam::Beam(), BoundaryGeometry::BoundaryGeometry(), isBuiltin(), Object(), Object(), OpalFilter::OpalFilter(), OpalMarker::OpalMarker(), RealConstant::RealConstant(), StringConstant::StringConstant(), and Table::~Table().
|
protected |
Flag dynamic table.
Definition at line 153 of file Table.h.
Referenced by invalidate(), Table(), and Table().
|
protectedinherited |
|
inherited |
The object attributes.
Definition at line 216 of file Object.h.
Referenced by Beam::Beam(), BoolConstant::BoolConstant(), BoundaryGeometry::BoundaryGeometry(), BoundaryGeometry::BoundaryGeometry(), DumpEMFields::buildGrid(), DumpFields::buildGrid(), Call::Call(), copyAttributes(), Distribution::Distribution(), DumpEMFields::DumpEMFields(), DumpFields::DumpFields(), Echo::Echo(), Beam::execute(), Call::execute(), Echo::execute(), Help::execute(), Option::execute(), PSystem::execute(), Select::execute(), System::execute(), Title::execute(), TrackCmd::execute(), TrackRun::execute(), Value::execute(), FieldSolverCmd::FieldSolverCmd(), findAttribute(), findAttribute(), BoundaryGeometry::getA(), OpalElement::getApert(), BoundaryGeometry::getB(), BoolConstant::getBool(), FieldSolverCmd::getBoxIncr(), BoundaryGeometry::getC(), Beam::getCharge(), Beam::getCurrent(), FieldSolverCmd::getDomDec(), TrackCmd::getDT(), TrackCmd::getDTAU(), TrackCmd::getDTSCINIT(), BoundaryGeometry::getFilename(), Beam::getFrequency(), BoundaryGeometry::getL1(), BoundaryGeometry::getL2(), BoundaryGeometry::getLength(), Line::getLength(), OpalElement::getLength(), Sequence::getLength(), Beam::getMass(), TrackCmd::getMaxSteps(), Beam::getNumberOfParticles(), FieldSolverCmd::getNX(), FieldSolverCmd::getNY(), FieldSolverCmd::getNZ(), Beam::getParticleName(), RealConstant::getReal(), RealVariable::getReal(), RealVector::getRealComponent(), Sequence::getReference(), BoundaryGeometry::getS(), TrackCmd::getStepsPerTurn(), StringConstant::getString(), TrackCmd::getT0(), TrackCmd::getTimeIntegrator(), BoundaryGeometry::getTopology(), FieldSolverCmd::getType(), TrackCmd::getZStart(), TrackCmd::getZStop(), Help::Help(), BoundaryGeometry::initialize(), OpalFilter::initOpalFilter(), Line::Line(), Object(), Object(), OpalCavity::OpalCavity(), OpalDrift::OpalDrift(), OpalElement::OpalElement(), OpalFilter::OpalFilter(), OpalOffset::OpalGlobalCartesianOffset::OpalGlobalCartesianOffset(), OpalOffset::OpalGlobalCylindricalOffset::OpalGlobalCylindricalOffset(), OpalOffset::OpalLocalCartesianOffset::OpalLocalCartesianOffset(), OpalOffset::OpalLocalCylindricalOffset::OpalLocalCylindricalOffset(), OpalMultipole::OpalMultipole(), OpalMultipoleT::OpalMultipoleT(), OpalProbe::OpalProbe(), OpalRingDefinition::OpalRingDefinition(), OpalSolenoid::OpalSolenoid(), OpalTravelingWave::OpalTravelingWave(), OpalVacuum::OpalVacuum(), OpalVerticalFFAMagnet::OpalVerticalFFAMagnet(), Option::Option(), Option::Option(), Line::parse(), Sequence::parse(), DumpEMFields::parseCoordinateSystem(), Beam::print(), BoolConstant::print(), DumpEMFields::print(), DumpFields::print(), print(), OpalFilter::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), Sequence::print(), StringConstant::print(), TrackRun::print(), printHelp(), BoundaryGeometry::printInfo(), FieldSolverCmd::printInfo(), BoolConstant::printValue(), RealConstant::printValue(), RealVariable::printValue(), RealVector::printValue(), StringConstant::printValue(), PSystem::PSystem(), RealConstant::RealConstant(), RealConstant::RealConstant(), RealVariable::RealVariable(), RealVariable::RealVariable(), RealVector::RealVector(), registerOwnership(), OpalElement::registerOwnership(), Select::Select(), Select::select(), Sequence::Sequence(), Distribution::setDistParametersFlatTop(), Distribution::setDistParametersMultiVariateGauss(), Distribution::setDistType(), FieldSolverCmd::setNX(), FieldSolverCmd::setNY(), FieldSolverCmd::setNZ(), TrackRun::setRunMethod(), Distribution::setSigmaP_m(), Distribution::setSigmaR_m(), TrackRun::setupBoundaryGeometry(), StringConstant::StringConstant(), StringConstant::StringConstant(), System::System(), Title::Title(), TrackCmd::TrackCmd(), TrackRun::TrackRun(), Beam::update(), FieldSolverCmd::update(), OpalCavity::update(), OpalDrift::update(), OpalElement::update(), OpalMonitor::update(), OpalMultipole::update(), OpalMultipoleT::update(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), OpalOffset::OpalLocalCylindricalOffset::update(), OpalProbe::update(), OpalRingDefinition::update(), OpalSolenoid::update(), OpalTravelingWave::update(), OpalVacuum::update(), OpalVerticalFFAMagnet::update(), Option::update(), OpalElement::updateUnknown(), Value::Value(), ValueDefinition::value(), and ValueDefinition::value().
|
privateinherited |
Definition at line 258 of file Object.h.
Referenced by Object(), Object(), and printHelp().
|
privateinherited |
Definition at line 255 of file Object.h.
Referenced by getOpalName(), Object(), Object(), and setOpalName().
|
privateinherited |
Definition at line 252 of file Object.h.
Referenced by getBaseObject(), getParent(), Object(), Object(), and setParent().
|
protectedinherited |
|
privateinherited |
Definition at line 261 of file Object.h.
Referenced by clear(), increment(), Object(), Object(), and occurrenceCount().
|
mutableprivateinherited |
Definition at line 76 of file RCObject.h.
Referenced by addReference(), isShared(), RCObject(), RCObject(), and removeReference().
|
privateinherited |
Definition at line 268 of file Object.h.
Referenced by registerReference(), unregisterReference(), and ~Object().
|
protected |
Refill flag.
Definition at line 158 of file Table.h.
Referenced by invalidate(), Table(), and Table().
|
privateinherited |
Definition at line 271 of file Object.h.
Referenced by isShared(), Object(), Object(), and setShared().