activemq-cpp-3.9.5
Queue.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17#ifndef _DECAF_UTIL_QUEUE_H_
18#define _DECAF_UTIL_QUEUE_H_
19
20#include <decaf/util/Config.h>
21#include <decaf/util/Iterator.h>
26
27namespace decaf{
28namespace util{
29
54 template <typename E>
55 class Queue : public virtual decaf::util::Collection<E> {
56 public:
57
58 virtual ~Queue() {}
59
76 virtual bool offer(const E& value) = 0;
77
90 virtual bool poll(E& result) = 0;
91
101 virtual E remove() = 0;
102
113 virtual bool peek(E& result) const = 0;
114
123 virtual E element() const = 0;
124
125 public:
126
128
129 };
130
131}}
132
133#endif /*_DECAF_UTIL_QUEUE_H_*/
The root interface in the collection hierarchy.
Definition Collection.h:69
A kind of collection provides advanced operations than other basic collections, such as insertion,...
Definition Queue.h:55
virtual bool peek(E &result) const =0
Gets but not removes the element in the head of the queue.
virtual bool poll(E &result)=0
Gets and removes the element in the head of the queue.
virtual E remove()=0
Gets and removes the element in the head of the queue.
virtual E element() const =0
Gets but not removes the element in the head of the queue.
virtual ~Queue()
Definition Queue.h:58
virtual bool offer(const E &value)=0
Inserts the specified element into the queue provided that the condition allows such an operation.
Definition AbstractCollection.h:33
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25