"failstar" sounds like a name for a cruise liner from the 80s. As "*" isn't a desirable part of directory names, just name the whole thing "fail/", the core parts being stored in "fail/core/". Additionally fixing two build system dependency issues: - missing jobserver -> protomessages dependency - broken bochs -> fail dependency (add_custom_target DEPENDS only allows plain file dependencies ... cmake for the win) git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@956 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
26 lines
424 B
C++
26 lines
424 B
C++
// Thread safe counter
|
|
|
|
#ifndef __SYNCHRONIZED_COUNTER_HPP__
|
|
#define __SYNCHRONIZED_COUNTER_HPP__
|
|
|
|
#ifndef __puma
|
|
#include <boost/thread.hpp>
|
|
#include <sys/types.h>
|
|
#endif
|
|
|
|
class SynchronizedCounter
|
|
{
|
|
private:
|
|
int m_counter;
|
|
#ifndef __puma
|
|
boost::mutex m_mutex; // The mutex to synchronise on
|
|
#endif
|
|
public:
|
|
SynchronizedCounter() : m_counter(0) {};
|
|
|
|
int increment();
|
|
int decrement();
|
|
int getValue();
|
|
};
|
|
|
|
#endif |