Marcus Lee / LinearArray
Committer:
UHSLMarcus
Date:
Wed Mar 08 10:48:34 2017 +0000
Revision:
5:0f65cdadb1a4
Parent:
4:7743528fb9e5
Child:
6:314f180362cb
added option for get by value or refrence

Who changed what in which revision?

UserRevisionLine numberNew contents of line
UHSLMarcus 0:23c500341c13 1 #ifndef LINEAR_ARRAY_H
UHSLMarcus 0:23c500341c13 2 #define LINEAR_ARRAY_H
UHSLMarcus 0:23c500341c13 3
UHSLMarcus 0:23c500341c13 4 #include "mbed.h"
UHSLMarcus 0:23c500341c13 5
UHSLMarcus 5:0f65cdadb1a4 6 template<class type>
UHSLMarcus 0:23c500341c13 7 class LinearArray {
UHSLMarcus 5:0f65cdadb1a4 8 public:
UHSLMarcus 5:0f65cdadb1a4 9 LinearArray(int size, bool forced = false);
UHSLMarcus 5:0f65cdadb1a4 10 ~LinearArray();
UHSLMarcus 5:0f65cdadb1a4 11 int push(type item);
UHSLMarcus 5:0f65cdadb1a4 12 type pop();
UHSLMarcus 5:0f65cdadb1a4 13 type& pop();
UHSLMarcus 5:0f65cdadb1a4 14 type peek();
UHSLMarcus 5:0f65cdadb1a4 15 type& peek();
UHSLMarcus 5:0f65cdadb1a4 16 int size();
UHSLMarcus 5:0f65cdadb1a4 17 bool empty();
UHSLMarcus 5:0f65cdadb1a4 18 bool full();
UHSLMarcus 5:0f65cdadb1a4 19 int count();
UHSLMarcus 5:0f65cdadb1a4 20 private:
UHSLMarcus 5:0f65cdadb1a4 21 type* _array;
UHSLMarcus 5:0f65cdadb1a4 22 int _elem_count;
UHSLMarcus 5:0f65cdadb1a4 23 int _array_size;
UHSLMarcus 5:0f65cdadb1a4 24 int _rear;
UHSLMarcus 5:0f65cdadb1a4 25 int _front;
UHSLMarcus 5:0f65cdadb1a4 26 bool _forced;
UHSLMarcus 3:8e9f85814809 27
UHSLMarcus 5:0f65cdadb1a4 28 };
UHSLMarcus 0:23c500341c13 29
UHSLMarcus 5:0f65cdadb1a4 30 #include "LinearArray.hpp"
UHSLMarcus 1:49758f1e1317 31
UHSLMarcus 3:8e9f85814809 32 #endif /* LINEAR_ARRAY_H */