features

package
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 26, 2023 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrDataForMetadataKeyNotFound = errors.New("data for key not found")

ErrDataForMetadataKeyNotFound indicates that no data item is found for the given key

View Source
var ErrDataNotAvailable = errors.New("data not available")

ErrDataNotAvailable indicates that no data set is yet available

View Source
var ErrEntityNotFound = errors.New("entity not found")
View Source
var ErrFunctionNotSupported = errors.New("function is not supported")
View Source
var ErrMetadataNotAvailable = errors.New("meta data not available")

ErrMetadataNotAvailable indicates that the meta data information is not available e.g. decsriptions, constraints, ...

View Source
var ErrMissingData = errors.New("missing data")
View Source
var ErrNotSupported = errors.New("not supported")
View Source
var ErrOperationOnFunctionNotSupported = errors.New("operation is not supported on function")
View Source
var ErrUsecCaseNotSupported = errors.New("usecase is not supported")

Functions

This section is empty.

Types

type DeviceClassification

type DeviceClassification struct {
	*FeatureImpl
}

func NewDeviceClassification

func NewDeviceClassification(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*DeviceClassification, error)

func (*DeviceClassification) GetManufacturerDetails

get the current manufacturer details for a remote device entity

func (*DeviceClassification) RequestManufacturerDetails added in v0.2.0

func (d *DeviceClassification) RequestManufacturerDetails() (*model.MsgCounterType, error)

request DeviceClassificationManufacturerData from a remote device entity

type DeviceConfiguration

type DeviceConfiguration struct {
	*FeatureImpl
}

func NewDeviceConfiguration

func NewDeviceConfiguration(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*DeviceConfiguration, error)

func (*DeviceConfiguration) GetDescriptionForKeyId added in v0.2.0

returns the description of a provided key name

func (*DeviceConfiguration) GetDescriptionForKeyName added in v0.2.0

returns the description of a provided key name returns an error if the key name was not found

func (*DeviceConfiguration) GetDescriptions added in v0.2.0

return current descriptions for Device Configuration

func (*DeviceConfiguration) GetKeyValueForKeyName added in v0.2.0

return a pointer value for a given key and value type

func (*DeviceConfiguration) GetKeyValues added in v0.2.0

return current values for Device Configuration

func (*DeviceConfiguration) RequestDescriptions added in v0.2.0

func (d *DeviceConfiguration) RequestDescriptions() error

request DeviceConfiguration data from a remote entity

func (*DeviceConfiguration) RequestKeyValues added in v0.2.0

func (d *DeviceConfiguration) RequestKeyValues() (*model.MsgCounterType, error)

request DeviceConfigurationKeyValueListDataType from a remote entity

type DeviceDiagnosis

type DeviceDiagnosis struct {
	*FeatureImpl
}

func NewDeviceDiagnosis

func NewDeviceDiagnosis(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*DeviceDiagnosis, error)

func (*DeviceDiagnosis) GetState

get the current diagnosis state for an device entity

func (*DeviceDiagnosis) RequestState added in v0.2.0

func (d *DeviceDiagnosis) RequestState() (*model.MsgCounterType, error)

request DeviceDiagnosisStateData from a remote entity

func (*DeviceDiagnosis) SendState added in v0.1.5

func (d *DeviceDiagnosis) SendState(operatingState *model.DeviceDiagnosisStateDataType)

type ElectricalConnection

type ElectricalConnection struct {
	*FeatureImpl
}

func NewElectricalConnection

func NewElectricalConnection(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*ElectricalConnection, error)

func (*ElectricalConnection) AdjustValueToBeWithinPermittedValuesForParameter added in v0.2.0

func (e *ElectricalConnection) AdjustValueToBeWithinPermittedValuesForParameter(value float64, parameterId model.ElectricalConnectionParameterIdType) float64

Adjust a value to be within the permitted value range

func (*ElectricalConnection) GetDescriptionForMeasurementId added in v0.2.0

