15 #ifndef __IPSDKBASESHAPEANALYSIS_FORMULATYPES_H__ 16 #define __IPSDKBASESHAPEANALYSIS_FORMULATYPES_H__ 19 #include <IPSDKUtil/Tools/ProcessingResult.h> 21 #include <boost/shared_ptr.hpp> 22 #include <boost/variant/variant.hpp> 23 #include <boost/function.hpp> 212 boost::optional<ipUInt32> _colorIndex;
222 struct FormulaVariableId
277 typedef std::map<FormulaVariableId, VariableValuePtr>
VariableMap;
314 typedef boost::variant<
ipBool,
355 #endif // __IPSDKBASESHAPEANALYSIS_FORMULATYPES_H__ Class allowing to encapsulate a typed process result associated to a string description.
Definition: ProcessingResult.h:28
Exponential value [example : 'exp(value)'].
Definition: FormulaTypes.h:91
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Hyperbolic tangent value [example : 'tanH(value)'].
Definition: FormulaTypes.h:111
std::map< FormulaVariableId, VariableValuePtr > VariableMap
map associating a formula variable id to its value
Definition: FormulaTypes.h:326
Image center X [example : 'ImageCenterX'].
Definition: FormulaTypes.h:191
std::vector< FormulaItem > FormulaItemColl
collection of formula item
Definition: FormulaTypes.h:376
Addition unary operator [example : '+value'].
Definition: FormulaTypes.h:43
boost::shared_ptr< FormulaManager > FormulaManagerPtr
shared pointer to formula manager
Definition: FormulaTypes.h:383
Measure formula is associated to an arithmetical result.
Definition: FormulaTypes.h:215
Sinus value of an angle (in radian) [example : 'sin(value)'].
Definition: FormulaTypes.h:97
Logical or binary operator [example : 'value1 || value2'].
Definition: FormulaTypes.h:61
Maximum value computation [example : 'max(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:135
Power binary operator [example : 'value1 ^ value2'].
Definition: FormulaTypes.h:57
boost::shared_ptr< ipReal64 > VariableValuePtr
shared pointer to value associated to a variable
Definition: FormulaTypes.h:288
L1 norm (ie. absolute value norm) computation [example : 'normL1(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:147
Minimum value computation [example : 'min(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:133
Lower comparison operator [example : 'value1 < value2'].
Definition: FormulaTypes.h:71
std::string _varName
name of variable
Definition: FormulaTypes.h:274
Tangent value of an angle (in radian) [example : 'tan(value)'].
Definition: FormulaTypes.h:99
Square root value [example : 'sqrt(value)'].
Definition: FormulaTypes.h:89
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
Image center Z [example : 'ImageCenterZ'].
Definition: FormulaTypes.h:195
Image size Z [example : 'ImageSizeZ'].
Definition: FormulaTypes.h:189
eMsrFormulaGenericArithmeticFunctionType
Enumerate describing measure formula generic arithmetical function type.
Definition: FormulaTypes.h:131
Hyperbolic sinus value [example : 'sinH(value)'].
Definition: FormulaTypes.h:109
Arc Cosinus value [example : 'acos(value)'].
Definition: FormulaTypes.h:101
boost::variant< ipBool, ipReal64 > FormulaResult
formula result (floating point or logical result)
Definition: FormulaTypes.h:246
VariableValuePtr _pValue
value associated to variable
Definition: FormulaTypes.h:321
Definition: DataItemNodeHdrMacrosDetails.h:48
std::vector< ResultsAccessor > ResultsAccessorColl
collection of accessors for measure results
Definition: FormulaTypes.h:392
eMsrFormulaGenericArithmeticFunctionType _functionType
formula generic arithmetic function type identifier
Definition: FormulaTypes.h:337
eMsrFormulaReserved
enumerate describing formula reserved variable
Definition: FormulaTypes.h:183
Distance value computation [example : 'distance(x0, x1, y0, y1, ...)', with a list of arguments forme...
Definition: FormulaTypes.h:160
eMsrFormulaResultType
Enumerate describing measure formula result type.
Definition: FormulaTypes.h:211
FormulaVariableId _id
variable identifier
Definition: FormulaTypes.h:318
Formula identifier for image constant optionally associated to a color index .
Definition: FormulaTypes.h:255
Arc Sinus value [example : 'asin(value)'].
Definition: FormulaTypes.h:103
Cosinus value of an angle (in radian) [example : 'cos(value)'].
Definition: FormulaTypes.h:95
Measure formula evaluation is successful with warnings.
Definition: FormulaTypes.h:231
Subtraction unary operator [example : '-value'].
Definition: FormulaTypes.h:45
ipUInt32 _nbOperands
number of associated operands
Definition: FormulaTypes.h:355
Base types for multiplatform compatibility.
eMsrFormulaBinaryArithmeticFunctionType
Enumerate describing measure formula binary arithmetical function type.
Definition: FormulaTypes.h:120
Logical not unary operator [example : '!value'].
Definition: FormulaTypes.h:47
eMsrFormulaTernaryLogicFunctionType
Enumerate describing measure formula ternary logical function type.
Definition: FormulaTypes.h:169
Equal comparison operator [example : 'value1 == value2'].
Definition: FormulaTypes.h:63
boost::function1< bool, const ipUInt32 > ResultsAccessor
Accessor for measure results.
Definition: FormulaTypes.h:389
VariableValuePtr _pValue
value associated to variable
Definition: FormulaTypes.h:302
Formula coupled arithmetic function informations .
Definition: FormulaTypes.h:349
Sum value computation [example : 'sum(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:137
eMsrFormulaOperatorType
Enumerate describing measure formula operation type.
Definition: FormulaTypes.h:41
Variance value computation [example : 'variance(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:145
Image size Y [example : 'ImageSizeY'].
Definition: FormulaTypes.h:187
Multiplication binary operator [example : 'value1 * value2'].
Definition: FormulaTypes.h:53
ipUInt32 _nbOperands
number of associated operands
Definition: FormulaTypes.h:340
eMsrFormulaCoupledArithmeticFunctionType _functionType
formula generic arithmetic function type identifier
Definition: FormulaTypes.h:352
boost::optional< ipUInt32 > _arrayIndex
index of variable into array
Definition: FormulaTypes.h:280
Addition binary operator [example : 'value1 + value2'].
Definition: FormulaTypes.h:49
Median value computation [example : 'median(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:141
Absolute value [example : 'abs(value)'].
Definition: FormulaTypes.h:87
Image Constant associated to an identifier and a value .
Definition: FormulaTypes.h:296
bool ipBool
Base types definition.
Definition: BaseTypes.h:47
Current image plan maximum grey level [example : 'PlanMaxGL' or 'PlanMaxGL{1}' or 'PlanMaxGL{green}']...
Definition: FormulaTypes.h:199
Subtraction binary operator [example : 'value1 - value2'].
Definition: FormulaTypes.h:51
Hyperbolic cosinus value [example : 'cosH(value)'].
Definition: FormulaTypes.h:107
Measure formula is associated to a logical result.
Definition: FormulaTypes.h:213
Neperian logarithm value [example : 'log(value)'].
Definition: FormulaTypes.h:93
ImageConstantId _id
image constant identifier
Definition: FormulaTypes.h:299
boost::variant< ipBool, ipReal64, ImageConstant, FormulaVariable, eMsrFormulaOperatorType, eMsrFormulaUnaryArithmeticFunctionType, eMsrFormulaBinaryArithmeticFunctionType, FormulaGenericArithmeticFunctionInfo, FormulaCoupledArithmeticFunctionInfo, eMsrFormulaTernaryLogicFunctionType > FormulaItem
Concrete formula item variant.
Definition: FormulaTypes.h:373
Arc Tangent value [example : 'atan(value)'].
Definition: FormulaTypes.h:105
Arc Tangent value [example : 'atan2(valueY, valueX)'].
Definition: FormulaTypes.h:122
Image center Y [example : 'ImageCenterY'].
Definition: FormulaTypes.h:193
Formula generic arithmetic function informations .
Definition: FormulaTypes.h:334
eMsrFormulaCoupledArithmeticFunctionType
Enumerate describing measure coupled formula arithmetical function type.
Definition: FormulaTypes.h:158
Formula variable identifier optionally associated to an array and a color index . ...
Definition: FormulaTypes.h:271
Division binary operator [example : 'value1 / value2'].
Definition: FormulaTypes.h:55
Greater comparison operator [example : 'value1 > value2'].
Definition: FormulaTypes.h:67
eMsrFormulaUnaryArithmeticFunctionType
Enumerate describing measure formula unary arithmetical function type.
Definition: FormulaTypes.h:85
Current image plan minimum grey level [example : 'PlanMinGL' or 'PlanMinGL{1}' or 'PlanMinGL{green}']...
Definition: FormulaTypes.h:197
Lower or equal comparison operator [example : 'value1 <= value2'].
Definition: FormulaTypes.h:73
Standard deviation value computation [example : 'stddev(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:143
Measure formula evaluation is successful.
Definition: FormulaTypes.h:229
Not equal comparison operator [example : 'value1 != value2'].
Definition: FormulaTypes.h:65
Predefined macros for enumerates management.
Logical and binary operator [example : 'value1 && value2'].
Definition: FormulaTypes.h:59
#define IPSDK_ENUM(enumTypeStr, enumSeq)
macro allowing to declare an enumerate for library
Definition: EnumMacros.h:26
Formula variable associated to an identifier and a value .
Definition: FormulaTypes.h:315
std::vector< ResultsAccessorColl > ColorResultsAccessorColl
collection of color accessors for measure results
Definition: FormulaTypes.h:395
Measure formula evaluation failed.
Definition: FormulaTypes.h:233
eFormulaEvaluationStatus
Enumerate describing measure formula evaluation status.
Definition: FormulaTypes.h:227
If logical ternary function [example : 'if(predicateValue, successValue, failureValue)'].
Definition: FormulaTypes.h:171
Greater or equal comparison operator [example : 'value1 >= value2'].
Definition: FormulaTypes.h:69
L2 norm (ie. euclidian norm) computation [example : 'normL2(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:149
Mean value computation [example : 'mean(value1, value2, value3, ...)'].
Definition: FormulaTypes.h:139
boost::optional< ipUInt32 > _colorIndex
color index associated to variable
Definition: FormulaTypes.h:277
Image size X [example : 'ImageSizeX'].
Definition: FormulaTypes.h:185
std::map< ImageConstantId, VariableValuePtr > ConstantMap
map associating an image constant id to its value
Definition: FormulaTypes.h:307
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53