IoT::Devices

class ScalarDatapointRemoteObject

File Information

Library: IoT/Devices
Package: Generated
Header: IoT/Devices/ScalarDatapointRemoteObject.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: IScalarDatapoint, Poco::RemotingNG::RemoteObject

All Base Classes: IDatapoint, IDevice, IScalarDatapoint, Poco::OSP::Service, Poco::RefCountedObject, Poco::RemotingNG::Identifiable, Poco::RemotingNG::RemoteObject

Member Summary

Member Functions: clearValueChangedFilter, event__invalidated, event__statusChanged, event__validated, event__valueChanged, event__valueUpdated, getFeature, getPropertyBool, getPropertyDouble, getPropertyInt, getPropertyInt16, getPropertyInt64, getPropertyString, getPropertyTimestamp, hasFeature, hasProperty, invalidate, remoting__enableEvents, remoting__enableRemoteEvents, remoting__hasEvents, remoting__typeId, setFeature, setPropertyBool, setPropertyDouble, setPropertyInt, setPropertyInt16, setPropertyInt64, setPropertyString, setPropertyTimestamp, setValueChangedHysteresisFilter, setValueChangedIsGreaterThanFilter, setValueChangedIsGreaterThanOrEqualToFilter, setValueChangedIsLessThanFilter, setValueChangedIsLessThanOrEqualToFilter, setValueChangedMinimumDeltaFilter, setValueChangedMinimumIntervalAndDeltaFilter, setValueChangedMinimumIntervalFilter, setValueChangedMinimumIntervalOrDeltaFilter, update, valid, validValue, value

Inherited Functions: clearValueChangedFilter, duplicate, getFeature, getPropertyBool, getPropertyDouble, getPropertyInt, getPropertyInt16, getPropertyInt64, getPropertyString, getPropertyTimestamp, hasFeature, hasProperty, invalidate, isA, mutex, referenceCount, release, remoting__enableEvents, remoting__enableRemoteEvents, remoting__getURI, remoting__hasEvents, remoting__objectId, remoting__setURI, remoting__typeId, setFeature, setPropertyBool, setPropertyDouble, setPropertyInt, setPropertyInt16, setPropertyInt64, setPropertyString, setPropertyTimestamp, setValueChangedHysteresisFilter, setValueChangedIsGreaterThanFilter, setValueChangedIsGreaterThanOrEqualToFilter, setValueChangedIsLessThanFilter, setValueChangedIsLessThanOrEqualToFilter, setValueChangedMinimumDeltaFilter, setValueChangedMinimumIntervalAndDeltaFilter, setValueChangedMinimumIntervalFilter, setValueChangedMinimumIntervalOrDeltaFilter, type, update, valid, validValue, value

Types Aliases

Ptr

using Ptr = Poco::AutoPtr < ScalarDatapointRemoteObject >;

Constructors

ScalarDatapointRemoteObject

ScalarDatapointRemoteObject(
    const Poco::RemotingNG::Identifiable::ObjectId & oid,
    Poco::SharedPtr < IoT::Devices::ScalarDatapoint > pServiceObject
);

Destructor

~ScalarDatapointRemoteObject virtual

virtual ~ScalarDatapointRemoteObject();

Member Functions

clearValueChangedFilter virtual inline

void clearValueChangedFilter(
    const std::string & subscriberURI
);

Clears the filter set for the valueChanged event.

getFeature virtual inline

virtual bool getFeature(
    const std::string & name
) const;

Returns true if the feature with the given name is enabled, or false otherwise.

getPropertyBool virtual inline

virtual bool getPropertyBool(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyDouble virtual inline

virtual double getPropertyDouble(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyInt virtual inline

virtual int getPropertyInt(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyInt16 virtual inline

virtual Poco::Int16 getPropertyInt16(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyInt64 virtual inline

virtual Poco::Int64 getPropertyInt64(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyString virtual inline

virtual std::string getPropertyString(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

getPropertyTimestamp virtual inline

virtual Poco::Timestamp getPropertyTimestamp(
    const std::string & name
) const;

Returns the value of the device property with the given name.

Throws a Poco::NotFoundException if the property with the given name is unknown.

hasFeature virtual inline

virtual bool hasFeature(
    const std::string & name
) const;

Returns true if the feature with the given name is known, or false otherwise.

hasProperty virtual inline

virtual bool hasProperty(
    const std::string & name
) const;

Returns true if the property with the given name exists, or false otherwise.

invalidate virtual inline

virtual void invalidate();

Invalidates the datapoint's value.

Subsequent calls to valid() will return false, until a new value has been set.

remoting__enableEvents virtual

virtual std::string remoting__enableEvents(
    Poco::RemotingNG::Listener::Ptr pListener,
    bool enable = bool (true)
);

remoting__enableRemoteEvents virtual

virtual void remoting__enableRemoteEvents(
    const std::string & protocol
);

remoting__hasEvents virtual

virtual bool remoting__hasEvents() const;

remoting__typeId virtual inline

virtual const Poco::RemotingNG::Identifiable::TypeId & remoting__typeId() const;

setFeature virtual inline

virtual void setFeature(
    const std::string & name,
    bool enable
);

Enables or disables the feature with the given name.

Which features are supported is defined by the actual device implementation.

setPropertyBool virtual inline

virtual void setPropertyBool(
    const std::string & name,
    bool value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyDouble virtual inline

virtual void setPropertyDouble(
    const std::string & name,
    double value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyInt virtual inline

virtual void setPropertyInt(
    const std::string & name,
    int value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyInt16 virtual inline

virtual void setPropertyInt16(
    const std::string & name,
    Poco::Int16 value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyInt64 virtual inline

virtual void setPropertyInt64(
    const std::string & name,
    Poco::Int64 value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyString virtual inline

virtual void setPropertyString(
    const std::string & name,
    const std::string & value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setPropertyTimestamp virtual inline

virtual void setPropertyTimestamp(
    const std::string & name,
    Poco::Timestamp value
);

Sets a device property.

Which properties are supported is defined by the actual device implementation.

setValueChangedHysteresisFilter virtual inline

void setValueChangedHysteresisFilter(
    const std::string & subscriberURI,
    double lowerThreshold,
    double upperThreshold
);

Sets a Poco::RemotingNG::HysteresisFilter for the valueChanged event.

setValueChangedIsGreaterThanFilter virtual inline

void setValueChangedIsGreaterThanFilter(
    const std::string & subscriberURI,
    double limit
);

Sets a Poco::RemotingNG::GreaterThanFilter for the valueChanged event.

setValueChangedIsGreaterThanOrEqualToFilter virtual inline

void setValueChangedIsGreaterThanOrEqualToFilter(
    const std::string & subscriberURI,
    double limit
);

Sets a Poco::RemotingNG::GreaterThanFilter for the valueChanged event.

setValueChangedIsLessThanFilter virtual inline

void setValueChangedIsLessThanFilter(
    const std::string & subscriberURI,
    double limit
);

Sets a Poco::RemotingNG::LessThanFilter for the valueChanged event.

setValueChangedIsLessThanOrEqualToFilter virtual inline

void setValueChangedIsLessThanOrEqualToFilter(
    const std::string & subscriberURI,
    double limit
);

Sets a Poco::RemotingNG::LessThanOrEqualToFilter for the valueChanged event.

setValueChangedMinimumDeltaFilter virtual inline

void setValueChangedMinimumDeltaFilter(
    const std::string & subscriberURI,
    double delta
);

Sets a Poco::RemotingNG::MinimumDeltaFilter for the valueChanged event.

setValueChangedMinimumIntervalAndDeltaFilter virtual inline

void setValueChangedMinimumIntervalAndDeltaFilter(
    const std::string & subscriberURI,
    long milliseconds,
    double delta
);

Sets a Poco::RemotingNG::MinimumIntervalAndDeltaFilter for the valueChanged event.

setValueChangedMinimumIntervalFilter virtual inline

void setValueChangedMinimumIntervalFilter(
    const std::string & subscriberURI,
    long milliseconds
);

Sets a Poco::RemotingNG::MinimumIntervalFilter for the valueChanged event.

setValueChangedMinimumIntervalOrDeltaFilter virtual inline

void setValueChangedMinimumIntervalOrDeltaFilter(
    const std::string & subscriberURI,
    long milliseconds,
    double delta
);

Sets a Poco::RemotingNG::MinimumIntervalOrDeltaFilter for the valueChanged event.

update virtual inline

virtual void update(
    double value
);

Updates the value of the datapoint and makes it valid.

Not all Datapoint implementations may support this method.

valid virtual inline

virtual bool valid() const;

Returns true if a valid value is available.

Note that between the time valid() is called and a subsequent call to value() or similar method, the validity may change. Use validValue() or similar methods of subclasses to atomically get validity and value.

validValue virtual inline

Poco::Optional < double > validValue() const;

Returns the current value held by the datapoint if it is valid, otherwise an empty value.

value virtual inline

virtual double value() const;

Returns the current value held by the datapoint, even if the datapoint has been invalidated.

Use validValue() to get a valid value only.

event__invalidated protected

void event__invalidated();

event__statusChanged protected

void event__statusChanged(
    const IoT::Devices::DeviceStatusChange & data
);

event__validated protected

void event__validated(
    const double & data
);

event__valueChanged protected

void event__valueChanged(
    const double & data
);

event__valueUpdated protected

void event__valueUpdated(
    const double & data
);

Securely control IoT edge devices from anywhere   Connect a Device