⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 alarm_d.h

📁 PIXIL is a small footprint operating environment, complete with PDA PIM applications, a browser and
💻 H
字号:
/*                                                                        * Copyright (c) 2003 Century Software, Inc.   All Rights Reserved.      *                                                                        * This file is part of the PIXIL Operating Environment                  *                                                                        * The use, copying and distribution of this file is governed by one     * of two licenses, the PIXIL Commercial License, or the GNU General     * Public License, version 2.                                            *                                                                        * Licensees holding a valid PIXIL Commercial License may use this file  * in accordance with the PIXIL Commercial License Agreement provided    * with the Software. Others are governed under the terms of the GNU    * General Public License version 2.                                     *                                                                        * This file may be distributed and/or modified under the terms of the   * GNU General Public License version 2 as published by the Free         * Software Foundation and appearing in the file LICENSE.GPL included    * in the packaging of this file.                                       *                                                                        * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING   * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A             * PARTICULAR PURPOSE.                                                   *                                                                        * RESTRICTED RIGHTS LEGEND                                              *                                                                      * Use, duplication, or disclosure by the government is subject to       * restriction as set forth in paragraph (b)(3)(b) of the Rights in      * Technical Data and Computer Software clause in DAR 7-104.9(a).        *                                                                       * See http://www.pixil.org/gpl/ for GPL licensing        * information.                                                          *                                                                       * See http://www.pixil.org/license.html or               * email cetsales@centurysoftware.com for information about the PIXIL    * Commercial License Agreement, or if any conditions of this licensing  * are not clear to you.                                                 */#ifndef ALARM_H_#define ALARM_H_#include <signal.h>#include <sys/time.h>#include <sys/types.h>#include <unistd.h>#include <string.h>#include <nxdb.h>extern "C"{#include <ipc/colosseum.h>}#define TOKEN						"^"#define ALARM_D					"alarmd"#define ALARM_DATABASE 	"alarm"#define ALARM_INDEX			0#define APP_NAME 				25#define DESC						100#define ID							4#define MAX_LEN 				CL_MAX_MSG_LEN#define ERROR_START			0x0001#define ERROR_SEND			0x0002#define ERROR_MAX_DB		0x0004#define WAIT_CONNECT    0x0001#define WAIT_RECONNECT  0x0002#define STATUS_CLEAR			0x0000#define STATUS_READ				0x0001#define STATUS_WRITE_MSG	0x0002#define STATUS_WRITE_ERR	0x0004#define STATUS_UNKNOWN		0x0008#define STATUS_RTC_SET		0x0010#define STATUS_RTC_CLEAR  0x0020#define MAX_RECS				1024typedef struct desc_{    int fd;    int alarm_recno;    int recno;    char appname[APP_NAME];    char desc[DESC];    long start_time;    long end_time;    char msg[255];}alarm_desc;class Alarm_d{  private:    NxDb * alarm_db_;    alarm_desc desc_;    fd_set fds_;    int rtcfd_;    int fd_;    int flags_;    long cur_time_;    long alarm_time_;    long time_interval_;    char *inidir;    int id_;    int error_;    static Alarm_d *instance_;    int status_;    void SetAlarm(time_t alarm_time);    void ClearRtc();  public:      Alarm_d(int argc, char **argv);     ~Alarm_d();    int Monitor();    long GetNextAlarm();    void MarkEntry(int flag);    void RemoveEntry();    void ParseMsg(char *msg);    void SetId();    int ReadMsg();    int SendMsg();    void SendErrorMsg(char *service);    void WaitCol(int flag);    static void HandleSignal(int signal);    void OpenAlarmDatabase();    static Alarm_d *Instance();    int GetFd()    {	return fd_;    }    int GetStatus()    {	return status_;    }    void SetStatus(int status)    {	status_ = status;    }    void CloseDB();    void CheckAlarm(char *service, int recno);};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -