66 nRetVal = m_List.
AddLast(value);
82 return XN_STATUS_IS_EMPTY;
85 value = *(m_List.
begin());
96 return *(m_List.
begin());
106 return *(m_List.
begin());
122 return m_List.
Size();
126 XN_DISABLE_COPY_AND_ASSIGN(
XnQueue);
137 #define XN_DECLARE_QUEUE_WITH_TRANSLATOR_DECL(decl, Type, ClassName, Translator, base) \ 138 class decl ClassName : public base \ 146 while (Size() != 0) \ 149 XnStatus Push(Type const& value) \ 151 XnValue val = Translator::CreateValueCopy(value); \ 152 XnStatus nRetVal = base::Push(val); \ 153 if (nRetVal != XN_STATUS_OK) \ 155 Translator::FreeValue(val); \ 158 return XN_STATUS_OK; \ 160 XnStatus Pop(Type& value) \ 163 XnStatus nRetVal = base::Pop(val); \ 164 if (nRetVal != XN_STATUS_OK) return (nRetVal); \ 165 value = Translator::GetFromValue(val); \ 166 Translator::FreeValue(val); \ 167 return XN_STATUS_OK; \ 169 inline Type const& Top() const { return Translator::GetFromValue(base::Top()); }\ 170 inline Type& Top() { return Translator::GetFromValue(base::Top()); } \ 172 XN_DISABLE_COPY_AND_ASSIGN(ClassName); \ 180 #define XN_DECLARE_QUEUE_WITH_TRANSLATOR(Type, ClassName, Translator, base) \ 181 XN_DECLARE_QUEUE_WITH_TRANSLATOR_DECL(, Type, ClassName, Translator, base) 187 #define XN_DECLARE_QUEUE_DECL(decl, Type, ClassName) \ 188 XN_DECLARE_DEFAULT_VALUE_TRANSLATOR_DECL(decl, Type, XN_DEFAULT_TRANSLATOR_NAME(ClassName)) \ 189 XN_DECLARE_QUEUE_WITH_TRANSLATOR_DECL(decl, Type, ClassName, XN_DEFAULT_TRANSLATOR_NAME(ClassName), XnQueue) 194 #define XN_DECLARE_QUEUE(Type, ClassName) \ 195 XN_DECLARE_QUEUE_DECL(, Type, ClassName) 197 #endif // _XN_QUEUE_H
#define XN_IS_STATUS_OK(x)
Definition: XnMacros.h:59
XnStatus Remove(ConstIterator where, XnValue &value)
Definition: XnList.h:360
virtual ~XnQueue()
Definition: XnQueue.h:45
#define XN_STATUS_OK
Definition: XnStatus.h:36
virtual XnStatus Pop(XnValue &value)
Definition: XnQueue.h:78
XnUInt32 XnStatus
Definition: XnStatus.h:33
virtual XnStatus Init()
Definition: XnQueue.h:50
virtual XnStatus Push(XnValue const &value)
Definition: XnQueue.h:62
void * XnValue
Definition: XnDataTypes.h:35
XnBool IsEmpty() const
Definition: XnList.h:412
XnBool IsEmpty() const
Definition: XnQueue.h:112
virtual XnUInt32 Size() const
Definition: XnQueue.h:120
XnValue const & Top() const
Definition: XnQueue.h:94
XnUInt32 Size() const
Definition: XnList.h:420
XnStatus AddLast(const XnValue &value)
Definition: XnList.h:261
XnValue & Top()
Definition: XnQueue.h:104
Iterator begin()
Definition: XnList.h:432
XnQueue()
Definition: XnQueue.h:41