func (e *ElectricalConnection) GetDescriptionForMeasurementId(measurementId model.MeasurementIdType) (*model.ElectricalConnectionDescriptionDataType, error)

return current electrical description for a given measurementId

func (*ElectricalConnection) GetDescriptions added in v0.2.0

return list of description for Electrical Connection

func (*ElectricalConnection) GetLimitsForParameterId added in v0.2.0

func (e *ElectricalConnection) GetLimitsForParameterId(parameterId model.ElectricalConnectionParameterIdType) (float64, float64, float64, error)

returns minimum, maximum, default/pause limit values

func (*ElectricalConnection) GetParameterDescriptionForMeasuredPhase added in v0.2.0

return parameter description for a specific measurementId

func (*ElectricalConnection) GetParameterDescriptionForMeasurementId added in v0.2.0

func (e *ElectricalConnection) GetParameterDescriptionForMeasurementId(measurementId model.MeasurementIdType) (*model.ElectricalConnectionParameterDescriptionDataType, error)

return parameter description for a specific measurementId

func (*ElectricalConnection) GetParameterDescriptionForParameterId added in v0.2.0

return parameter description for a specific parameterId

func (*ElectricalConnection) GetParameterDescriptions added in v0.2.0

return parameter descriptions for all Electrical Connections

func (*ElectricalConnection) GetPermittedValueSetForMeasurementId added in v0.2.0

func (e *ElectricalConnection) GetPermittedValueSetForMeasurementId(measurementId model.MeasurementIdType) (*model.ElectricalConnectionPermittedValueSetDataType, error)

return permitted valueset for a provided measuremnetId

func (*ElectricalConnection) GetPermittedValueSetForParameterId added in v0.2.0

return permitted valueset for a provided measuremnetId

func (*ElectricalConnection) GetPermittedValueSets added in v0.2.0

return permitted values for all Electrical Connections

func (*ElectricalConnection) RequestDescriptions added in v0.2.0

func (e *ElectricalConnection) RequestDescriptions() error

request ElectricalConnectionDescriptionListDataType from a remote entity

func (*ElectricalConnection) RequestParameterDescriptions added in v0.2.0

func (e *ElectricalConnection) RequestParameterDescriptions() error

request FunctionTypeElectricalConnectionParameterDescriptionListData from a remote entity

func (*ElectricalConnection) RequestPermittedValueSets added in v0.2.0

func (e *ElectricalConnection) RequestPermittedValueSets() (*model.MsgCounterType, error)

request FunctionTypeElectricalConnectionPermittedValueSetListData from a remote entity

type Feature

type Feature interface {
	SubscribeForEntity() error
}

type FeatureImpl

type FeatureImpl struct {
	// contains filtered or unexported fields
}

func NewFeatureImpl

func NewFeatureImpl(featureType model.FeatureTypeType, localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*FeatureImpl, error)

func (*FeatureImpl) Bind

func (f *FeatureImpl) Bind() error

bind to the feature of a the entity

func (*FeatureImpl) SubscribeForEntity

func (f *FeatureImpl) SubscribeForEntity() error

subscribe to the feature for a the entity

type Identification

type Identification struct {
	*FeatureImpl
}

func NewIdentification

func NewIdentification(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*Identification, error)

func (*Identification) GetValues

func (i *Identification) GetValues() ([]model.IdentificationDataType, error)

return current values for Identification

func (*Identification) RequestValues added in v0.2.0

func (i *Identification) RequestValues() (*model.MsgCounterType, error)

request FunctionTypeIdentificationListData from a remote entity

type IncentiveTable

type IncentiveTable struct {
	*FeatureImpl
}

func NewIncentiveTable

func NewIncentiveTable(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*IncentiveTable, error)

func (*IncentiveTable) GetConstraints added in v0.2.0

func (i *IncentiveTable) GetConstraints() ([]model.IncentiveTableConstraintsType, error)

return list of constraints

func (*IncentiveTable) GetDescriptions added in v0.2.0

