1#ifndef MeasurementValue_H
2#define MeasurementValue_H
10#include <unordered_map>
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
17#include "DateTime.hpp"
26 class MeasurementValue :
public IOPoint
31 ~MeasurementValue()
override;
45 static const char debugName[];
46 const char* debugString()
const override;
48 const std::list<std::string>& getAttributeNames()
const override;
50 const std::string& getClassNamespaceUrl()
const override;
51 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
53 const std::list<CGMESProfile>& getPossibleProfiles()
const override;
54 const CGMESProfile& getRecommendedProfile()
const override;
55 const std::list<CGMESProfile>& getPossibleAttributeProfiles(
const std::string& attrName)
const override;
56 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes()
const override;
58 static void addConstructToMap(std::unordered_map<std::string,
BaseClass* (*)()>& factory_map);
59 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
60 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
61 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
62 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map)
const override;
63 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
65 bool isAssignableFrom(
BaseClass* otherObject)
const override;
69 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Date and time as "yyyy-mm-ddThh:mm:ss.sss", which conforms with ISO 8601. UTC time zone is specified ...
Definition DateTime.hpp:15
Measurement quality flags. Bits 0-10 are defined for substation automation in IEC 61850-7-3....
Definition MeasurementValueQuality.hpp:24
MeasurementValueSource describes the alternative sources updating a MeasurementValue....
Definition MeasurementValueSource.hpp:24
CIMPP::DateTime timeStamp
The time when the value was last updated. Default: "".
Definition MeasurementValue.hpp:43
CIMPP::MeasurementValueSource * MeasurementValueSource
A reference to the type of source that updates the MeasurementValue, e.g. SCADA, CCLink,...
Definition MeasurementValue.hpp:37
CIMPP::PerCent sensorAccuracy
The limit, expressed as a percentage of the sensor maximum, that errors will not exceed when the sens...
Definition MeasurementValue.hpp:40
CIMPP::MeasurementValueQuality * MeasurementValueQuality
A MeasurementValue has a MeasurementValueQuality associated with it. Default: nullptr.
Definition MeasurementValue.hpp:34
Percentage on a defined base. For example, specify as 100 to indicate at the defined base.
Definition PerCent.hpp:14