LuciadCPillar 2023.1.04
|
Class containing static factory methods to create different types of expressions and conditions. More...
#include <luciad/expressions/ExpressionFactory.h>
Public Member Functions | |
ExpressionFactory ()=delete | |
~ExpressionFactory ()=delete | |
Static Public Member Functions | |
static Expression | andOp (std::vector< Expression > conditions) |
Creates a new and condition that evaluates to true if all of the conditions in conditions are true. More... | |
static Expression | bbox (Expression expression) |
Creates a condition that evaluates to true when the given expression interacts with the feature geometry. More... | |
static Expression | bbox (Expression left, Expression right) |
Creates a condition that evaluates to true when left interacts with right bounding box. More... | |
static Expression | equal (Expression left, Expression right) |
Creates a condition that evaluates to true when left is equal to right . More... | |
static Expression | gt (Expression left, Expression right) |
Creates a condition that evaluates to true when left is greater than right . More... | |
static Expression | gte (Expression left, Expression right) |
Creates a condition that evaluates to true when left is greater than or equal to right . More... | |
static Expression | like (std::string propertyPath, std::string pattern, bool matchCase) |
Creates a like expression using a value reference (property name) based on a simple xpath expression and a pattern. More... | |
static Expression | like (std::string propertyPath, std::string pattern, bool matchCase, char wildCard, char singleChar, char escapeChar) |
Creates a like expression using a value reference (property name) based on a simple xpath expression and a pattern. More... | |
static Expression | literal (ExpressionValue value) |
Creates a literal for the ExpressionValue value. More... | |
static Expression | lt (Expression left, Expression right) |
Creates a condition that evaluates to true when left is less than right . More... | |
static Expression | lte (Expression left, Expression right) |
Creates a condition that evaluates to true when left is less than or equal to right . More... | |
static Expression | notEqual (Expression left, Expression right) |
Creates a condition that evaluates to true when left is not equal to right . More... | |
static Expression | notOp (Expression condition) |
Creates a condition that evaluates to true when the given condition is false and vice versa. More... | |
static Expression | orOp (std::vector< Expression > conditions) |
Creates a new or condition that evaluates to true if one of the conditions in conditions is true. More... | |
static Expression | valueReference (std::string propertyPath) |
Creates a value reference (property name) based on a simple xpath expression. More... | |
Class containing static factory methods to create different types of expressions and conditions.
|
delete |
|
delete |
|
static |
Creates a new and
condition that evaluates to true if all of the conditions in conditions
are true.
conditions | Two or more conditions. |
and
operator. luciad::LogicException | when there are less than 2 conditions. |
|
static |
Creates a condition that evaluates to true when the given expression interacts with the feature geometry.
expression | must be a Geometry Expression containing a Bounds. |
|
static |
Creates a condition that evaluates to true when left
interacts with right
bounding box.
left | Left expression. |
right | Right expression. |
|
static |
Creates a condition that evaluates to true when left
is equal to right
.
left | Left expression. |
right | Right expression. |
equals
operator.
|
static |
Creates a condition that evaluates to true when left
is greater than right
.
left | Left expression. |
right | Right expression. |
greater than
operator.
|
static |
Creates a condition that evaluates to true when left
is greater than or equal to right
.
left | Left expression. |
right | Right expression. |
greater than or equal to
operator.
|
static |
Creates a like expression using a value reference (property name) based on a simple xpath expression and a pattern.
Nested properties can be referenced by using the '/' as separator.
The pattern uses default values for a wildcard ('*'), a single char ('?') and the escape character ('\').
propertyPath | Path for the property whose value needs to be retrieved. |
pattern | The pattern to match. |
matchCase | Whether to match case sensitive or case insensitive. |
|
static |
Creates a like expression using a value reference (property name) based on a simple xpath expression and a pattern.
Nested properties can be referenced by using the '/' as separator.
propertyPath | Path for the property whose value needs to be retrieved. |
pattern | The pattern to match. |
matchCase | Whether to match case sensitive or case insensitive. |
wildCard | The character used as wild card to match zero or more characters. |
singleChar | The character used as single character to match exactly one character. |
escapeChar | The character used to escape the meaning of the wildCard , singleChar and escapeChar itself. |
|
static |
Creates a literal for the ExpressionValue
value.
value | The expression value. |
|
static |
Creates a condition that evaluates to true when left
is less than right
.
left | Left expression. |
right | Right expression. |
less than
operator.
|
static |
Creates a condition that evaluates to true when left
is less than or equal to right
.
left | Left expression. |
right | Right expression. |
less than or equal to
operator.
|
static |
Creates a condition that evaluates to true when left
is not equal to right
.
left | Left expression. |
right | Right expression. |
not equals
operator.
|
static |
Creates a condition that evaluates to true when the given condition is false and vice versa.
condition | Condition to invert. |
|
static |
Creates a new or
condition that evaluates to true if one of the conditions in conditions
is true.
conditions | Two or more conditions. |
or
operator. luciad::LogicException | when there are less than 2 conditions. |
|
static |
Creates a value reference (property name) based on a simple xpath expression.
Nested properties can be referenced by using the '/' as separator.
propertyPath | Path for the property whose value needs to be retrieved. |