func (i *IncentiveTable) GetDescriptions() ([]model.IncentiveTableDescriptionType, error)

return list of descriptions

func (*IncentiveTable) GetDescriptionsForScope added in v0.2.0

func (i *IncentiveTable) GetDescriptionsForScope(scope model.ScopeTypeType) ([]model.IncentiveTableDescriptionType, error)

return list of descriptions

func (*IncentiveTable) GetValues added in v0.2.0

func (i *IncentiveTable) GetValues() ([]model.IncentiveTableType, error)

return current values for Time Series

func (*IncentiveTable) RequestConstraints

func (i *IncentiveTable) RequestConstraints() error

request FunctionTypeIncentiveTableConstraintsData from a remote entity

func (*IncentiveTable) RequestDescriptions added in v0.2.0

func (i *IncentiveTable) RequestDescriptions() error

request FunctionTypeIncentiveTableDescriptionData from a remote entity

func (*IncentiveTable) RequestValues

func (i *IncentiveTable) RequestValues() (*model.MsgCounterType, error)

request FunctionTypeIncentiveTableData from a remote entity

func (*IncentiveTable) WriteDescriptions added in v0.2.0

write incentivetable descriptions returns an error if this failed

func (*IncentiveTable) WriteValues added in v0.2.0

func (i *IncentiveTable) WriteValues(data []model.IncentiveTableType) (*model.MsgCounterType, error)

write incentivetable descriptions returns an error if this failed

type LoadControl

type LoadControl struct {
	*FeatureImpl
}

func NewLoadControl

func NewLoadControl(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*LoadControl, error)

func (*LoadControl) GetLimitDescriptions added in v0.2.0

func (l *LoadControl) GetLimitDescriptions() ([]model.LoadControlLimitDescriptionDataType, error)

returns the load control limit descriptions returns an error if no description data is available yet

func (*LoadControl) GetLimitDescriptionsForCategory added in v0.2.0

func (l *LoadControl) GetLimitDescriptionsForCategory(category model.LoadControlCategoryType) ([]model.LoadControlLimitDescriptionDataType, error)

returns the load control limit descriptions of a provided category returns an error if no description data for the category is available

func (*LoadControl) GetLimitDescriptionsForMeasurementId added in v0.2.0

func (l *LoadControl) GetLimitDescriptionsForMeasurementId(measurementId model.MeasurementIdType) ([]model.LoadControlLimitDescriptionDataType, error)

returns the load control limit descriptions for a provided measurementId returns an error if no description data for the measurementId is available

func (*LoadControl) GetLimitValueForLimitId added in v0.2.0

func (l *LoadControl) GetLimitValueForLimitId(limitId model.LoadControlLimitIdType) (*model.LoadControlLimitDataType, error)

return limit values

func (*LoadControl) GetLimitValues

func (l *LoadControl) GetLimitValues() ([]model.LoadControlLimitDataType, error)

return limit data

func (*LoadControl) RequestLimitConstraints

func (l *LoadControl) RequestLimitConstraints() error

request FunctionTypeLoadControlLimitConstraintsListData from a remote device

func (*LoadControl) RequestLimitDescriptions added in v0.2.0

func (l *LoadControl) RequestLimitDescriptions() error

request FunctionTypeLoadControlLimitDescriptionListData from a remote device

func (*LoadControl) RequestLimitValues added in v0.2.0

func (l *LoadControl) RequestLimitValues() (*model.MsgCounterType, error)

request FunctionTypeLoadControlLimitListData from a remote device

func (*LoadControl) WriteLimitValues

func (l *LoadControl) WriteLimitValues(data []model.LoadControlLimitDataType) (*model.MsgCounterType, error)

write load control limits returns an error if this failed

type Measurement

type Measurement struct {
	*FeatureImpl
}

func NewMeasurement

func NewMeasurement(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*Measurement, error)

func (*Measurement) GetConstraints

func (m *Measurement) GetConstraints() ([]model.MeasurementConstraintsDataType, error)

