Libthreadar 1.6.0
libthreadar.hpp
Go to the documentation of this file.
1/*********************************************************************/
2// libthreadar - is a library providing several C++ classes to work with threads
3// Copyright (C) 2014-2025 Denis Corbin
4//
5// This file is part of libthreadar
6//
7// libthreadar is free software: you can redistribute it and/or modify
8// it under the terms of the GNU Lesser General Public License as published by
9// the Free Software Foundation, either version 3 of the License, or
10// (at your option) any later version.
11//
12// libhtreadar is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU Lesser General Public License for more details.
16//
17// You should have received a copy of the GNU Lesser General Public License
18// along with libthreadar. If not, see <http://www.gnu.org/licenses/>
19//
20//----
21// to contact the author: dar.linux@free.fr
22/*********************************************************************/
23
24#ifndef LIBTHREADAR_HPP
25#define LIBTHREADAR_HPP
26
29
69
70#include "config.h"
71
72#include "mutex.hpp"
73#include "semaphore.hpp"
74#include "condition.hpp"
75#include "barrier.hpp"
76#include "tampon.hpp"
77#include "fast_tampon.hpp"
78#include "thread.hpp"
79#include "thread_signal.hpp"
80#include "freezer.hpp"
81#include "ratelier_gather.hpp"
82#include "ratelier_scatter.hpp"
83
85
86namespace libthreadar
87{
88
90
99 extern void get_version(unsigned int & major, unsigned int & medium, unsigned int & minor);
100
101} // end of namespace
102
103extern "C"
104{
106
110 extern unsigned int libthreadar_for_autoconf(unsigned int x);
111}
112
113#endif
defines the barrier C++ class, to synchronize several threads
defines the condition class
defines the fast_tampon class that provides simplified but fast asynchronous pipe-like (unidirectiona...
defines the freezer class
unsigned int libthreadar_for_autoconf(unsigned int x)
in case you use autoconf AC_CHECK_LIB in your program to detect the availability of libthreadar
defines the mutex C++ class
This is the only namespace used in libthreadar and all symbols provided by libthreadar are member of ...
Definition: barrier.hpp:46
void get_version(unsigned int &major, unsigned int &medium, unsigned int &minor)
provides the version of libthreadar
defines structure that is suitable to gather data from many workers
defines structure that is suitable to dispatch between many workers taking job order in consideration
defines the semaphore class
defines the tampon class that provides asynchronous pipe-like (unidirectional) communication between ...
holds the definition of the thread class
holds the definition of a thread class type where cancellation is implemented by mean of signal