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

Public Member Functions

 ActionTriggerWeeklySchedule (ActionTrigger *owner)
 
- Public Member Functions inherited from Supla::Control::NativeWeeklyScheduleController
bool canActivate () const override
 
bool isActive () const override
 
bool switchToWeeklySchedule () override
 
void switchToManualMode () override
 
void restoreWeeklyScheduleMode (bool enabled) override
 
bool processWeeklySchedule () override
 
bool isWeeklyScheduleConfigured () const
 
- 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

Protected Member Functions

Supla::Element * getScheduleOwner () const override
 
const char * getDeviceLabel () const override
 
const char * getScheduleStorageTag (bool alt) const override
 
bool validateSchedule (const TChannelConfig_WeeklySchedule *schedule, bool alt) const override
 
void fillDefaultSchedule (TChannelConfig_WeeklySchedule *schedule, bool alt) override
 
void scheduleWeeklyScheduleStateSave () override
 
void syncWeeklyScheduleMode (uint8_t mode) override
 
- Protected Member Functions inherited from Supla::Control::NativeWeeklyScheduleController
virtual bool applyWeeklyScheduleMode (uint8_t mode, bool programChanged)
 
void onNativeScheduleLoaded () override
 
void onNativeScheduleLoadFailed (bool alt) override
 
void onNativeScheduleApplied (bool alt, bool local, bool changed) override
 
void onNativeScheduleSaved (bool alt, bool notify) override
 
void onNativeSchedulePurged () override
 
bool applyResolvedWeeklyScheduleProgram (const TWeeklyScheduleProgram &program, int programId, bool programChanged) override
 
- 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 void onWeeklyScheduleClockState (WeeklyScheduleClockState state)
 
virtual bool shouldUseAltWeeklySchedule () const
 
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 bool supportsAltSchedule () const
 
virtual bool hasAltScheduleStorage () const
 
virtual bool hasPersistentDefaultSchedule (bool alt) const
 
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

◆ fillDefaultSchedule()

void Supla::Control::ActionTriggerWeeklySchedule::fillDefaultSchedule ( TChannelConfig_WeeklySchedule * schedule,
bool alt )
inlineoverrideprotectedvirtual

◆ getDeviceLabel()

const char * Supla::Control::ActionTriggerWeeklySchedule::getDeviceLabel ( ) const
inlineoverrideprotectedvirtual

◆ getScheduleOwner()

Supla::Element * Supla::Control::ActionTriggerWeeklySchedule::getScheduleOwner ( ) const
inlineoverrideprotectedvirtual

◆ getScheduleStorageTag()

const char * Supla::Control::ActionTriggerWeeklySchedule::getScheduleStorageTag ( bool alt) const
inlineoverrideprotectedvirtual

◆ scheduleWeeklyScheduleStateSave()

void Supla::Control::ActionTriggerWeeklySchedule::scheduleWeeklyScheduleStateSave ( )
inlineoverrideprotectedvirtual

◆ syncWeeklyScheduleMode()

void Supla::Control::ActionTriggerWeeklySchedule::syncWeeklyScheduleMode ( uint8_t mode)
inlineoverrideprotectedvirtual

◆ validateSchedule()

bool Supla::Control::ActionTriggerWeeklySchedule::validateSchedule ( const TChannelConfig_WeeklySchedule * schedule,
bool alt ) const
inlineoverrideprotectedvirtual

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