AuroraRuntime/Include/Aurora/Threading/Primitives/SOOPrimitives.hpp
2023-03-22 13:42:07 +00:00

46 lines
1.7 KiB
C++

/***
Copyright (C) 2023 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: SOOPrimitives.hpp
Date: 2023-3-21
Author: Reece
***/
#pragma once
namespace Aurora::Threading::Primitives
{
static const auto kDefaultPrimitiveSize = 128;
static const auto kPrimitiveSizeNTMutex = 16;
static const auto kPrimitiveSizeNTSemaphore = 64;
static const auto kPrimitiveSizeNTCS = 32;
static const auto kPrimitiveSizeNTEvent = 64;
static const auto kPrimitiveSizeNTRWLock = 104;
static const auto kPrimitiveSizeNTCond = 32;
static const auto kPrimitiveSizeNTCondMutex = 16;
#if defined(AURORA_IS_MODERNNT_DERIVED)
static const auto kPrimitiveSizeMutex = kPrimitiveSizeNTMutex;
static const auto kPrimitiveSizeSemaphore = kPrimitiveSizeNTSemaphore;
static const auto kPrimitiveSizeCS = kPrimitiveSizeNTCS;
static const auto kPrimitiveSizeEvent = kPrimitiveSizeNTEvent;
static const auto kPrimitiveSizeRWLock = kPrimitiveSizeNTRWLock;
static const auto kPrimitiveSizeCond = kPrimitiveSizeNTCond;
static const auto kPrimitiveSizeCondMutex = kPrimitiveSizeNTCondMutex;
//#elif defined(AURORA_IS_LINUX_DERIVED)
//
#else
static const auto kPrimitiveSizeMutex = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeSemaphore = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeCS = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeEvent = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeRWLock = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeCond = kDefaultPrimitiveSize;
static const auto kPrimitiveSizeCondMutex = kDefaultPrimitiveSize;
#endif
}