QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
Condition Class Reference

#include <Common.h>

Public Types

enum class  Operation {
  AlwaysTrue , AlwaysFalse , GreaterThan , GreaterEqual ,
  Equal , NotEqual , LessThan , LessEqual
}
 

Public Member Functions

 Condition ()=default
 
 Condition (const QString &condition, ParameterManager *parameterManager, const QString &label=QString())
 
bool evaluate () const
 
bool hasCondition () const
 
Factfact () const
 

Detailed Description

Evaluates a string expression containing a vehicle parameter name and comparison to a constant value

Definition at line 76 of file Common.h.

Member Enumeration Documentation

◆ Operation

enum class Condition::Operation
strong
Enumerator
AlwaysTrue 
AlwaysFalse 
GreaterThan 
GreaterEqual 
Equal 
NotEqual 
LessThan 
LessEqual 

Definition at line 79 of file Common.h.

Constructor & Destructor Documentation

◆ Condition() [1/2]

Condition::Condition ( )
default

◆ Condition() [2/2]

Condition::Condition ( const QString &  condition,
ParameterManager parameterManager,
const QString &  label = QString() 
)

Constructor

Parameters
conditiongeneric form: true|false|<param_name><operation><signed integer> where: <operation>: [>,>=,==,!=,<,<=]
parameterManagerparameter manager to resolve parameter names
labeloptional label for debug logging (e.g., "show-ui-if")

Definition at line 98 of file Common.cc.

References AlwaysFalse, AlwaysTrue, ParameterManager::defaultComponentId, Equal, ParameterManager::getParameter(), GreaterEqual, GreaterThan, LessEqual, LessThan, NotEqual, ParameterManager::parameterExists(), FactMetaData::valueTypeBool, and FactMetaData::valueTypeInt32.

Member Function Documentation

◆ evaluate()

◆ fact()

Fact * Condition::fact ( ) const
inline

Definition at line 105 of file Common.h.

Referenced by ActuatorOutputs::ActuatorOutput::ActuatorOutput().

◆ hasCondition()

bool Condition::hasCondition ( ) const
inline

Definition at line 103 of file Common.h.

References AlwaysTrue.


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