Ring Buffer

Dependents:   pseudo_comet GSwifi_sample MelInverter_sample SerialPassthrough_withRB

Committer:
okini3939
Date:
Thu Nov 11 16:04:19 2010 +0000
Revision:
0:d0e076916a0a
Child:
1:ea0c0a46dbdd

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 0:d0e076916a0a 1 /*
okini3939 0:d0e076916a0a 2 * mbed library for RingBuffer
okini3939 0:d0e076916a0a 3 * Copyright (c) 2010 Hiroshi Suga
okini3939 0:d0e076916a0a 4 * Released under the MIT License: http://mbed.org/license/mit
okini3939 0:d0e076916a0a 5 */
okini3939 0:d0e076916a0a 6
okini3939 0:d0e076916a0a 7 #ifndef RingBuffer_H
okini3939 0:d0e076916a0a 8 #define RingBuffer_H
okini3939 0:d0e076916a0a 9
okini3939 0:d0e076916a0a 10 #include "mbed.h"
okini3939 0:d0e076916a0a 11
okini3939 0:d0e076916a0a 12 class RingBuffer {
okini3939 0:d0e076916a0a 13 public:
okini3939 0:d0e076916a0a 14 RingBuffer (int p_size);
okini3939 0:d0e076916a0a 15 ~RingBuffer ();
okini3939 0:d0e076916a0a 16
okini3939 0:d0e076916a0a 17 int put (char);
okini3939 0:d0e076916a0a 18 int put (char *, int);
okini3939 0:d0e076916a0a 19 int get (char &);
okini3939 0:d0e076916a0a 20 int get (char *, int);
okini3939 0:d0e076916a0a 21 void clear ();
okini3939 0:d0e076916a0a 22 int available ();
okini3939 0:d0e076916a0a 23 int use ();
okini3939 0:d0e076916a0a 24
okini3939 0:d0e076916a0a 25 private:
okini3939 0:d0e076916a0a 26 char *buf;
okini3939 0:d0e076916a0a 27 int size;
okini3939 0:d0e076916a0a 28 int addr_w, addr_r;
okini3939 0:d0e076916a0a 29 };
okini3939 0:d0e076916a0a 30
okini3939 0:d0e076916a0a 31 #endif