File Information
Library: IoT/Devices
Package: Generated
Header: IoT/Devices/IScalarDatapoint.h
Description
A scalar datapoint holding a single numeric (double) value.
In addition to the methods defined in this interface, a ScalarDatapoint implementation should expose the following properties:
- physicalQuantity (string): The physical quantity that is being measured by the datapoint, e.g. "temperature".
- physicalUnit (string): The physical unit the measured value is being represented in (e.g. "Cel" for degree Celsius). This should use the "c/s" symbols from the Unified Code for Units of Measure (http://unitsofmeasure.org/ucum.html). See the PHYSICAL_UNIT_* strings for predefined values.
- displayValue (string, optional): The current value of the datapoint, formatted as string for display purposes.
Inheritance
Direct Base Classes: IDatapoint
All Base Classes: IDatapoint, IDevice, Poco::OSP::Service, Poco::RefCountedObject
Known Derived Classes: ScalarDatapointRemoteObject
Member Summary
Member Functions: clearValueChangedFilter, isA, remoting__enableEvents, remoting__typeId, setValueChangedHysteresisFilter, setValueChangedIsGreaterThanFilter, setValueChangedIsGreaterThanOrEqualToFilter, setValueChangedIsLessThanFilter, setValueChangedIsLessThanOrEqualToFilter, setValueChangedMinimumDeltaFilter, setValueChangedMinimumIntervalAndDeltaFilter, setValueChangedMinimumIntervalFilter, setValueChangedMinimumIntervalOrDeltaFilter, type, update, validValue, value
Inherited Functions: duplicate, getFeature, getPropertyBool, getPropertyDouble, getPropertyInt, getPropertyInt16, getPropertyInt64, getPropertyString, getPropertyTimestamp, hasFeature, hasProperty, invalidate, isA, referenceCount, release, remoting__enableEvents, remoting__typeId, setFeature, setPropertyBool, setPropertyDouble, setPropertyInt, setPropertyInt16, setPropertyInt64, setPropertyString, setPropertyTimestamp, type, valid
Types Aliases
Ptr
using Ptr = Poco::AutoPtr < IScalarDatapoint >;
Constructors
IScalarDatapoint
Creates a IScalarDatapoint.
Destructor
~IScalarDatapoint
virtual ~IScalarDatapoint();
Destroys the IScalarDatapoint.
Member Functions
clearValueChangedFilter
virtual void clearValueChangedFilter(
const std::string & subscriberURI
) = 0;
Clears the filter set for the valueChanged event.
isA
bool isA(
const std::type_info & otherType
) const;
Returns true if the class is a subclass of the class given by otherType.
See also: IoT::Devices::IDatapoint::isA()
remoting__enableEvents
virtual std::string remoting__enableEvents(
Poco::RemotingNG::Listener::Ptr pListener,
bool enable = bool (true)
) = 0;
Enable or disable delivery of remote events.
The given Listener instance must implement the Poco::RemotingNG::EventListener interface, otherwise this method will fail with a RemotingException.
This method is only used with Proxy objects; calling this method on a RemoteObject will do nothing.
remoting__typeId
static const Poco::RemotingNG::Identifiable::TypeId & remoting__typeId();
Returns the TypeId of the class.
setValueChangedHysteresisFilter
virtual void setValueChangedHysteresisFilter(
const std::string & subscriberURI,
double lowerThreshold,
double upperThreshold
) = 0;
Sets a Poco::RemotingNG::HysteresisFilter for the valueChanged event.
setValueChangedIsGreaterThanFilter
virtual void setValueChangedIsGreaterThanFilter(
const std::string & subscriberURI,
double limit
) = 0;
Sets a Poco::RemotingNG::GreaterThanFilter for the valueChanged event.
setValueChangedIsGreaterThanOrEqualToFilter
virtual void setValueChangedIsGreaterThanOrEqualToFilter(
const std::string & subscriberURI,
double limit
) = 0;
Sets a Poco::RemotingNG::GreaterThanFilter for the valueChanged event.
setValueChangedIsLessThanFilter
virtual void setValueChangedIsLessThanFilter(
const std::string & subscriberURI,
double limit
) = 0;
Sets a Poco::RemotingNG::LessThanFilter for the valueChanged event.
setValueChangedIsLessThanOrEqualToFilter
virtual void setValueChangedIsLessThanOrEqualToFilter(
const std::string & subscriberURI,
double limit
) = 0;
Sets a Poco::RemotingNG::LessThanOrEqualToFilter for the valueChanged event.
setValueChangedMinimumDeltaFilter
virtual void setValueChangedMinimumDeltaFilter(
const std::string & subscriberURI,
double delta
) = 0;
Sets a Poco::RemotingNG::MinimumDeltaFilter for the valueChanged event.
setValueChangedMinimumIntervalAndDeltaFilter
virtual void setValueChangedMinimumIntervalAndDeltaFilter(
const std::string & subscriberURI,
long milliseconds,
double delta
) = 0;
Sets a Poco::RemotingNG::MinimumIntervalAndDeltaFilter for the valueChanged event.
setValueChangedMinimumIntervalFilter
virtual void setValueChangedMinimumIntervalFilter(
const std::string & subscriberURI,
long milliseconds
) = 0;
Sets a Poco::RemotingNG::MinimumIntervalFilter for the valueChanged event.
setValueChangedMinimumIntervalOrDeltaFilter
virtual void setValueChangedMinimumIntervalOrDeltaFilter(
const std::string & subscriberURI,
long milliseconds,
double delta
) = 0;
Sets a Poco::RemotingNG::MinimumIntervalOrDeltaFilter for the valueChanged event.
type
const std::type_info & type() const;
Returns the type information for the object's class.
See also: IoT::Devices::IDatapoint::type()
update
virtual void update(
double value
) = 0;
Updates the value of the datapoint and makes it valid.
Not all Datapoint implementations may support this method.
validValue
virtual Poco::Optional < double > validValue() const = 0;
Returns the current value held by the datapoint if it is valid, otherwise an empty value.
value
virtual double value() const = 0;
Returns the current value held by the datapoint, even if the datapoint has been invalidated.
Use validValue() to get a valid value only.
Variables
validated
Poco::BasicEvent < const double > validated;
valueChanged
Poco::BasicEvent < const double > valueChanged;
valueUpdated
Poco::BasicEvent < const double > valueUpdated;