Marcus Lee / LinearArray

linearArray.h

Committer:
UHSLMarcus
Date:
2017-03-14
Revision:
10:864b79e79ca8
Parent:
9:68d882e457c5
Child:
11:1e27a6f0b0cf
Child:
12:e4f557b33732

File content as of revision 10:864b79e79ca8:

#ifndef LINEAR_ARRAY_H
#define LINEAR_ARRAY_H

#include "mbed.h"
#include "temp_const.h"


template<class type>
class LinearArray {
	public:
		LinearArray(int size, bool forced = false);
		~LinearArray();
		int push(type item);
		type& pop();
		bool try_pop(type& item);
		type& peek();
		type& peek(int idx);
		int size();
		bool empty();
		bool full();
		int count();
	private:
		type* _array;
		int _elem_count;
		int _array_size;
		int _front;
		int _rear;
		bool _forced;

};


#include "LinearArray.hpp"

#endif /* LINEAR_ARRAY_H */