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

     1  package model
     2  
     3  type UseCaseActorType string
     4  
     5  const (
     6  	UseCaseActorTypeBattery                  UseCaseActorType = "Battery"
     7  	UseCaseActorTypeBatterySystem            UseCaseActorType = "BatterySystem"
     8  	UseCaseActorTypeCEM                      UseCaseActorType = "CEM"
     9  	UseCaseActorTypeConfigurationAppliance   UseCaseActorType = "ConfigurationAppliance"
    10  	UseCaseActorTypeCompressor               UseCaseActorType = "Compressor"
    11  	UseCaseActorTypeControllableSystem       UseCaseActorType = "ControllableSystem"
    12  	UseCaseActorTypeDHWCircuit               UseCaseActorType = "DHWCircuit"
    13  	UseCaseActorTypeEnergyBroker             UseCaseActorType = "EnergyBroker"
    14  	UseCaseActorTypeEnergyConsumer           UseCaseActorType = "EnergyConsumer"
    15  	UseCaseActorTypeEnergyGuard              UseCaseActorType = "EnergyGuard"
    16  	UseCaseActorTypeEVSE                     UseCaseActorType = "EVSE"
    17  	UseCaseActorTypeEV                       UseCaseActorType = "EV"
    18  	UseCaseActorTypeGridConnectionPoint      UseCaseActorType = "GridConnectionPoint"
    19  	UseCaseActorTypeHeatPump                 UseCaseActorType = "HeatPump"
    20  	UseCaseActorTypeHeatingCircuit           UseCaseActorType = "HeatingCircuit"
    21  	UseCaseActorTypeHeatingZone              UseCaseActorType = "HeatingZone"
    22  	UseCaseActorTypeHVACRoom                 UseCaseActorType = "HVACRoom"
    23  	UseCaseActorTypeInverter                 UseCaseActorType = "Inverter"
    24  	UseCaseActorTypeMonitoredUnit            UseCaseActorType = "MonitoredUnit"
    25  	UseCaseActorTypeMonitoringAppliance      UseCaseActorType = "MonitoringAppliance"
    26  	UseCaseActorTypeOutdoorTemperatureSensor UseCaseActorType = "OutdoorTemperatureSensor"
    27  	UseCaseActorTypePVString                 UseCaseActorType = "PVString"
    28  	UseCaseActorTypePVSystem                 UseCaseActorType = "PVSystem"
    29  	UseCaseActorTypeSmartAppliance           UseCaseActorType = "SmartAppliance"
    30  	UseCaseActorTypeVisualizationAppliance   UseCaseActorType = "VisualizationAppliance"
    31  )
    32  
    33  type UseCaseNameType string
    34  
    35  const (
    36  	UseCaseNameTypeConfigurationOfDhwSystemFunction                             UseCaseNameType = "configurationOfDhwSystemFunction"
    37  	UseCaseNameTypeConfigurationOfDhwTemperature                                UseCaseNameType = "configurationOfDhwTemperature"
    38  	UseCaseNameTypeConfigurationOfRoomCoolingSystemFunction                     UseCaseNameType = "configurationOfRoomCoolingSystemFunction"
    39  	UseCaseNameTypeConfigurationOfRoomCoolingTemperature                        UseCaseNameType = "configurationOfRoomCoolingTemperature"
    40  	UseCaseNameTypeConfigurationOfRoomHeatingSystemFunction                     UseCaseNameType = "configurationOfRoomHeatingSystemFunction"
    41  	UseCaseNameTypeConfigurationOfRoomHeatingTemperature                        UseCaseNameType = "configurationOfRoomHeatingTemperature"
    42  	UseCaseNameTypeControlOfBattery                                             UseCaseNameType = "controlOfBattery"
    43  	UseCaseNameTypeCoordinatedEVCharging                                        UseCaseNameType = "coordinatedEvCharging"
    44  	UseCaseNameTypeEVChargingSummary                                            UseCaseNameType = "evChargingSummary"
    45  	UseCaseNameTypeEVCommissioningAndConfiguration                              UseCaseNameType = "evCommissioningAndConfiguration"
    46  	UseCaseNameTypeEVSECommissioningAndConfiguration                            UseCaseNameType = "evseCommissioningAndConfiguration"
    47  	UseCaseNameTypeEVStateOfCharge                                              UseCaseNameType = "evStateOfCharge"
    48  	UseCaseNameTypeFlexibleLoad                                                 UseCaseNameType = "flexibleLoad"
    49  	UseCaseNameTypeFlexibleStartForWhiteGoods                                   UseCaseNameType = "flexibleStartForWhiteGoods"
    50  	UseCaseNameTypeLimitationOfPowerConsumption                                 UseCaseNameType = "limitationOfPowerConsumption"
    51  	UseCaseNameTypeLimitationOfPowerProduction                                  UseCaseNameType = "limitationOfPowerProduction"
    52  	UseCaseNameTypeIncentiveTableBasedPowerConsumptionManagement                UseCaseNameType = "incentiveTableBasedPowerConsumptionManagement"
    53  	UseCaseNameTypeMeasurementOfElectricityDuringEVCharging                     UseCaseNameType = "measurementOfElectricityDuringEvCharging"
    54  	UseCaseNameTypeMonitoringAndControlOfSmartGridReadyConditions               UseCaseNameType = "monitoringAndControlOfSmartGridReadyConditions"
    55  	UseCaseNameTypeMonitoringOfBattery                                          UseCaseNameType = "monitoringOfBattery"
    56  	UseCaseNameTypeMonitoringOfDhwSystemFunction                                UseCaseNameType = "monitoringOfDhwSystemFunction"
    57  	UseCaseNameTypeMonitoringOfDhwTemperature                                   UseCaseNameType = "monitoringOfDhwTemperature"
    58  	UseCaseNameTypeMonitoringOfGridConnectionPoint                              UseCaseNameType = "monitoringOfGridConnectionPoint"
    59  	UseCaseNameTypeMonitoringOfInverter                                         UseCaseNameType = "monitoringOfInverter"
    60  	UseCaseNameTypeMonitoringOfOutdoorTemperature                               UseCaseNameType = "monitoringOfOutdoorTemperature"
    61  	UseCaseNameTypeMonitoringOfPowerConsumption                                 UseCaseNameType = "monitoringOfPowerConsumption"
    62  	UseCaseNameTypeMonitoringOfPvString                                         UseCaseNameType = "monitoringOfPvString"
    63  	UseCaseNameTypeMonitoringOfRoomCoolingSystemFunction                        UseCaseNameType = "monitoringOfRoomCoolingSystemFunction"
    64  	UseCaseNameTypeMonitoringOfRoomHeatingSystemFunction                        UseCaseNameType = "monitoringOfRoomHeatingSystemFunction"
    65  	UseCaseNameTypeMonitoringOfRoomTemperature                                  UseCaseNameType = "monitoringOfRoomTemperature"
    66  	UseCaseNameTypeOptimizationOfSelfConsumptionByHeatPumpCompressorFlexibility UseCaseNameType = "optimizationOfSelfConsumptionByHeatPumpCompressorFlexibility"
    67  	UseCaseNameTypeOptimizationOfSelfConsumptionDuringEVCharging                UseCaseNameType = "optimizationOfSelfConsumptionDuringEvCharging"
    68  	UseCaseNameTypeOverloadProtectionByEVChargingCurrentCurtailment             UseCaseNameType = "overloadProtectionByEvChargingCurrentCurtailment"
    69  	UseCaseNameTypeVisualizationOfAggregatedBatteryData                         UseCaseNameType = "visualizationOfAggregatedBatteryData"
    70  	UseCaseNameTypeVisualizationOfAggregatedPhotovoltaicData                    UseCaseNameType = "visualizationOfAggregatedPhotovoltaicData"
    71  	UseCaseNameTypeVisualizationOfHeatingAreaName                               UseCaseNameType = "visualizationOfHeatingAreaName"
    72  )
    73  
    74  type UseCaseScenarioSupportType uint
    75  
    76  const (
    77  	UseCaseDocumentSubRevisionRelease string = "release"
    78  )
    79  
    80  type UseCaseSupportType struct {
    81  	UseCaseName                *UseCaseNameType             `json:"useCaseName,omitempty"`
    82  	UseCaseVersion             *SpecificationVersionType    `json:"useCaseVersion,omitempty"`
    83  	UseCaseAvailable           *bool                        `json:"useCaseAvailable,omitempty"`
    84  	ScenarioSupport            []UseCaseScenarioSupportType `json:"scenarioSupport,omitempty"`
    85  	UseCaseDocumentSubRevision *string                      `json:"useCaseDocumentSubRevision,omitempty"`
    86  }
    87  
    88  type UseCaseSupportElementsType struct {
    89  	UseCaseName                *ElementTagType `json:"useCaseName,omitempty"`
    90  	UseCaseVersion             *ElementTagType `json:"useCaseVersion,omitempty"`
    91  	UseCaseAvailable           *ElementTagType `json:"useCaseAvailable,omitempty"`
    92  	ScenarioSupport            *ElementTagType `json:"scenarioSupport,omitempty"`
    93  	UseCaseDocumentSubRevision *ElementTagType `json:"useCaseDocumentSubRevision,omitempty"`
    94  }
    95  
    96  type UseCaseSupportSelectorsType struct {
    97  	UseCaseName     *UseCaseNameType            `json:"useCaseName,omitempty"`
    98  	UseCaseVersion  *SpecificationVersionType   `json:"useCaseVersion,omitempty"`
    99  	ScenarioSupport *UseCaseScenarioSupportType `json:"scenarioSupport,omitempty"`
   100  }
   101  
   102  type UseCaseInformationDataType struct {
   103  	Address        *FeatureAddressType  `json:"address,omitempty"`
   104  	Actor          *UseCaseActorType    `json:"actor,omitempty"`
   105  	UseCaseSupport []UseCaseSupportType `json:"useCaseSupport,omitempty"`
   106  }
   107  
   108  type UseCaseInformationDataElementsType struct {
   109  	Address        *ElementTagType `json:"address,omitempty"`
   110  	Actor          *ElementTagType `json:"actor,omitempty"`
   111  	UseCaseSupport *ElementTagType `json:"useCaseSupport,omitempty"`
   112  }
   113  
   114  type UseCaseInformationListDataType struct {
   115  	UseCaseInformationData []UseCaseInformationDataType `json:"useCaseInformationData,omitempty"`
   116  }
   117  
   118  type UseCaseInformationListDataSelectorsType struct {
   119  	Address        *FeatureAddressType          `json:"address,omitempty"`
   120  	Actor          *UseCaseActorType            `json:"actor,omitempty"`
   121  	UseCaseSupport *UseCaseSupportSelectorsType `json:"useCaseSupport,omitempty"`
   122  }