mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-05-09 03:57:51 +03:00
Add simple external console server/client
This commit is contained in:
parent
de7087caf4
commit
7357ea2102
8 changed files with 433 additions and 9 deletions
34
components/misc/tsdeque.hpp
Executable file
34
components/misc/tsdeque.hpp
Executable file
|
@ -0,0 +1,34 @@
|
|||
#ifndef TSDEQUE_H
|
||||
#define TSDEQUE_H
|
||||
|
||||
#include <boost/thread.hpp>
|
||||
|
||||
template <typename T>
|
||||
class TsDeque
|
||||
{
|
||||
public:
|
||||
void push_back (const T& t)
|
||||
{
|
||||
boost::mutex::scoped_lock lock(mMutex);
|
||||
mDeque.push_back(t);
|
||||
}
|
||||
|
||||
bool pop_front (T& t)
|
||||
{
|
||||
boost::mutex::scoped_lock lock(mMutex);
|
||||
if (!mDeque.empty())
|
||||
{
|
||||
t = mDeque.front();
|
||||
mDeque.pop_front();
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
protected:
|
||||
std::deque<T> mDeque;
|
||||
mutable boost::mutex mMutex;
|
||||
};
|
||||
|
||||
#endif // TSDEQUE_H
|
Loading…
Add table
Add a link
Reference in a new issue