Part of an expressions that contains a unit. More...
#include <ExpressionParser.h>
Public Member Functions | |
| const Base::Quantity & | getQuantity () const |
| double | getScaler () const |
| const Base::Unit & | getUnit () const |
| const std::string | getUnitString () const |
| double | getValue () const |
| void | setQuantity (const Base::Quantity &_quantity) |
| void | setUnit (const Base::Quantity &_quantity) |
| Set unit information. More... | |
| virtual Expression * | simplify () const override |
| Simplify the expression. More... | |
| UnitExpression (const App::DocumentObject *_owner=nullptr, const Base::Quantity &_quantity=Base::Quantity(), const std::string &_unitStr=std::string()) | |
| ~UnitExpression () | |
Public Member Functions inherited from App::Expression | |
| virtual void | addComponent (Component *component) |
| bool | adjustLinks (const std::set< App::DocumentObject * > &inList) |
| Expression * | copy () const |
| Expression * | eval () const |
| Expression (const App::DocumentObject *_owner) | |
| void | getDepObjects (std::map< App::DocumentObject *, bool > &, std::vector< std::string > *labels=nullptr) const |
| std::map< App::DocumentObject *, bool > | getDepObjects (std::vector< std::string > *labels=nullptr) const |
| void | getDeps (ExpressionDeps &deps, int option=DepNormal) const |
| ExpressionDeps | getDeps (int option=DepNormal) const |
| std::map< App::ObjectIdentifier, bool > | getIdentifiers () const |
| void | getIdentifiers (std::map< App::ObjectIdentifier, bool > &) const |
| App::DocumentObject * | getOwner () const |
| Py::Object | getPyValue () const |
| boost::any | getValueAsAny () const |
| bool | hasComponent () const |
| ExpressionPtr | importSubNames (const std::map< std::string, std::string > &nameMap) const |
| bool | isSame (const Expression &other, bool checkComment=true) const |
| virtual bool | isTouched () const |
| virtual int | priority () const |
| ExpressionPtr | replaceObject (const App::DocumentObject *parent, App::DocumentObject *oldObj, App::DocumentObject *newObj) const |
| virtual Expression * | simplify () const =0 |
| std::string | toString (bool persistent=false, bool checkPriority=false, int indent=0) const |
| void | toString (std::ostream &os, bool persistent=false, bool checkPriority=false, int indent=0) const |
| ExpressionPtr | updateLabelReference (App::DocumentObject *obj, const std::string &ref, const char *newLabel) const |
| void | visit (ExpressionVisitor &v) |
| virtual | ~Expression () |
Public Member Functions inherited from Base::BaseClass | |
| BaseClass () | |
| Construction. More... | |
| BaseClass (const BaseClass &)=default | |
| virtual PyObject * | getPyObject () |
| This method returns the Python wrapper for a C++ object. More... | |
| virtual Type | getTypeId () const |
| bool | isDerivedFrom (const Type type) const |
| BaseClass & | operator= (const BaseClass &)=default |
| virtual void | setPyObject (PyObject *) |
| virtual | ~BaseClass () |
| Destruction. More... | |
Protected Attributes | |
| PyObject * | cache = nullptr |
Protected Attributes inherited from App::Expression | |
| ComponentList | components |
| App::DocumentObject * | owner |
| The document object used to access unqualified variables (i.e local scope) More... | |
Additional Inherited Members | |
Public Types inherited from App::Expression | |
| typedef std::vector< Component * > | ComponentList |
| enum | DepOption { DepNormal , DepHidden , DepAll } |
Static Public Member Functions inherited from App::Expression | |
| static Component * | createComponent (const std::string &n) |
| static Component * | createComponent (Expression *e1, Expression *e2=nullptr, Expression *e3=nullptr, bool isRange=false) |
| static Expression * | parse (const App::DocumentObject *owner, const std::string &buffer) |
Static Public Member Functions inherited from Base::BaseClass | |
| static void * | create () |
| static Type | getClassTypeId () |
| static void | init () |
Public Attributes inherited from App::Expression | |
| std::string | comment |
| friend | ExpressionVisitor |
Static Protected Member Functions inherited from Base::BaseClass | |
| static void | initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=nullptr) |
Part of an expressions that contains a unit.
| UnitExpression::UnitExpression | ( | const App::DocumentObject * | _owner = nullptr, |
| const Base::Quantity & | _quantity = Base::Quantity(), |
||
| const std::string & | _unitStr = std::string() |
||
| ) |
| UnitExpression::~UnitExpression | ( | ) |
| const Base::Quantity & App::UnitExpression::getQuantity | ( | ) | const |
Referenced by Gui::QuantitySpinBox::setNumberExpression().
| double App::UnitExpression::getScaler | ( | ) | const |
| const Base::Unit & App::UnitExpression::getUnit | ( | ) | const |
| const std::string App::UnitExpression::getUnitString | ( | ) | const |
| double App::UnitExpression::getValue | ( | ) | const |
| void UnitExpression::setQuantity | ( | const Base::Quantity & | _quantity | ) |
| void UnitExpression::setUnit | ( | const Base::Quantity & | _quantity | ) |
Set unit information.
| _unit | A unit object |
| _unitstr | The unit expressed as a string |
| _scaler | Scale factor to convert unit into internal unit. |
|
overridevirtual |
Simplify the expression.
In this case, a NumberExpression is returned, as it cannot be simplified any more.
Implements App::Expression.
Reimplemented in App::NumberExpression, App::OperatorExpression, App::FunctionExpression, and App::VariableExpression.
References App::Expression::owner.
|
mutableprotected |