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

📄 circbuf.h

📁 嵌入式软件开发.rar
💻 H
字号:
/**********************************************************************
 *
 * Filename:    circbuf.h
 * 
 * Description: An easy-to-use circular buffer class.
 *
 * Notes:       
 *
 * 
 * Copyright (c) 1998 by Michael Barr.  This software is placed into
 * the public domain and may be used for any purpose.  However, this
 * notice must not be changed or removed and no warranty is either
 * expressed or implied by its publication or distribution.
 **********************************************************************/

#ifndef _CIRCBUF_H
#define _CIRCBUF_H


#include "adeos.h"

typedef unsigned char item;

class CircBuf
{
    public:

        CircBuf(int nItems);
        ~CircBuf();

        void  add(item);
        item  remove();
        void  flush()     { head = tail = count = 0; }
                                                     
        int   isEmpty()   { return (count == 0);     }
        int   isFull()    { return (count == size);  }

    private:

        item *  array;
        int     size;
        int     head;
        int     tail;
        int     count;
        Mutex   mutex;
};


#endif /* _CIRCBUF_H */

⌨️ 快捷键说明

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