LeviLamina
Loading...
Searching...
No Matches
StructureDataCacheService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result_deprecated.h"
7#include "mc/editor/services/IEditorService.h"
8#include "mc/editor/services/PayloadStoreHelper.h"
9#include "mc/server/editor/serviceproviders/StructureDataCacheServiceProvider.h"
10
11// auto generated forward declare list
12// clang-format off
14namespace Editor { class EditorStructureTemplate; }
15namespace Editor { class ServiceProviderCollection; }
16namespace Editor::Network { class StructureDataCacheReleaseStructurePayload; }
17namespace Editor::Network { class StructureDataCacheRequestStructurePayload; }
18namespace Editor::StructureDataCache { class IStructureDataProvider; }
19namespace mce { class UUID; }
20// clang-format on
21
22namespace Editor::Services {
23
24class StructureDataCacheService : public ::Editor::Services::IEditorService,
27public:
28 // member variables
29 // NOLINTBEGIN
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 StructureDataCacheService& operator=(StructureDataCacheService const&);
37 StructureDataCacheService(StructureDataCacheService const&);
38 StructureDataCacheService();
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual ~StructureDataCacheService() /*override*/;
44
45 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
46
47 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
48
49 virtual ::std::string_view getServiceName() const /*override*/;
50
51 virtual void registerStructureDataProvider(
52 ::std::weak_ptr<::Editor::StructureDataCache::IStructureDataProvider> providerRef
53 ) /*override*/;
54
55 virtual void informStructureDataRemoved(::mce::UUID const& id) /*override*/;
56
57 virtual void informStructureDataUpdated(
58 ::mce::UUID const& id,
59 ::std::variant<
62 ::std::shared_ptr<::StructureTemplate const>,
63 ::std::shared_ptr<::Editor::EditorStructureTemplate const>> const& data
64 ) /*override*/;
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
71
74 );
75
78 );
79
80 MCNAPI void _recordClientOwnership(::mce::UUID const& structureId, ::mce::UUID const& clientId);
81
82 MCNAPI void _recordClientOwnershipRelease(::mce::UUID const& structureId, ::mce::UUID const& clientId);
83 // NOLINTEND
84
85public:
86 // constructor thunks
87 // NOLINTBEGIN
89 // NOLINTEND
90
91public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCNAPI void $dtor();
95 // NOLINTEND
96
97public:
98 // virtual function thunks
99 // NOLINTBEGIN
100 MCNAPI ::Scripting::Result_deprecated<void> $init();
101
102 MCNAPI ::Scripting::Result_deprecated<void> $quit();
103
104 MCNAPI ::std::string_view $getServiceName() const;
105
106 MCNAPI void
107 $registerStructureDataProvider(::std::weak_ptr<::Editor::StructureDataCache::IStructureDataProvider> providerRef);
108
110
112 ::mce::UUID const& id,
113 ::std::variant<
114 ::StructureTemplate const*,
116 ::std::shared_ptr<::StructureTemplate const>,
117 ::std::shared_ptr<::Editor::EditorStructureTemplate const>> const& data
118 );
119
120
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
127
128 MCNAPI static void** $vftableForIEditorService();
129 // NOLINTEND
130};
131
132} // namespace Editor::Services
Definition EditorStructureTemplate.h:28
Definition StructureDataCacheReleaseStructurePayload.h:16
Definition StructureDataCacheRequestStructurePayload.h:16
Definition ServiceProviderCollection.h:7
Definition IEditorService.h:11
Definition PayloadStoreHelper.h:7
Definition StructureDataCacheServiceProvider.h:15
MCAPI StructureDataCacheService(::Editor::ServiceProviderCollection &providers)
MCAPI void _recordClientOwnership(::mce::UUID const &structureId, ::mce::UUID const &clientId)
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI void _handleStructureDataCacheReleaseStructurePayload(::Editor::Network::StructureDataCacheReleaseStructurePayload const &payload)
MCAPI::std::string_view $getServiceName() const
MCAPI void $informStructureDataRemoved(::mce::UUID const &id)
MCAPI void $registerStructureDataProvider(::std::weak_ptr<::Editor::StructureDataCache::IStructureDataProvider > providerRef)
static MCAPI void ** $vftableForIEditorService()
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI void _recordClientOwnershipRelease(::mce::UUID const &structureId, ::mce::UUID const &clientId)
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI void $informStructureDataUpdated(::mce::UUID const &id, ::std::variant< ::StructureTemplate const *, ::Editor::EditorStructureTemplate const *, ::std::shared_ptr<::StructureTemplate const >, ::std::shared_ptr<::Editor::EditorStructureTemplate const > > const &data)
MCAPI void _handleStructureDataCacheRequestStructurePayload(::Editor::Network::StructureDataCacheRequestStructurePayload const &payload)
static MCAPI void ** $vftableForStructureDataCacheServiceProvider()
Definition IStructureDataProvider.h:17
Definition StructureTemplate.h:35
Definition UUID.h:7
Definition Alias.h:14