isValuePositiveInfinite
Short summary
This method checks if a value is positive infinite (infinity), for details check IEEE 754
:return:
TRUE: value is inifinty
FALSE: value is not inifinty
- Return type:
BOOL
Parameters
| Name | Type | Comment | Kind |
|---|---|---|---|
| value | LREAL | value to check | input |
Code
Declaration
METHOD PROTECTED isValuePositiveInfinite :BOOL
VAR_INPUT
(* value to check *)
value :LREAL;
END_VAR
VAR
(* just to cast the value*)
lrealAsLword :POINTER TO LWORD;
END_VAR
Implementation
lrealAsLword := ADR(value);
isValuePositiveInfinite := (
THIS^.isValueInfinite(value)
AND_THEN ((lrealAsLword^ AND THIS^.MASK_FOR_SIGN_BIT) = THIS^.ZERO)
);