Codebase from CC1101_Transceiver, ported to LPC1114 Cortex-M0, will be merged with panStamp project to replace AVR/MSP MCU

Dependencies:   mbed

Fork of CC1101_Transceiver by Athanassios Mavrogeorgiadis

RingBuffer.h

Committer:
allankliu
Date:
2014-12-16
Revision:
1:b8285d79c9a1
Parent:
0:9df942ea84f4

File content as of revision 1:b8285d79c9a1:

/*
 * mbed library for RingBuffer
 * Copyright (c) 2010 Hiroshi Suga
 * Released under the MIT License: http://mbed.org/license/mit
 */

#ifndef RingBuffer_H
#define RingBuffer_H

#include "mbed.h"

class RingBuffer : public Stream  {
public:
    RingBuffer (int p_size);
//    ~RingBuffer ();

#if DOXYGEN_ONLY
    int putc(int c);
    int printf(const char* format, ...);
#endif
//    int putc (char);
    int put (char *, int);
    char get ();
    int get (char *, int);
    void clear ();
    int available ();
    int use ();

private:
    // Stream implementation functions
    virtual int _putc(int value);
    virtual int _getc();

    char *buf;
    int size;
    int addr_w, addr_r;
};

#endif