From 1d6d1e8c73193f57a9c98387ea42eb91eb4d21d1 Mon Sep 17 00:00:00 2001 From: Georg Holzmann Date: Fri, 21 Oct 2005 11:56:32 +0000 Subject: only moving to a new directory svn path=/trunk/externals/grh/; revision=3740 --- PDContainer/include/HDeque.h | 80 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100755 PDContainer/include/HDeque.h (limited to 'PDContainer/include/HDeque.h') diff --git a/PDContainer/include/HDeque.h b/PDContainer/include/HDeque.h new file mode 100755 index 0000000..02600cf --- /dev/null +++ b/PDContainer/include/HDeque.h @@ -0,0 +1,80 @@ +// *********************(c)*2004*********************> +// -holzilib--holzilib--holzilib--holzilib--holzilib-> +// ++++PD-External++by+Georg+Holzmann++grh@gmx.at++++> +// +// PDContainer: +// this is a port of the containers from the C++ STL +// (Standard Template Library) +// for usage see the documentation and PD help files +// for license see readme.txt +// +// HDeque.h + +#ifndef _h_deque_h__ +#define _h_deque_h__ + + +#include "include/SequBase.h" +#include + +using std::deque; + + +//--------------------------------------------------- +/* this is the class of the deque + */ +class HDeque : +public SequBase< deque, deque::iterator > +{ + + private: + + /* Copy Construction is not allowed + */ + HDeque(const HDeque &src) + { } + + /* assignement operator is not allowed + */ + const HDeque& operator = (const HDeque&) + { return *this; } + + public: + + /* Standard Constructor + * no namespace + */ + HDeque() + { dataname_ = "h_deque"; } + + /* Constructor + * with a namespace + */ + HDeque(string h_namespace) + { + dataname_ = "h_deque"; + setNamespace(h_namespace); + } + + /* Destructor + */ + virtual ~HDeque() { } + + /* inserts an element at the front of + * the container (so then the size + * increases by one !!!) + */ + virtual void pushFront(Element value) + { data_[h_namespace_].push_front(value); } + + /* removes the element from the front of + * the container (so then the size + * decreases by one !!!) + */ + virtual void popFront() + { data_[h_namespace_].pop_front(); } +}; + + + +#endif //_h_deque_h__ -- cgit v1.2.1