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

📄 qequeue.h

📁 这是状态机的一个框架结构的例子,可以作为状态机的基本架构
💻 H
字号:
/******************************************************************** 
 * Quantum Event Queue declaration ("C+" version)
 * Copyright (c) 2002 Miro Samek, Palo Alto, CA.
 * All Rights Reserved.
 *******************************************************************/
#ifndef qequeue_h
#define qequeue_h

CLASS(QEQueue)                         /* event queue facility ... */
       /* OS-dependent event to block active object on empty queue */
   QF_OS_EVENT(osEvent__)    
   QEvent *frontEvt__; /*pointer to event at the front of the queue*/ 
   QEvent **start__;    /* pointer to the start of the ring buffer */
   QEvent **end__;        /* pointer to the end of the ring buffer */
   QEvent **head__;/* pointer to where next event will be inserted */
   QEvent **tail__;/* pointer to where next event will be extracted*/
   unsigned short nTot__;      /* total # of entries in the buffer */
   unsigned short nUsed__;     /* # of elements used in the buffer */
   unsigned short nMax__;/* maximum # of events ever in the buffer */
   /* friend class QF */
   /* friend class QActive */
METHODS
   QEQueue *QEQueueCtor(QEQueue *me, QEvent *qSto[], unsigned qLen);
   void QEQueueXtor(QEQueue *me);
   QEvent *QEQueueGet(QEQueue *me);
   int QEQueuePutFIFO(QEQueue *me, QEvent *e);
   int QEQueuePutLIFO(QEQueue *me, QEvent *e);
END_CLASS   

#endif                                                /* qequeue_h */

⌨️ 快捷键说明

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