diff options
author | Michele Calgaro <[email protected]> | 2020-12-13 19:22:19 +0900 |
---|---|---|
committer | Michele Calgaro <[email protected]> | 2020-12-13 19:22:19 +0900 |
commit | 14d0fbe96c6abdb9da80e99953aec672f999948c (patch) | |
tree | d48726c1256a1a495b415570847f08ecf9e5ecdd /ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h | |
parent | db124e3167670efff59f6aef4bc0daff316dddf8 (diff) | |
download | tdegraphics-14d0fbe96c6abdb9da80e99953aec672f999948c.tar.gz tdegraphics-14d0fbe96c6abdb9da80e99953aec672f999948c.zip |
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h')
-rw-r--r-- | ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h b/ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h new file mode 100644 index 00000000..2c09ca8b --- /dev/null +++ b/ksvg/impl/libs/libtext2path/src/myboost/lightweight_mutex.h @@ -0,0 +1,74 @@ +#ifndef BOOST_DETAIL_LWM_PTHREADS_H_INCLUDED +#define BOOST_DETAIL_LWM_PTHREADS_H_INCLUDED + +// +// boost/detail/lwm_pthreads.h +// +// Copyright (c) 2002 Peter Dimov and Multi Media Ltd. +// +// Permission to copy, use, modify, sell and distribute this software +// is granted provided this copyright notice appears in all copies. +// This software is provided "as is" without express or implied +// warranty, and with no claim as to its suitability for any purpose. +// + +#include <pthread.h> + +namespace myboost +{ + +namespace detail +{ + +class lightweight_mutex +{ +private: + + pthread_mutex_t m_; + + lightweight_mutex(lightweight_mutex const &); + lightweight_mutex & operator=(lightweight_mutex const &); + +public: + + lightweight_mutex() + { + pthread_mutex_init(&m_, 0); + } + + ~lightweight_mutex() + { + pthread_mutex_destroy(&m_); + } + + class scoped_lock; + friend class scoped_lock; + + class scoped_lock + { + private: + + pthread_mutex_t & m_; + + scoped_lock(scoped_lock const &); + scoped_lock & operator=(scoped_lock const &); + + public: + + scoped_lock(lightweight_mutex & m): m_(m.m_) + { + pthread_mutex_lock(&m_); + } + + ~scoped_lock() + { + pthread_mutex_unlock(&m_); + } + }; +}; + +} // namespace detail + +} // namespace myboost + +#endif // #ifndef BOOST_DETAIL_LWM_PTHREADS_H_INCLUDED |