supla-device
Loading...
Searching...
No Matches
Supla::Control::HvacWeeklySchedule Class Reference
Inheritance diagram for Supla::Control::HvacWeeklySchedule:
Collaboration diagram for Supla::Control::HvacWeeklySchedule:

Public Member Functions

 HvacWeeklySchedule (HvacBase *owner)
 
bool canActivate () const override
 
bool isConfigured () const
 
void saveWeeklySchedule (bool requestResend=false)
 
bool isActive () const override
 
bool switchToWeeklySchedule () override
 
void switchToManualMode () override
 
void restoreWeeklyScheduleMode (bool enabled) override
 
bool isWeeklyScheduleValid (const TChannelConfig_WeeklySchedule *newSchedule, bool isAltWeeklySchedule=false) const
 
int getWeeklyScheduleProgramId (const TChannelConfig_WeeklySchedule *schedule, int index) const
 
int calculateIndex (enum DayOfWeek dayOfWeek, int hour, int quarter) const
 
bool isProgramValid (const TWeeklyScheduleProgram &program, bool isAltWeeklySchedule) const
 
bool setProgram (int programId, unsigned char mode, _supla_int16_t tHeat, _supla_int16_t tCool, bool isAltWeeklySchedule=false)
 
bool setWeeklySchedule (int index, int programId, bool isAltWeeklySchedule=false)
 
bool setWeeklySchedule (enum DayOfWeek dayOfWeek, int hour, int quarter, int programId, bool isAltWeeklySchedule=false)
 
int getCurrentQuarter () const
 
TWeeklyScheduleProgram getCurrentProgram () const
 
int getCurrentProgramId () const
 
TWeeklyScheduleProgram getProgramAt (int quarterIndex) const
 
TWeeklyScheduleProgram getProgramById (int programId, bool isAltWeeklySchedule=false) const
 
bool turnOnWeeklySchedule ()
 
bool processWeeklySchedule () override
 
void initDefaultWeeklySchedule (bool requestResend=true)
 
void processCacheRelease ()
 
- Public Member Functions inherited from Supla::Control::WeeklyScheduleController
virtual bool isManualActionAllowed (bool turnOn) const
 
virtual bool isExternallyManaged () const
 
virtual void onManualAction ()
 
- Public Member Functions inherited from Supla::Control::NativeWeeklyScheduleConfigHandler
void onLoadConfig () override
 
Supla::ApplyConfigResult applyChannelConfig (TSD_ChannelConfig *config, bool local) override
 
void fillChannelConfig (void *config, int *size, uint8_t configType) override
 
void purgeConfig () override
 
bool supportsConfigType (uint8_t configType) const override
 
- Public Member Functions inherited from Supla::Control::WeeklyScheduleConfigHandler
virtual bool onFunctionChanged ()
 
- Public Member Functions inherited from Supla::Control::WeeklyScheduleProgramSource

Additional Inherited Members

- Protected Member Functions inherited from Supla::Control::WeeklyScheduleController
WeeklyScheduleClockState getClockState () const
 
WeeklyScheduleClockState getClockState (bool startupDelay) const
 
WeeklyScheduleTimeSnapshot getWeeklyScheduleTimeSnapshot (bool startupDelay) const
 
bool processCurrentProgram (bool startupDelay)
 
bool updateCurrentProgramId (int programId)
 
void resetCurrentProgramId ()
 
void setWeeklyScheduleProgramSource (WeeklyScheduleProgramSource *source)
 
virtual bool requiresReadyClock () const
 
bool resolveProgramTiming (const WeeklyScheduleTimeSnapshot &time, int programId, int32_t *occurrence, uint32_t *elapsedSeconds)
 
virtual bool applyProgramAt (const WeeklyScheduleTimeSnapshot &time, const TWeeklyScheduleProgram &program, int programId, bool programChanged)
 
bool resolveWeeklyScheduleProgram (const WeeklyScheduleTimeSnapshot &time, TWeeklyScheduleProgram *program, int *programId)
 
- Protected Member Functions inherited from Supla::Control::NativeWeeklyScheduleConfigHandler
virtual void onNativeScheduleLoadFailed (bool alt)
 
virtual void onNativeScheduleApplied (bool alt, bool local, bool changed)
 
virtual void onNativeSchedulePurged ()
 
bool isConfigured () const
 
bool isConfigured (bool alt) const
 
bool isPersisted (bool alt) const
 
TChannelConfig_WeeklySchedule * getSchedule (bool alt, bool loadIfMissing=true)
 
const TChannelConfig_WeeklySchedule * getSchedule (bool alt, bool loadIfMissing=true) const
 
TChannelConfig_WeeklySchedule * ensureSchedule (bool alt)
 
bool ensureScheduleForUse (bool alt)
 
bool updateSchedule (bool alt, const TChannelConfig_WeeklySchedule &schedule)
 
bool saveSchedule (bool alt, bool notify=false)
 
void clearSchedule (bool alt)
 
void clearSchedules ()
 
void unloadSchedule (bool alt)
 
int calculateIndex (enum DayOfWeek dayOfWeek, int hour, int quarter) const
 
int getProgramId (const TChannelConfig_WeeklySchedule *schedule, int index) const
 
bool setWeeklySchedule (TChannelConfig_WeeklySchedule *schedule, int index, int programId) const
 
TWeeklyScheduleProgram getProgramById (const TChannelConfig_WeeklySchedule *schedule, int programId) const
 
TWeeklyScheduleProgram getProgramAt (const TChannelConfig_WeeklySchedule *schedule, int quarterIndex) const
 
int getCurrentQuarter () const
 
bool resolveCurrentProgram (bool alt, TWeeklyScheduleProgram *program, int *programId)
 
bool resolveCurrentProgram (bool alt, TWeeklyScheduleProgram *program, int *programId) const
 
bool resolveCurrentProgram (bool alt, const WeeklyScheduleTimeSnapshot &time, TWeeklyScheduleProgram *program, int *programId)
 
bool resolveProgram (const WeeklyScheduleTimeSnapshot &time, bool alt, TWeeklyScheduleProgram *program, int *programId) override
 
bool resolveProgramTiming (const WeeklyScheduleTimeSnapshot &time, bool alt, int programId, int32_t *occurrence, uint32_t *elapsedSeconds) override
 
void touchCache (bool active, uint32_t nowMs)
 
bool processCache (bool active, uint32_t nowMs)
 
void resetCache ()
 

Member Function Documentation

◆ canActivate()

bool Supla::Control::HvacWeeklySchedule::canActivate ( ) const
overridevirtual

◆ isActive()

bool Supla::Control::HvacWeeklySchedule::isActive ( ) const
overridevirtual

◆ processWeeklySchedule()

bool Supla::Control::HvacWeeklySchedule::processWeeklySchedule ( )
overridevirtual

◆ restoreWeeklyScheduleMode()

void Supla::Control::HvacWeeklySchedule::restoreWeeklyScheduleMode ( bool enabled)
overridevirtual

◆ switchToManualMode()

void Supla::Control::HvacWeeklySchedule::switchToManualMode ( )
overridevirtual

◆ switchToWeeklySchedule()

bool Supla::Control::HvacWeeklySchedule::switchToWeeklySchedule ( )
overridevirtual

The documentation for this class was generated from the following files: