cesium-native  0.41.0
TilesetExternals.h
1 #pragma once
2 
3 #include "Library.h"
4 #include "TileOcclusionRendererProxy.h"
5 #include "TilesetSharedAssetSystem.h"
6 #include "spdlog-cesium.h"
7 
8 #include <CesiumAsync/AsyncSystem.h>
9 
10 #include <memory>
11 
12 namespace CesiumAsync {
13 class IAssetAccessor;
14 class ITaskProcessor;
15 } // namespace CesiumAsync
16 
17 namespace CesiumUtility {
18 class CreditSystem;
19 }
20 
21 namespace Cesium3DTilesSelection {
22 class IPrepareRendererResources;
23 
29 class CESIUM3DTILESSELECTION_API TilesetExternals final {
30 public:
34  std::shared_ptr<CesiumAsync::IAssetAccessor> pAssetAccessor;
35 
39  std::shared_ptr<IPrepareRendererResources> pPrepareRendererResources;
40 
49 
55  std::shared_ptr<CesiumUtility::CreditSystem> pCreditSystem;
56 
62  std::shared_ptr<spdlog::logger> pLogger = spdlog::default_logger();
63 
71  std::shared_ptr<TileOcclusionRendererProxyPool> pTileOcclusionProxyPool =
72  nullptr;
73 
79  TilesetSharedAssetSystem::getDefault();
80 };
81 
82 } // namespace Cesium3DTilesSelection
External interfaces used by a Tileset.
CesiumAsync::AsyncSystem asyncSystem
The async system to use to do work in threads.
std::shared_ptr< CesiumAsync::IAssetAccessor > pAssetAccessor
An external CesiumAsync::IAssetAccessor.
std::shared_ptr< CesiumUtility::CreditSystem > pCreditSystem
An external CreditSystem that can be used to manage credit strings and track which which credits to s...
std::shared_ptr< IPrepareRendererResources > pPrepareRendererResources
An external IPrepareRendererResources.
A system for managing asynchronous requests and tasks.
Definition: AsyncSystem.h:36
Creates and manages Credit objects. Avoids repetitions and tracks which credits should be shown and w...
Definition: CreditSystem.h:39
A smart pointer that calls addReference and releaseReference on the controlled object.
Classes that implement the 3D Tiles standard.
Classes that support asynchronous operations.
Utility classes for Cesium.