For robots and stuff

Dependents:   Base Station

Committer:
jjones646
Date:
Wed Dec 31 22:16:01 2014 +0000
Revision:
2:c42a035d71ed
Parent:
1:05a48c038381
adding dummy cc1101 support

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jjones646 0:c5afea7b9057 1 /*
jjones646 0:c5afea7b9057 2 * mbed library for RingBuffer
jjones646 0:c5afea7b9057 3 * Copyright (c) 2010 Hiroshi Suga
jjones646 0:c5afea7b9057 4 * Released under the MIT License: http://mbed.org/license/mit
jjones646 0:c5afea7b9057 5 */
jjones646 0:c5afea7b9057 6
jjones646 0:c5afea7b9057 7 #ifndef RINGBUFFER_H
jjones646 0:c5afea7b9057 8 #define RINGBUFFER_H
jjones646 0:c5afea7b9057 9
jjones646 0:c5afea7b9057 10 #include "mbed.h"
jjones646 0:c5afea7b9057 11
jjones646 0:c5afea7b9057 12 class RingBuffer : public Stream {
jjones646 0:c5afea7b9057 13 public:
jjones646 0:c5afea7b9057 14 RingBuffer();
jjones646 0:c5afea7b9057 15 RingBuffer (unsigned int p_size = 0);
jjones646 0:c5afea7b9057 16
jjones646 0:c5afea7b9057 17 /*
jjones646 0:c5afea7b9057 18 #if DOXYGEN_ONLY
jjones646 0:c5afea7b9057 19 int putc(int c);
jjones646 0:c5afea7b9057 20 int printf(const char* format, ...);
jjones646 0:c5afea7b9057 21 #endif
jjones646 0:c5afea7b9057 22 */
jjones646 0:c5afea7b9057 23 int put(char*, int);
jjones646 0:c5afea7b9057 24 char get(void);
jjones646 0:c5afea7b9057 25 int get(char*, int);
jjones646 0:c5afea7b9057 26 void clear(void);
jjones646 0:c5afea7b9057 27 int available(void);
jjones646 0:c5afea7b9057 28 int use(void);
jjones646 0:c5afea7b9057 29
jjones646 0:c5afea7b9057 30 private:
jjones646 0:c5afea7b9057 31 // Stream implementation functions
jjones646 0:c5afea7b9057 32 virtual int _putc(int value);
jjones646 0:c5afea7b9057 33 virtual int _getc();
jjones646 0:c5afea7b9057 34
jjones646 0:c5afea7b9057 35 volatile unsigned char *buf;
jjones646 0:c5afea7b9057 36 unsigned int size;
jjones646 0:c5afea7b9057 37 unsigned int addr_w;
jjones646 0:c5afea7b9057 38 unsigned int addr_r;
jjones646 0:c5afea7b9057 39 void init(unsigned int);
jjones646 0:c5afea7b9057 40 };
jjones646 0:c5afea7b9057 41
jjones646 0:c5afea7b9057 42 #endif // RINGBUFFER_H