summaryrefslogtreecommitdiffstats
path: root/veslibrary/ves_cpplibrary/src/lib/transport/XMemQueue.h
blob: 0a1a6511956ea913ca44bc224729c5977c37b198 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#pragma once

#include "XQueue.h"
#include <queue>

namespace vagt
{
    namespace queue
    {
        class XMemQueue: public XQueue
        {
        public:
            XMemQueue(int capacity);
            virtual bool empty() override;
            virtual XErrorCode push(const std::string & val) override;
            virtual void pop() override;
            virtual std::string front() override;
        private:
            int capacity_;
            int size_;
            std::queue<std::string> queue_;
        };
    }
}