ALib C++ Library
Library Version: 2511 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
threadmodel.mpp
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header-file is part of the \aliblong.
4/// With supporting legacy or module builds, .mpp-files are either recognized by the build-system
5/// as C++20 Module interface files, or are included by the
6/// \ref alib_manual_modules_impludes "import/include headers".
7///
8/// \emoji :copyright: 2013-2025 A-Worx GmbH, Germany.
9/// Published under \ref mainpage_license "Boost Software License".
10//==================================================================================================
11#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
12# error "Symbol ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
13#endif
14#if ALIB_C20_MODULES
15 module;
16#endif
17//========================================= Global Fragment ========================================
18#include <list>
19#include <map>
20#include <queue>
23//============================================== Module ============================================
24#if ALIB_C20_MODULES
25 /// This is a <em><b>C++ Module</b></em> of the \aliblong.
26 /// Due to the dual-compile option (either as C++20 Modules or using legacy C++ inclusion),
27 /// the C++20 Module names are not of further interest or use.<br>
28 /// In general, the names equal the names of the header files listed in the chapter
29 /// \ref alib_manual_modules_impludes of the \alib User Manual.
30 ///
31 /// @see The documentation of the <em><b>"ALib Module"</b></em> given with the corresponding
32 /// Programmer's Manual \alib_threadmodel.
33 export module ALib.ThreadModel;
34 import ALib.Lang;
35 import ALib.Time;
36 import ALib.Threads;
37 import ALib.Singletons;
38# if ALIB_STRINGS
39 import ALib.Strings;
40# endif
41# if ALIB_MONOMEM
42 import ALib.Monomem;
43# endif
44 import ALib.Containers.List;
45# if ALIB_CONTAINERS
46 import ALib.Containers.HashTable;
47# endif
48# if ALIB_ENUMRECORDS
49 import ALib.EnumRecords;
50# endif
51#else
52# include "ALib.Lang.H"
53# include "ALib.Time.H"
54# include "ALib.Threads.H"
55# include "ALib.Singletons.H"
56# include "ALib.Strings.H"
57# include "ALib.Monomem.H"
58# include "ALib.Containers.List.H"
60# include "ALib.EnumRecords.H"
61#endif
62
63//============================================= Exports ============================================