summaryrefslogtreecommitdiff
path: root/algo1w4d2/Queue.h
blob: cf52b123e82619cc68376724b2497efe28f6868e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

class Klant;

#include <vector>
#include <memory>

class Queue {
public:
	void insert(const Klant&); /** @brief append to queue */
	std::unique_ptr<Klant> remove(); /** @brief remove and return last queue element */
	Klant* peek(); /** @brief return but keep last queue element */
	unsigned size(); /** @brief get size of queue */

public:
	Queue();
	virtual ~Queue();

private:
	std::vector<std::unique_ptr<Klant>> _queue;
};