LeviLamina
Loading...
Searching...
No Matches
StructureDataCacheServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
8namespace Editor { class EditorStructureTemplate; }
9namespace Editor::StructureDataCache { class IStructureDataProvider; }
10namespace mce { class UUID; }
11// clang-format on
12
13namespace Editor::Services {
14
16public:
17 // virtual functions
18 // NOLINTBEGIN
19 virtual ~StructureDataCacheServiceProvider() = default;
20
21 virtual void registerStructureDataProvider(
22 ::std::weak_ptr<::Editor::StructureDataCache::IStructureDataProvider> providerRef
23 ) = 0;
24
25 virtual void unregisterStructureDataProvider(
26 ::std::weak_ptr<::Editor::StructureDataCache::IStructureDataProvider> providerRef
27 ) = 0;
28
29 virtual void informStructureDataRemoved(::mce::UUID const& id) = 0;
30
31 virtual void informStructureDataUpdated(
32 ::mce::UUID const& id,
33 ::std::variant<
36 ::std::shared_ptr<::StructureTemplate const>,
37 ::std::shared_ptr<::Editor::EditorStructureTemplate const>> const& data
38 ) = 0;
39 // NOLINTEND
40};
41
42} // namespace Editor::Services
Definition EditorStructureTemplate.h:27
Definition StructureDataCacheServiceProvider.h:15
Definition IStructureDataProvider.h:17
Definition StructureTemplate.h:34
Definition UUID.h:8