github.com/enbility/spine-go@v0.7.0/model/measurement.go (about)

     1  package model
     2  
     3  type MeasurementIdType uint
     4  
     5  type MeasurementTypeType string
     6  
     7  const (
     8  	MeasurementTypeTypeAcceleration        MeasurementTypeType = "acceleration"
     9  	MeasurementTypeTypeAngle               MeasurementTypeType = "angle"
    10  	MeasurementTypeTypeAngularVelocity     MeasurementTypeType = "angularVelocity"
    11  	MeasurementTypeTypeArea                MeasurementTypeType = "area"
    12  	MeasurementTypeTypeAtmosphericPressure MeasurementTypeType = "atmosphericPressure"
    13  	MeasurementTypeTypeCapacity            MeasurementTypeType = "capacity"
    14  	MeasurementTypeTypeConcentration       MeasurementTypeType = "concentration"
    15  	MeasurementTypeTypeCount               MeasurementTypeType = "count"
    16  	MeasurementTypeTypeCurrent             MeasurementTypeType = "current"
    17  	MeasurementTypeTypeDensity             MeasurementTypeType = "density"
    18  	MeasurementTypeTypeDistance            MeasurementTypeType = "distance"
    19  	MeasurementTypeTypeElectricField       MeasurementTypeType = "electricField"
    20  	MeasurementTypeTypeEnergy              MeasurementTypeType = "energy"
    21  	MeasurementTypeTypeForce               MeasurementTypeType = "force"
    22  	MeasurementTypeTypeFrequency           MeasurementTypeType = "frequency"
    23  	MeasurementTypeTypeHarmonicDistortion  MeasurementTypeType = "harmonicDistortion"
    24  	MeasurementTypeTypeHeat                MeasurementTypeType = "heat"
    25  	MeasurementTypeTypeHeatFlux            MeasurementTypeType = "heatFlux"
    26  	MeasurementTypeTypeIlluminance         MeasurementTypeType = "illuminance"
    27  	MeasurementTypeTypeImpulse             MeasurementTypeType = "impulse"
    28  	MeasurementTypeTypeLevel               MeasurementTypeType = "level"
    29  	MeasurementTypeTypeMagneticField       MeasurementTypeType = "magneticField"
    30  	MeasurementTypeTypeMass                MeasurementTypeType = "mass"
    31  	MeasurementTypeTypeMassFlow            MeasurementTypeType = "massFlow"
    32  	MeasurementTypeTypeParticles           MeasurementTypeType = "particles"
    33  	MeasurementTypeTypePercentage          MeasurementTypeType = "percentage"
    34  	MeasurementTypeTypePower               MeasurementTypeType = "power"
    35  	MeasurementTypeTypePowerFactor         MeasurementTypeType = "powerFactor"
    36  	MeasurementTypeTypePressure            MeasurementTypeType = "pressure"
    37  	MeasurementTypeTypeRadonActivity       MeasurementTypeType = "radonActivity"
    38  	MeasurementTypeTypeRelativeHumidity    MeasurementTypeType = "relativeHumidity"
    39  	MeasurementTypeTypeResistance          MeasurementTypeType = "resistance"
    40  	MeasurementTypeTypeSolarRadiation      MeasurementTypeType = "solarRadiation"
    41  	MeasurementTypeTypeSpeed               MeasurementTypeType = "speed"
    42  	MeasurementTypeTypeTemperature         MeasurementTypeType = "temperature"
    43  	MeasurementTypeTypeTime                MeasurementTypeType = "time"
    44  	MeasurementTypeTypeTorque              MeasurementTypeType = "torque"
    45  	MeasurementTypeTypeUnknown             MeasurementTypeType = "unknown"
    46  	MeasurementTypeTypeVelocity            MeasurementTypeType = "velocity"
    47  	MeasurementTypeTypeVoltage             MeasurementTypeType = "voltage"
    48  	MeasurementTypeTypeVolume              MeasurementTypeType = "volume"
    49  	MeasurementTypeTypeVolumetricFlow      MeasurementTypeType = "volumetricFlow"
    50  )
    51  
    52  type MeasurementValueTypeType string
    53  
    54  const (
    55  	MeasurementValueTypeTypeValue             MeasurementValueTypeType = "value"
    56  	MeasurementValueTypeTypeAverageValue      MeasurementValueTypeType = "averageValue"
    57  	MeasurementValueTypeTypeMinValue          MeasurementValueTypeType = "minValue"
    58  	MeasurementValueTypeTypeMaxValue          MeasurementValueTypeType = "maxValue"
    59  	MeasurementValueTypeTypeStandardDeviation MeasurementValueTypeType = "standardDeviation"
    60  )
    61  
    62  type MeasurementValueSourceType string
    63  
    64  const (
    65  	MeasurementValueSourceTypeMeasuredValue   MeasurementValueSourceType = "measuredValue"
    66  	MeasurementValueSourceTypeCalculatedValue MeasurementValueSourceType = "calculatedValue"
    67  	MeasurementValueSourceTypeEmpiricalValue  MeasurementValueSourceType = "empiricalValue"
    68  )
    69  
    70  type MeasurementValueTendencyType string
    71  
    72  const (
    73  	MeasurementValueTendencyTypeRising  MeasurementValueTendencyType = "rising"
    74  	MeasurementValueTendencyTypeStable  MeasurementValueTendencyType = "stable"
    75  	MeasurementValueTendencyTypeFalling MeasurementValueTendencyType = "falling"
    76  )
    77  
    78  type MeasurementValueStateType string
    79  
    80  const (
    81  	MeasurementValueStateTypeNormal     MeasurementValueStateType = "normal"
    82  	MeasurementValueStateTypeOutofrange MeasurementValueStateType = "outOfRange"
    83  	MeasurementValueStateTypeError      MeasurementValueStateType = "error"
    84  )
    85  
    86  type MeasurementDataType struct {
    87  	MeasurementId    *MeasurementIdType            `json:"measurementId,omitempty" eebus:"key"`
    88  	ValueType        *MeasurementValueTypeType     `json:"valueType,omitempty" eebus:"key"`
    89  	Timestamp        *AbsoluteOrRelativeTimeType   `json:"timestamp,omitempty"`
    90  	Value            *ScaledNumberType             `json:"value,omitempty"`
    91  	EvaluationPeriod *TimePeriodType               `json:"evaluationPeriod,omitempty"`
    92  	ValueSource      *MeasurementValueSourceType   `json:"valueSource,omitempty"`
    93  	ValueTendency    *MeasurementValueTendencyType `json:"valueTendency,omitempty"`
    94  	ValueState       *MeasurementValueStateType    `json:"valueState,omitempty"`
    95  }
    96  
    97  type MeasurementDataElementsType struct {
    98  	MeasurementId    *ElementTagType `json:"measurementId,omitempty"`
    99  	ValueType        *ElementTagType `json:"valueType,omitempty"`
   100  	Timestamp        *ElementTagType `json:"timestamp,omitempty"`
   101  	Value            *ElementTagType `json:"value,omitempty"`
   102  	EvaluationPeriod *ElementTagType `json:"evaluationPeriod,omitempty"`
   103  	ValueSource      *ElementTagType `json:"valueSource,omitempty"`
   104  	ValueTendency    *ElementTagType `json:"valueTendency,omitempty"`
   105  	ValueState       *ElementTagType `json:"valueState,omitempty"`
   106  }
   107  
   108  type MeasurementListDataType struct {
   109  	MeasurementData []MeasurementDataType `json:"measurementData,omitempty"`
   110  }
   111  
   112  type MeasurementListDataSelectorsType struct {
   113  	MeasurementId     *MeasurementIdType        `json:"measurementId,omitempty"`
   114  	ValueType         *MeasurementValueTypeType `json:"valueType,omitempty"`
   115  	TimestampInterval *TimestampIntervalType    `json:"timestampInterval,omitempty"`
   116  }
   117  
   118  type MeasurementSeriesDataType struct {
   119  	MeasurementId    *MeasurementIdType            `json:"measurementId,omitempty" eebus:"key"`
   120  	ValueType        *MeasurementValueTypeType     `json:"valueType,omitempty" eebus:"key"`
   121  	Timestamp        *AbsoluteOrRelativeTimeType   `json:"timestamp,omitempty"`
   122  	Value            *ScaledNumberType             `json:"value,omitempty"`
   123  	EvaluationPeriod *TimePeriodType               `json:"evaluationPeriod,omitempty"`
   124  	ValueSource      *MeasurementValueSourceType   `json:"valueSource,omitempty"`
   125  	ValueTendency    *MeasurementValueTendencyType `json:"valueTendency,omitempty"`
   126  	ValueState       *MeasurementValueStateType    `json:"valueState,omitempty"`
   127  }
   128  
   129  type MeasurementSeriesDataElementsType struct {
   130  	MeasurementId    *ElementTagType `json:"measurementId,omitempty"`
   131  	ValueType        *ElementTagType `json:"valueType,omitempty"`
   132  	Timestamp        *ElementTagType `json:"timestamp,omitempty"`
   133  	Value            *ElementTagType `json:"value,omitempty"`
   134  	EvaluationPeriod *ElementTagType `json:"evaluationPeriod,omitempty"`
   135  	ValueSource      *ElementTagType `json:"valueSource,omitempty"`
   136  	ValueTendency    *ElementTagType `json:"valueTendency,omitempty"`
   137  	ValueState       *ElementTagType `json:"valueState,omitempty"`
   138  }
   139  
   140  type MeasurementSeriesListDataType struct {
   141  	MeasurementSeriesData []MeasurementSeriesDataType `json:"measurementSeriesData,omitempty"`
   142  }
   143  
   144  type MeasurementSeriesListDataSelectorsType struct {
   145  	MeasurementId     *MeasurementIdType        `json:"measurementId,omitempty"`
   146  	ValueType         *MeasurementValueTypeType `json:"valueType,omitempty"`
   147  	TimestampInterval *TimestampIntervalType    `json:"timestampInterval,omitempty"`
   148  }
   149  
   150  type MeasurementConstraintsDataType struct {
   151  	MeasurementId *MeasurementIdType `json:"measurementId,omitempty" eebus:"key"`
   152  	ValueRangeMin *ScaledNumberType  `json:"valueRangeMin,omitempty"`
   153  	ValueRangeMax *ScaledNumberType  `json:"valueRangeMax,omitempty"`
   154  	ValueStepSize *ScaledNumberType  `json:"valueStepSize,omitempty"`
   155  }
   156  
   157  type MeasurementConstraintsDataElementsType struct {
   158  	MeasurementId *ElementTagType           `json:"measurementId,omitempty"`
   159  	ValueRangeMin *ScaledNumberElementsType `json:"valueRangeMin,omitempty"`
   160  	ValueRangeMax *ScaledNumberElementsType `json:"valueRangeMax,omitempty"`
   161  	ValueStepSize *ScaledNumberElementsType `json:"valueStepSize,omitempty"`
   162  }
   163  
   164  type MeasurementConstraintsListDataType struct {
   165  	MeasurementConstraintsData []MeasurementConstraintsDataType `json:"measurementConstraintsData,omitempty"`
   166  }
   167  
   168  type MeasurementConstraintsListDataSelectorsType struct {
   169  	MeasurementId *MeasurementIdType `json:"measurementId,omitempty"`
   170  }
   171  
   172  type MeasurementDescriptionDataType struct {
   173  	MeasurementId    *MeasurementIdType     `json:"measurementId,omitempty" eebus:"key"`
   174  	MeasurementType  *MeasurementTypeType   `json:"measurementType,omitempty"`
   175  	CommodityType    *CommodityTypeType     `json:"commodityType,omitempty"`
   176  	Unit             *UnitOfMeasurementType `json:"unit,omitempty"`
   177  	CalibrationValue *ScaledNumberType      `json:"calibrationValue,omitempty"`
   178  	ScopeType        *ScopeTypeType         `json:"scopeType,omitempty"`
   179  	Label            *LabelType             `json:"label,omitempty"`
   180  	Description      *DescriptionType       `json:"description,omitempty"`
   181  }
   182  
   183  type MeasurementDescriptionDataElementsType struct {
   184  	MeasurementId    *ElementTagType           `json:"measurementId,omitempty"`
   185  	MeasurementType  *ElementTagType           `json:"measurementType,omitempty"`
   186  	CommodityType    *ElementTagType           `json:"commodityType,omitempty"`
   187  	Unit             *ElementTagType           `json:"unit,omitempty"`
   188  	CalibrationValue *ScaledNumberElementsType `json:"calibrationValue,omitempty"`
   189  	ScopeType        *ElementTagType           `json:"scopeType,omitempty"`
   190  	Label            *ElementTagType           `json:"label,omitempty"`
   191  	Description      *ElementTagType           `json:"description,omitempty"`
   192  }
   193  
   194  type MeasurementDescriptionListDataType struct {
   195  	MeasurementDescriptionData []MeasurementDescriptionDataType `json:"measurementDescriptionData,omitempty"`
   196  }
   197  
   198  type MeasurementDescriptionListDataSelectorsType struct {
   199  	MeasurementId   *MeasurementIdType   `json:"measurementId,omitempty"`
   200  	MeasurementType *MeasurementTypeType `json:"measurementType,omitempty"`
   201  	CommodityType   *CommodityTypeType   `json:"commodityType,omitempty"`
   202  	ScopeType       *ScopeTypeType       `json:"scopeType,omitempty"`
   203  }
   204  
   205  type MeasurementThresholdRelationDataType struct {
   206  	MeasurementId *MeasurementIdType `json:"measurementId,omitempty" eebus:"key"`
   207  	ThresholdId   []ThresholdIdType  `json:"thresholdId,omitempty"`
   208  }
   209  
   210  type MeasurementThresholdRelationDataElementsType struct {
   211  	MeasurementId *ElementTagType `json:"measurementId,omitempty"`
   212  	ThresholdId   *ElementTagType `json:"thresholdId,omitempty"`
   213  }
   214  
   215  type MeasurementThresholdRelationListDataType struct {
   216  	MeasurementThresholdRelationData []MeasurementThresholdRelationDataType `json:"measurementThresholdRelationData,omitempty"`
   217  }
   218  
   219  type MeasurementThresholdRelationListDataSelectorsType struct {
   220  	MeasurementId *MeasurementIdType `json:"measurementId,omitempty"`
   221  	ThresholdId   *ThresholdIdType   `json:"thresholdId,omitempty"`
   222  }