LeviLamina
Loading...
Searching...
No Matches
EntitySystemProfiler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/container/small_vector.h"
7#include "mc/platform/brstd/flat_map.h"
8
9// auto generated forward declare list
10// clang-format off
11class EntityId;
12class EntityRegistry;
13class EntitySystems;
14// clang-format on
15
16namespace ECS::Profiling {
17
18class EntitySystemProfiler {
19public:
20 // member variables
21 // NOLINTBEGIN
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 EntitySystemProfiler& operator=(EntitySystemProfiler const&);
35 EntitySystemProfiler(EntitySystemProfiler const&);
36 EntitySystemProfiler();
37
38public:
39 // member functions
40 // NOLINTBEGIN
41#ifdef LL_PLAT_C
42 MCNAPI void ClearTrackingSheet();
43
44 MCNAPI EntitySystemProfiler(
45 ::std::thread::id const& registryThread,
46 ::EntityRegistry& entityRegistry,
47 ::EntitySystems& entitySystems
48 );
49
50 MCNAPI ::brstd::flat_map<
53 ::std::less<::EntityId>,
54 ::std::vector<::EntityId>,
55 ::std::vector<
57 ExportData() const;
58
59 MCNAPI uint64 InstallHooks();
60
61 MCNAPI bool IsUnderlyingCodeUnhooked() const;
62
63 MCNAPI void SetMultiTrackingSheet();
64
65 MCNAPI uint64 UninstallHooks();
66
67 MCNAPI void ZeroAllTimes();
68
69 MCNAPI ~EntitySystemProfiler();
70#endif
71 // NOLINTEND
72
73public:
74 // constructor thunks
75 // NOLINTBEGIN
76#ifdef LL_PLAT_C
77 MCNAPI void*
78 $ctor(::std::thread::id const& registryThread, ::EntityRegistry& entityRegistry, ::EntitySystems& entitySystems);
79#endif
80 // NOLINTEND
81
82public:
83 // destructor thunk
84 // NOLINTBEGIN
85#ifdef LL_PLAT_C
86 MCNAPI void $dtor();
87#endif
88 // NOLINTEND
89};
90
91} // namespace ECS::Profiling
Definition small_vector.h:8
Definition EntityId.h:27
Definition EntityRegistry.h:10
Definition EntitySystems.h:25
Definition Alias.h:14