📄 mf_alarm.c
字号:
/* MF_Alarm.c */#include "MF_Alarm.h"/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmNewPeriodic"MF_Alarm MF_AlarmNewPeriodic(MF_Time period, MF_Time offset){ MF_Alarm alarm; alarm = (MF_Alarm) malloc (sizeof(struct AlarmClass)); if(!alarm) return(MF_NULL); MF_AlarmConstructPeriodic(alarm, period, offset); return(0);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmNewMonthly"MF_Alarm MF_AlarmNewMonthly(){ MF_Alarm alarm; alarm = (MF_Alarm) malloc (sizeof(struct AlarmClass)); if(!alarm) return(MF_NULL); MF_AlarmConstructMonthly(alarm); return(alarm);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmNewYearly"MF_Alarm MF_AlarmNewYearly(){ MF_Alarm alarm; alarm = (MF_Alarm) malloc (sizeof(struct AlarmClass)); if(!alarm) return(MF_NULL); MF_AlarmConstructYearly(alarm); return(alarm);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmConstructPeriodic"int MF_AlarmConstructPeriodic(MF_Alarm this, MF_Time period, MF_Time offset){ this->type = MF_ALARM_PERIODIC; MF_TimeCopyConstruct(&this->period, period); MF_TimeCopyConstruct(&this->offset, offset); this->alarmOn = MF_FALSE; return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmConstructMonthly"int MF_AlarmConstructMonthly(MF_Alarm this){ this->type = MF_ALARM_MONTHLY; MF_TimeConstructUndefined(&this->period); MF_TimeConstructUndefined(&this->offset); this->alarmOn = MF_FALSE; return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmConstructYearly"int MF_AlarmConstructYearly(MF_Alarm this){ this->type = MF_ALARM_YEARLY; MF_TimeConstructUndefined(&this->period); MF_TimeConstructUndefined(&this->offset); this->alarmOn = MF_FALSE; return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmIsOn"int MF_AlarmIsOn(MF_Alarm this, MF_TimeMgr timeMgr, MF_Bool *alarmOn){ switch(this->type){ case(MF_ALARM_PERIODIC): *alarmOn = MF_FALSE; printf("This alarm type is not yet supported.\n"); break; case(MF_ALARM_MONTHLY): *alarmOn = (timeMgr->currDate.month != timeMgr->prevDate.month) ? MF_TRUE : MF_FALSE; break; case(MF_ALARM_YEARLY): *alarmOn = (timeMgr->currDate.year != timeMgr->prevDate.year) ? MF_TRUE : MF_FALSE; break; } return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmGetType"int MF_AlarmGetType(MF_Alarm this, MF_AlarmType *type){ *type = this->type; return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmSet"int MF_AlarmSet(MF_Alarm this, MF_Bool alarmOn){ this->alarmOn = alarmOn; return(MF_SUCCESS);}/*----------------------------------------------------------------------------*/#undef __FUNC__#define __FUNC__ "MF_AlarmDelete"void MF_AlarmDelete(MF_Alarm this){ free(this); return;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -