#include "UT_API.h"
#include "UT_NonCopyable.h"
#include "UT_UniquePtr.h"
#include <SYS/SYS_StaticInit.h>
#include <type_traits>
Go to the source code of this file.
#define UT_ENABLE_SUBSYSTEMS |
#define UT_SUBSYSTEM_CLASS |
( |
|
sub_type | ) |
|
Value:public: \
static constexpr
Type subsystem_type = UT_ISubSystem::Type::sub_type;
\
{ \
return subsystem_type; \
} \
\
private: \
static bool theIsRegistered;
Definition at line 74 of file UT_SubSystem.h.
#define UT_SUBSYSTEM_DECLARE |
( |
|
api, |
|
|
|
cls |
|
) |
| |
Value:namespace cls_Namespace \
}
#define SYSdeclareStaticInit(API, NAME)
Definition at line 102 of file UT_SubSystem.h.
#define UT_SUBSYSTEM_IMPL |
( |
|
cls | ) |
|
Value:namespace cls_Namespace \
}
#define UT_SUBSYSTEM_IMPL_INNER(cls)
#define SYSimplementStaticInit(NAME)
Definition at line 95 of file UT_SubSystem.h.
#define UT_SUBSYSTEM_IMPL_INNER |
( |
|
cls | ) |
|
Value:static SYS_StaticInit<cls> theSubSystem; \
static void cls##Init() \
{ \
UT_ISubSystem::registerSubSystem<cls>(*theSubSystem); \
} \
static void cls##CleanUp() \
{ \
}
Definition at line 85 of file UT_SubSystem.h.
The general purpose thread pool. Any work can be done on this pool. The exception to this is licensing work. We must not do any licensing work on this thread as license checks will end up blocking the thread causing a hang waiting for licensing work to be processed.
Initialize all subsystems.
Shutdown all subsystems. initialize() must be called prior to this function.