10 #define VALUECLAUSE_H_
78 deleteDataValue_( true )
83 if( NULL != dataValue_ && deleteDataValue_ )
87 if( NULL != subClause_ )
111 DataValue* defaultValue,
Logger& logger,
bool deleteDataValue =
true );
176 bool evalSide(
const ValueClauseSide& side );
Client-side interface for injecting log data into the log queue.
Definition: Logger.h:30
Definition: ValueClause.h:40
static ValueClause * Instance(MissionNode *node, bool nodeIsParent, MissionItem *owner, Logger &logger, bool isStrValue=false)
Definition: ValueClause.cpp:64
Definition: ValueClause.h:38
static DataValue * ReadStrValueUri(MissionNode *node, Logger &logger)
Definition: ValueClause.cpp:234
static Str StripPastLastDot(Str name)
Converts something like Foo:bar.baz into baz.
Definition: ValueClause.cpp:257
Definition: ValueClause.h:33
Represents one side of a value clause equation.
Definition: ValueClause.h:63
Contains the DataReader class definition.
static Operation ReadComparison(MissionNode *node, Logger &logger)
Definition: ValueClause.cpp:319
Wraps a Behavior or Aggregate with mission-specific settings pertaining to that item.
Definition: MissionItem.h:31
Definition: ValueClause.h:44
Logger & logger_
Definition: ValueClause.h:178
ValueClause(DataValue *dataValue, Logger &logger)
Definition: ValueClause.cpp:51
Str sideToString(ValueClauseSide &side)
Definition: ValueClause.cpp:296
Str toString()
Definition: ValueClause.cpp:268
MissionItem * owner_
Definition: ValueClause.h:67
Definition: ValueClause.h:57
static DataValue * ReadDataValue(MissionNode *unitNode, Logger &logger)
Definition: ValueClause.cpp:147
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: DataReader.h:30
ValueClause * subClause_
Definition: ValueClause.h:69
static const Str OP_NAMES[OPCOUNT]
Definition: ValueClause.h:52
Operation
An attempt to define different comparison operators.
Definition: ValueClause.h:32
DataReader * dataReader_
Definition: ValueClause.h:66
ReaderOperation
Definition: ValueClause.h:54
static DataValue * ReadStrValue(MissionNode *node, Logger &logger)
Definition: ValueClause.cpp:208
A DataValue is an abstract base class for a data value and associated engineering units of the value...
Definition: DataValue.h:35
Operation comparison_
Definition: ValueClause.h:99
static bool ReadSide(MissionNode *node, ValueClauseSide &side, MissionItem *owner, Logger &logger, bool isStrValue=false)
Definition: ValueClause.cpp:341
Definition: ValueClause.h:36
A ValueClause is a set of boolean conditions that may be specified as conditions for executing (or st...
Definition: ValueClause.h:26
Definition: ValueClause.h:39
Contains the FlexArrayBase and FlexArray class declarations.
bool negate_
Definition: ValueClause.h:182
Definition: ValueClause.h:32
Definition: ValueClause.h:47
Definition: ValueClause.h:48
Wraps a TiXmlNode.
Definition: MissionNode.h:20
Replacement for standard template class string.
Definition: Str.h:12
static DataReader * ReadReader(MissionNode *node, MissionItem *owner, DataValue *defaultValue, Logger &logger, bool deleteDataValue=true)
Definition: ValueClause.cpp:122
Definition: ValueClause.h:42
Abstract Base class for software components.
Definition: Component.h:53
Definition: ValueClause.h:45
static const Unit * ReadUnit(MissionNode *unitNode, Logger &logger, bool reportErrors=true)
Definition: ValueClause.cpp:196
virtual bool test()
Definition: ValueClause.cpp:532
bool abs_
Definition: ValueClause.h:180
bool wasTouchedSinceLastRun(const Component *component)
Definition: ValueClause.cpp:759
ReaderOperation operationReader_
Definition: ValueClause.h:68
Represents a comparison and the right hand side of a value clause equation.
Definition: ValueClause.h:97
static ValueClauseOperation * ReadOperation(MissionNode *node, MissionItem *owner, Logger &logger)
Definition: ValueClause.cpp:464
Contains the Logger class definition.
DataValue * getDataValue()
Definition: ValueClause.h:147
ValueClauseSide rhs_
Definition: ValueClause.h:100
DataValue * dataValue_
Definition: ValueClause.h:184
Definition: ValueClause.h:35
FlexArray< ValueClauseOperation * > operations_
Definition: ValueClause.h:188
Definition: ValueClause.h:56
DataValue * dataValue_
Definition: ValueClause.h:65
Simple class providing a flexible size array of pointers.
Definition: DataReader.h:19
Definition: ValueClause.h:46
~ValueClauseSide()
Definition: ValueClause.h:81
virtual bool evalStr()
Definition: ValueClause.cpp:544
bool evalSide(const ValueClauseSide &side)
Definition: ValueClause.cpp:489
Definition: ValueClause.h:49
virtual ~ValueClause()
Definition: ValueClause.cpp:42
bool deleteDataValue_
Definition: ValueClause.h:70
Definition: ValueClause.h:37
static Str StripPastColon(Str name)
Converts something like Foo:bar.baz into bar.baz.
Definition: ValueClause.cpp:246
Code that represents an engineering unit.
Definition: Unit.h:24
ValueClauseSide()
Definition: ValueClause.h:72
Definition: ValueClause.h:41
virtual bool eval()
Definition: ValueClause.cpp:561
Definition: ValueClause.h:34
Definition: ValueClause.h:43
ValueClauseSide lhs_
Definition: ValueClause.h:186