3#include <CesiumAsync/AsyncSystem.h>
4#include <CesiumAsync/IAssetRequest.h>
5#include <CesiumGeometry/Rectangle.h>
6#include <CesiumGltf/Model.h>
7#include <CesiumUtility/IntrusivePointer.h>
8#include <CesiumUtility/ReferenceCounted.h>
126 ActivatedRasterOverlay& activatedOverlay,
127 const glm::dvec2& targetScreenPixels,
160 return this->_rectangle;
171 return this->_targetScreenPixels;
183 const std::vector<CesiumUtility::Credit>&
getCredits() const noexcept {
184 return this->_tileCredits;
197 return this->_pImage;
209 return this->_pImage;
227 return this->_pRendererResources;
236 this->_pRendererResources = pValue;
244 return this->_moreDetailAvailable;
254 void setState(
LoadState newState)
noexcept;
265 glm::dvec2 _targetScreenPixels;
267 std::vector<CesiumUtility::Credit> _tileCredits;
270 void* _pRendererResources;
A RasterOverlay that has been activated for use. While a RasterOverlayTileProvider can be used direct...
Provides individual tiles for a RasterOverlay on demand.
void setRendererResources(void *pValue) noexcept
Set the renderer resources for this tile.
const RasterOverlay & getOverlay() const noexcept
Gets the RasterOverlay associated with this instance.
const std::vector< CesiumUtility::Credit > & getCredits() const noexcept
Returns the list of Credits needed for this tile.
CesiumUtility::IntrusivePointer< const CesiumGltf::ImageAsset > getImage() const noexcept
Returns the image data for the tile.
void * getRendererResources() const noexcept
Returns the renderer resources that have been created for this tile.
glm::dvec2 getTargetScreenPixels() const noexcept
Gets the number of screen pixels in each direction that should be covered by this tile's texture.
CesiumUtility::IntrusivePointer< CesiumGltf::ImageAsset > getImage() noexcept
Returns the image data for the tile.
~RasterOverlayTile()
Default destructor.
MoreDetailAvailable isMoreDetailAvailable() const noexcept
Determines if more detailed data is available for the spatial area covered by this tile.
ActivatedRasterOverlay & getActivatedOverlay() noexcept
Gets the activated overlay that created this instance.
RasterOverlayTileProvider & getTileProvider() noexcept
Returns the RasterOverlayTileProvider that is responsible for loading this tile's image.
RasterOverlayTile(ActivatedRasterOverlay &activatedOverlay) noexcept
Constructs a placeholder tile for the tile provider.
const CesiumGeometry::Rectangle & getRectangle() const noexcept
Returns the CesiumGeometry::Rectangle that defines the bounds of this tile in the raster overlay's pr...
void loadInMainThread()
Create the renderer resources for the loaded image.
RasterOverlayTile(ActivatedRasterOverlay &activatedOverlay, const glm::dvec2 &targetScreenPixels, const CesiumGeometry::Rectangle &imageryRectangle) noexcept
Creates a new instance.
LoadState getState() const noexcept
Returns the current LoadState.
LoadState
Lifecycle states of a raster overlay tile.
@ Loading
The request for loading the image data is still pending.
@ Placeholder
Indicator for a placeholder tile.
@ Loaded
The image data has been loaded and the image has been created.
@ Unloaded
The initial state.
@ Failed
The image request or image creation failed.
@ Done
The rendering resources for the image data have been created.
MoreDetailAvailable
Tile availability states.
@ Unknown
It is not known whether more detailed raster tiles are available.
@ Yes
There are more detailed raster tiles.
@ No
There are no more detailed raster tiles.
The base class for a rasterized image that can be draped over a Cesium3DTilesSelection::Tileset....
A smart pointer that calls addReference and releaseReference on the controlled object.
Basic geometry classes for Cesium.
Classes for raster overlays, which allow draping massive 2D textures over a model.
Utility classes for Cesium.
ReferenceCounted< T, false > ReferenceCountedNonThreadSafe
A reference-counted base class, meant to be used with IntrusivePointer. The reference count is not th...
Represents an HTML string that should be shown on screen to attribute third parties for used data,...