return measurement constraints

func (*Measurement) GetDescriptionForMeasurementId added in v0.2.0

func (m *Measurement) GetDescriptionForMeasurementId(measurementId model.MeasurementIdType) (*model.MeasurementDescriptionDataType, error)

return current electrical description for a given measurementId

func (*Measurement) GetDescriptions added in v0.2.0

func (m *Measurement) GetDescriptions() ([]model.MeasurementDescriptionDataType, error)

return list of descriptions

func (*Measurement) GetDescriptionsForScope added in v0.2.0

func (m *Measurement) GetDescriptionsForScope(scope model.ScopeTypeType) ([]model.MeasurementDescriptionDataType, error)

return a list of MeasurementDescriptionDataType for a given scope

func (*Measurement) GetValues

func (m *Measurement) GetValues() ([]model.MeasurementDataType, error)

return current values for measurements

func (*Measurement) GetValuesForTypeCommodityScope added in v0.2.0

func (m *Measurement) GetValuesForTypeCommodityScope(measurement model.MeasurementTypeType, commodity model.CommodityTypeType, scope model.ScopeTypeType) ([]model.MeasurementDataType, error)

return current values of a defined measurementType, commodityType and scopeType

if nothing is found, it will return an error

func (*Measurement) RequestConstraints

func (m *Measurement) RequestConstraints() error

request FunctionTypeMeasurementConstraintsListData from a remote entity

func (*Measurement) RequestDescriptions added in v0.2.0

func (m *Measurement) RequestDescriptions() error

request FunctionTypeMeasurementDescriptionListData from a remote device

func (*Measurement) RequestValues added in v0.2.0

func (m *Measurement) RequestValues() (*model.MsgCounterType, error)

request FunctionTypeMeasurementListData from a remote entity

type TimeSeries

type TimeSeries struct {
	*FeatureImpl
}

func NewTimeSeries

func NewTimeSeries(localRole, remoteRole model.RoleType, spineLocalDevice *spine.DeviceLocalImpl, entity *spine.EntityRemoteImpl) (*TimeSeries, error)

func (*TimeSeries) GetConstraints added in v0.2.0

func (t *TimeSeries) GetConstraints() ([]model.TimeSeriesConstraintsDataType, error)

return current constraints for Time Series

func (*TimeSeries) GetDescriptionForId added in v0.2.0

func (*TimeSeries) GetDescriptionForType added in v0.2.0

func (t *TimeSeries) GetDescriptionForType(timeSeriesType model.TimeSeriesTypeType) (*model.TimeSeriesDescriptionDataType, error)

func (*TimeSeries) GetDescriptions added in v0.2.0

func (t *TimeSeries) GetDescriptions() ([]model.TimeSeriesDescriptionDataType, error)

return list of descriptions

func (*TimeSeries) GetValueForType added in v0.2.0

func (t *TimeSeries) GetValueForType(timeSeriesType model.TimeSeriesTypeType) (*model.TimeSeriesDataType, error)

return current value for a given TimeSeriesType there can only be one item matching the type

func (*TimeSeries) GetValues

func (t *TimeSeries) GetValues() ([]model.TimeSeriesDataType, error)

return current values for Time Series

func (*TimeSeries) RequestConstraints

func (t *TimeSeries) RequestConstraints() error

request FunctionTypeTimeSeriesConstraintsListData from a remote entity

func (*TimeSeries) RequestDescriptions added in v0.2.0

func (t *TimeSeries) RequestDescriptions() error

request FunctionTypeTimeSeriesDescriptionListData from a remote entity

func (*TimeSeries) RequestValues added in v0.2.0

func (t *TimeSeries) RequestValues() (*model.MsgCounterType, error)

request FunctionTypeTimeSeriesListData from a remote device

func (*TimeSeries) WriteValues added in v0.2.0

func (t *TimeSeries) WriteValues(data []model.TimeSeriesDataType) (*model.MsgCounterType, error)

write Time Series values returns an error if this failed

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL