Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
GenericPlatformAffinity.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
6#include "Misc/EnumClassFlags.h"
7
8#define MAKEAFFINITYMASK1(x) ((1<<x))
9#define MAKEAFFINITYMASK2(x,y) ((1<<x)+(1<<y))
10#define MAKEAFFINITYMASK3(x,y,z) ((1<<x)+(1<<y)+(1<<z))
11#define MAKEAFFINITYMASK4(w,x,y,z) ((1<<w)+(1<<x)+(1<<y)+(1<<z))
12#define MAKEAFFINITYMASK5(v,w,x,y,z) ((1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
13#define MAKEAFFINITYMASK6(u,v,w,x,y,z) ((1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
14#define MAKEAFFINITYMASK7(t,u,v,w,x,y,z) ((1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
15#define MAKEAFFINITYMASK8(s,t,u,v,w,x,y,z) ((1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
16#define MAKEAFFINITYMASK9(r,s,t,u,v,w,x,y,z) ((1<<r)+(1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
17#define MAKEAFFINITYMASK10(q,r,s,t,u,v,w,x,y,z) ((1<<q)+(1<<r)+(1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
18#define MAKEAFFINITYMASK11(p,q,r,s,t,u,v,w,x,y,z) ((1<<p)+(1<<q)+(1<<r)+(1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
19#define MAKEAFFINITYMASK12(o,p,q,r,s,t,u,v,w,x,y,z) ((1<<o)+(1<<p)+(1<<q)+(1<<r)+(1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
20#define MAKEAFFINITYMASK13(n,o,p,q,r,s,t,u,v,w,x,y,z) ((1<<n)+(1<<o)+(1<<p)+(1<<q)+(1<<r)+(1<<s)+(1<<t)+(1<<u)+(1<<v)+(1<<w)+(1<<x)+(1<<y)+(1<<z))
21
22/**
23* The list of enumerated thread priorities we support
24*/
26{
35};
36
38{
39 None = 0,
40 SMTExclusive = (1 << 0),
41};
42
44
46{
47public:
48 static const uint64 GetMainGameMask()
49 {
50 return 0xFFFFFFFFFFFFFFFF;
51 }
52
53 static const uint64 GetRenderingThreadMask()
54 {
55 return 0xFFFFFFFFFFFFFFFF;
56 }
57
58 static const uint64 GetRHIThreadMask()
59 {
60 return 0xFFFFFFFFFFFFFFFF;
61 }
62
63 static const uint64 GetRHIFrameOffsetThreadMask()
64 {
65 return 0xFFFFFFFFFFFFFFFF;
66 }
67
68 static const uint64 GetRTHeartBeatMask()
69 {
70 return 0xFFFFFFFFFFFFFFFF;
71 }
72
73 static const uint64 GetPoolThreadMask()
74 {
75 return 0xFFFFFFFFFFFFFFFF;
76 }
77
78 static const uint64 GetTaskGraphThreadMask()
79 {
80 return 0xFFFFFFFFFFFFFFFF;
81 }
82
83 static const uint64 GetAudioRenderThreadMask()
84 {
85 return 0xFFFFFFFFFFFFFFFF;
86 }
87
88 static const uint64 GetNoAffinityMask()
89 {
90 return 0xFFFFFFFFFFFFFFFF;
91 }
92
93 static const uint64 GetTaskGraphBackgroundTaskMask()
94 {
95 return 0xFFFFFFFFFFFFFFFF;
96 }
97
99 {
100 return 0xFFFFFFFFFFFFFFFF;
101 }
102
103 static const uint64 GetAsyncLoadingThreadMask()
104 {
105 return 0xFFFFFFFFFFFFFFFF;
106 }
107
108 static const uint64 GetIoDispatcherThreadMask()
109 {
110 return 0xFFFFFFFFFFFFFFFF;
111 }
112
113 static const uint64 GetTraceThreadMask()
114 {
115 return 0xFFFFFFFFFFFFFFFF;
116 }
117
118 // @todo what do we think about having this as a function in this class? Should be make a whole new one?
119 // scrap it and force the priority like before?
121 {
122 return TPri_Normal;
123 }
124
126 {
128 }
129
131 {
132 return TPri_Normal;
133 }
134
136 {
137 return TPri_Normal;
138 }
139
141 {
143 }
144
146 {
148 }
149
151 {
152 return TPri_BelowNormal;
153 }
154};
#define ENUM_CLASS_FLAGS(Enum)
EThreadCreateFlags
Definition Enums.h:11288
EThreadPriority
Definition Enums.h:5969
@ TPri_TimeCritical
@ TPri_SlightlyBelowNormal
static const uint64 GetAudioRenderThreadMask()
static const uint64 GetRHIFrameOffsetThreadMask()
static const uint64 GetTraceThreadMask()
static const uint64 GetAsyncLoadingThreadMask()
static EThreadPriority GetTaskBPThreadPriority()
static EThreadPriority GetGameThreadPriority()
static const uint64 GetRHIThreadMask()
static EThreadPriority GetTaskThreadPriority()
static EThreadPriority GetRHIThreadPriority()
static const uint64 GetIoDispatcherThreadMask()
static EThreadCreateFlags GetRenderingThreadFlags()
static const uint64 GetTaskGraphHighPriorityTaskMask()
static const uint64 GetTaskGraphThreadMask()
static const uint64 GetRTHeartBeatMask()
static const uint64 GetRenderingThreadMask()
static EThreadPriority GetRenderingThreadPriority()
static const uint64 GetPoolThreadMask()
static EThreadCreateFlags GetRHIThreadFlags()
static const uint64 GetNoAffinityMask()
static const uint64 GetMainGameMask()
static const uint64 GetTaskGraphBackgroundTaskMask()