Class ParameterObject¶
Defined in File ParameterObject.h
Inheritance Relationships¶
Base Type¶
public eipScanner::BaseObject
(Class BaseObject)
Class Documentation¶
-
class
ParameterObject
: public eipScanner::BaseObject¶ Implements interface to Parameter Object (0x0F).
It reads all data from the CIP instance in the constructor
Public Functions
-
ParameterObject
(cip::CipUint instanceId, bool fullAttributes, const SessionInfoIf::SPtr &si)¶ Creates an instance and reads all its data via EIP.
- Parameters
instanceId
: the ID of the CIP instancefullAttributes
: if true, then read all the attributes including scaling attributes and text descriptionssi
: the EIP session for explicit messaging
- Exceptions
std::runtime_error
:std::system_error
:
-
ParameterObject
(cip::CipUint instanceId, bool fullAttributes, size_t typeSize)¶ Creates an empty instance without any EIP requests.
- Parameters
instanceId
: the ID of the CIP instancefullAttributes
: if true, then read all the attributes including scaling attributes and text descriptionstypeSize
: the size of the value in bytes
- Exceptions
std::runtime_error
:std::system_error
:
-
ParameterObject
(cip::CipUint instanceId, bool fullAttributes, const SessionInfoIf::SPtr &si, const MessageRouter::SPtr &messageRouter)¶ Creates an instance and reads all its data via EIP.
- Note
Used for testing
- Parameters
instanceId
:fullAttributes
:si
:
-
~ParameterObject
()¶ Default destructor.
-
void
updateValue
(const SessionInfoIf::SPtr &si)¶ Updates the parameter value from the instance.
- Parameters
si
: the Session Info for explicit messaging
- Exceptions
std::runtime_error
:std::system_error
:
-
bool
isScalable
() const¶ - Return
true if the parameter supports scaling
-
void
setScalable
(bool isScalable)¶ - Parameters
isScalable
: true if the parameter supports scaling
-
bool
isReadOnly
() const¶ - Return
true if the parameter value is read only
-
void
setReadOnly
(bool isReadOnly)¶ - Parameters
isReadOnly
: true if the parameter value is read only
-
template<typename
T
>
TgetActualValue
() const¶ Gets an actual value [AttrID=1] of the parameter.
- Note
This is just a getter. To read value from EIP device, use ParameterObject::updateValue
- Return
the value of type T
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
cip::CipLrealgetEngValue
() const¶ Gets a value of the parameter in EU For scaling the method uses scalling attributes (Multiplier [AttrID=13], Divisor [AttrID=14], Base [AttrID=15], Offset[ ID=16] and Precision [AttrID=21].
The formula is: Value in EU = ((Actual Value + Offset)*Multiplier*Base)/(Divisor*10^Precision)
- Note
it scales the actual value if ParameterObject::isScalable is true, else it returns the original actual value
- Return
the value in EU
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
TgetMinValue
() const¶ Gets a minimal value [AttrID=10] of the parameter.
- Note
The behavior is the same as ParameterObject::getActualValue
- Return
the value of type T
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
cip::CipLrealgetEngMinValue
() const¶ Gets a minimal value of the parameter in EU.
- Note
The behavior is the same as ParameterObject::getEngValue
- Return
the value in EU
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
voidsetEngMinValue
(cip::CipLreal value)¶ Sets a minimal value of the parameter in EU.
- Template Parameters
T
: the type of the parameter
- Parameters
value
:
-
template<typename
T
>
TgetMaxValue
() const¶ Gets a maximal value [AttrID=11] of the parameter.
- Note
The behavior is the same as ParameterObject::getActualValue
- Return
the value of type T
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
cip::CipLrealgetEngMaxValue
() const¶ Gets a maximal value of the parameter in EU.
- Note
The behavior is the same as ParameterObject::getEngValue
- Return
the value in EU
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
voidsetEngMaxValue
(cip::CipLreal value)¶ Sets a maximal value of the parameter in EU.
- Template Parameters
T
: the type of the parameter
- Parameters
value
:
-
template<typename
T
>
TgetDefaultValue
() const¶ Gets an default value [AttrID=12] of the parameter.
- Note
The behavior is the same as ParameterObject::getActualValue
- Return
the value of type T
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
cip::CipLrealgetEngDefaultValue
() const¶ Gets a default value of the parameter in EU.
- Note
The behavior is the same as ParameterObject::getEngValue
- Return
the value in EU
- Template Parameters
T
: the type of the parameter
-
template<typename
T
>
voidsetEngDefaultValue
(cip::CipLreal value)¶ Sets a default value of the parameter in EU.
- Template Parameters
T
: the type of the parameter
- Parameters
value
:
-
bool
hasFullAttributes
() const¶ - Return
true if the parameter supports full data including scaling attributes and text descriptions
-
cip::CipDataTypes
getType
() const¶ Gets the type code [AttrID=5] of the parameter.
- Return
-
void
setType
(cip::CipDataTypes type)¶ Sets the type code [AttrID=5] of the parameter.
- Parameters
type
:
-
const std::string &
getName
() const¶ Gets the name [AttrID=7] of the parameter.
- Return
-
const std::string &
getUnits
() const¶ Gets the units [AttrID=8] of the parameter.
- Return
-
const std::string &
getHelp
() const¶ Gets the help string [AttrID=9] of the parameter.
- Return
-
void
setName
(const std::string &name)¶ Sets the name [AttrID=7] of the parameter.
- Parameters
name
:
-
void
setUnits
(const std::string &units)¶ Sets the units [AttrID=8] of the parameter.
- Parameters
units
:
-
void
setHelp
(const std::string &help)¶ Sets the help string [AttrID=9] of the parameter.
- Parameters
help
:
-
CipUint
getScalingMultiplier
() const¶ Gets the multiplier [AttrID=13] of the parameter.
- Return
-
CipUint
getScalingDivisor
() const¶ Gets the divisor [AttrID=14] of the parameter.
- Return
-
CipUint
getScalingBase
() const¶ Gets the base [AttrID=15] of the parameter.
- Return
-
CipInt
getScalingOffset
() const¶ Gets the offset [AttrID=16] of the parameter.
- Return
-
CipUsint
getPrecision
() const¶ Gets the precision [AttrID=21] of the parameter.
- Return
-
void
setScalingMultiplier
(cip::CipUint scalingMultiplier)¶ Sets the multiplier [AttrID=13] of the parameter.
- Parameters
scalingMultiplier
:
-
void
setScalingDivisor
(cip::CipUint scalingDivisor)¶ Sets the divisor [AttrID=14] of the parameter.
- Parameters
scalingDivisor
:
-
void
setScalingBase
(cip::CipUint scalingBase)¶ Sets the base [AttrID=15] of the parameter.
- Parameters
scalingBase
:
-
void
setScalingOffset
(cip::CipInt scalingOffset)¶ Sets the offset [AttrID=16] of the parameter.
- Parameters
scalingOffset
:
-