General purpose ring buffer library

Dependents:   iSerial DGWWebServer iSerial Dumb_box_rev2 ... more

Committer:
ykuroda
Date:
Fri Aug 31 10:13:15 2012 +0000
Revision:
0:db7fa84ff50e
Child:
1:1c3a10f2eb04
1st implement

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ykuroda 0:db7fa84ff50e 1 /*
ykuroda 0:db7fa84ff50e 2 * RingBuffer.h
ykuroda 0:db7fa84ff50e 3 *
ykuroda 0:db7fa84ff50e 4 * 2012.08.31 ... Y.Kuroda
ykuroda 0:db7fa84ff50e 5 */
ykuroda 0:db7fa84ff50e 6 #ifndef _RINGBUFFER_H
ykuroda 0:db7fa84ff50e 7 #define _RINGBUFFER_H
ykuroda 0:db7fa84ff50e 8
ykuroda 0:db7fa84ff50e 9 class RingBuffer {
ykuroda 0:db7fa84ff50e 10
ykuroda 0:db7fa84ff50e 11 protected:
ykuroda 0:db7fa84ff50e 12 unsigned char* buf;
ykuroda 0:db7fa84ff50e 13 unsigned int sp;
ykuroda 0:db7fa84ff50e 14 unsigned int ep;
ykuroda 0:db7fa84ff50e 15 unsigned int bufsize;
ykuroda 0:db7fa84ff50e 16
ykuroda 0:db7fa84ff50e 17 public:
ykuroda 0:db7fa84ff50e 18 RingBuffer(int _bufsize=100);
ykuroda 0:db7fa84ff50e 19 ~RingBuffer();
ykuroda 0:db7fa84ff50e 20
ykuroda 0:db7fa84ff50e 21 int save(unsigned char c);
ykuroda 0:db7fa84ff50e 22 unsigned char read(void);
ykuroda 0:db7fa84ff50e 23 int check(void);
ykuroda 0:db7fa84ff50e 24
ykuroda 0:db7fa84ff50e 25 };
ykuroda 0:db7fa84ff50e 26
ykuroda 0:db7fa84ff50e 27
ykuroda 0:db7fa84ff50e 28 #endif /* _RINGBUFFER_H */
ykuroda 0:db7fa84ff50e 29
ykuroda 0:db7fa84ff50e 30