EEBus: add OHPCF heat pump compressor flexibility (#30636)

This commit is contained in:
andig 2026-06-29 11:54:53 +02:00 • committed by GitHub
parent cdb2914308
commit 1005f075a2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 656 additions and 7 deletions

View file

@ -9,7 +9,7 @@ import (
"golang.org/x/oauth2"
)
//go:generate go tool mockgen -package api -destination mock.go github.com/evcc-io/evcc/api Charger,ChargeState,CurrentLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff
//go:generate go tool mockgen -package api -destination mock.go github.com/evcc-io/evcc/api Charger,ChargeState,CurrentLimiter,PowerLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff
// Meter provides total active power in W
type Meter interface {
@ -192,6 +192,11 @@ type CurrentLimiter interface {
GetMinMaxCurrent() (float64, float64, error)
}
// PowerLimiter returns the power limits in W
type PowerLimiter interface {
GetMinMaxPower() (float64, float64, error)
}
// SocLimiter returns the soc limit
type SocLimiter interface {
GetLimitSoc() (int64, error)

View file

@ -1,9 +1,9 @@
// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/evcc-io/evcc/api (interfaces: Charger,ChargeState,CurrentLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff)
// Source: github.com/evcc-io/evcc/api (interfaces: Charger,ChargeState,CurrentLimiter,PowerLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff)
//
// Generated by this command:
//
// mockgen -package api -destination mock.go github.com/evcc-io/evcc/api Charger,ChargeState,CurrentLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff
// mockgen -package api -destination mock.go github.com/evcc-io/evcc/api Charger,ChargeState,CurrentLimiter,PowerLimiter,CurrentGetter,PhaseSwitcher,PhaseGetter,FeatureDescriber,Identifier,Meter,MeterEnergy,MeterReturnEnergy,PhaseCurrents,Vehicle,ConnectionTimer,ChargeRater,Battery,BatteryController,BatterySocLimiter,Circuit,Dimmer,HEMS,Tariff
//
// Package api is a generated GoMock package.
@ -177,6 +177,46 @@ func (mr *MockCurrentLimiterMockRecorder) GetMinMaxCurrent() *gomock.Call {
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetMinMaxCurrent", reflect.TypeOf((*MockCurrentLimiter)(nil).GetMinMaxCurrent))
}
// MockPowerLimiter is a mock of PowerLimiter interface.
type MockPowerLimiter struct {
ctrl *gomock.Controller
recorder *MockPowerLimiterMockRecorder
isgomock struct{}
}
// MockPowerLimiterMockRecorder is the mock recorder for MockPowerLimiter.
type MockPowerLimiterMockRecorder struct {
mock *MockPowerLimiter
}
// NewMockPowerLimiter creates a new mock instance.
func NewMockPowerLimiter(ctrl *gomock.Controller) *MockPowerLimiter {
mock := &MockPowerLimiter{ctrl: ctrl}
mock.recorder = &MockPowerLimiterMockRecorder{mock}
return mock
}
// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockPowerLimiter) EXPECT() *MockPowerLimiterMockRecorder {
return m.recorder
}
// GetMinMaxPower mocks base method.
func (m *MockPowerLimiter) GetMinMaxPower() (float64, float64, error) {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "GetMinMaxPower")
ret0, _ := ret[0].(float64)
ret1, _ := ret[1].(float64)
ret2, _ := ret[2].(error)
return ret0, ret1, ret2
}
// GetMinMaxPower indicates an expected call of GetMinMaxPower.
func (mr *MockPowerLimiterMockRecorder) GetMinMaxPower() *gomock.Call {
mr.mock.ctrl.T.Helper()
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetMinMaxPower", reflect.TypeOf((*MockPowerLimiter)(nil).GetMinMaxPower))
}
// MockCurrentGetter is a mock of CurrentGetter interface.
type MockCurrentGetter struct {
ctrl *gomock.Controller