RelativeCoordinatePositionerBase::ComponentScope Class Reference

Used for resolving a RelativeCoordinate expression in the context of a component. More...

Inheritance diagram for RelativeCoordinatePositionerBase::ComponentScope:

Public Member Functions

 ComponentScope (Component &)
 
ComponentScopeoperator= (const ComponentScope &)=delete
 
Expression getSymbolValue (const String &symbol) const
 Returns the value of a symbol. More...
 
void visitRelativeScope (const String &scopeName, Visitor &) const
 Creates a Scope object for a named scope, and then calls a visitor to do some kind of processing with this new scope. More...
 
String getScopeUID () const
 Returns some kind of globally unique ID that identifies this scope. More...
 
- Public Member Functions inherited from Expression::Scope
 Scope ()
 
virtual ~Scope ()
 
virtual double evaluateFunction (const String &functionName, const double *parameters, int numParameters) const
 Executes a named function. More...
 

Protected Member Functions

ComponentfindSiblingComponent (const String &componentID) const
 

Protected Attributes

Componentcomponent
 

Detailed Description

Used for resolving a RelativeCoordinate expression in the context of a component.

Constructor & Destructor Documentation

◆ ComponentScope()

RelativeCoordinatePositionerBase::ComponentScope::ComponentScope ( Component )

Member Function Documentation

◆ operator=()

ComponentScope& RelativeCoordinatePositionerBase::ComponentScope::operator= ( const ComponentScope )
delete

◆ getSymbolValue()

Expression RelativeCoordinatePositionerBase::ComponentScope::getSymbolValue ( const String symbol) const
virtual

Returns the value of a symbol.

If the symbol is unknown, this can throw an Expression::EvaluationError exception. The member value is set to the part of the symbol that followed the dot, if there is one, e.g. for "foo.bar", symbol = "foo" and member = "bar".

Exceptions
Expression::EvaluationError

Reimplemented from Expression::Scope.

◆ visitRelativeScope()

void RelativeCoordinatePositionerBase::ComponentScope::visitRelativeScope ( const String scopeName,
Visitor visitor 
) const
virtual

Creates a Scope object for a named scope, and then calls a visitor to do some kind of processing with this new scope.

If the name is valid, this method must create a suitable (temporary) Scope object to represent it, and must call the Visitor::visit() method with this new scope.

Reimplemented from Expression::Scope.

◆ getScopeUID()

String RelativeCoordinatePositionerBase::ComponentScope::getScopeUID ( ) const
virtual

Returns some kind of globally unique ID that identifies this scope.

Reimplemented from Expression::Scope.

◆ findSiblingComponent()

Component* RelativeCoordinatePositionerBase::ComponentScope::findSiblingComponent ( const String componentID) const
protected

Member Data Documentation

◆ component

Component& RelativeCoordinatePositionerBase::ComponentScope::component
protected

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