Go to the documentation of this file.
13 #include <boost/enable_shared_from_this.hpp>
14 #include <boost/shared_ptr.hpp>
15 #include <boost/thread.hpp>
16 #include <boost/weak_ptr.hpp>
52 using Ptr = boost::shared_ptr<TileInitialisationObserver>;
53 using WeakPtr = boost::weak_ptr<TileInitialisationObserver>;
64 virtual void tileCreated(
const boost::shared_ptr<CompressedTile>& tile);
74 virtual void tileFinished(
const boost::shared_ptr<CompressedTile>& tile);
83 using Ptr = boost::shared_ptr<TileLoadingObserver>;
84 using WeakPtr = boost::weak_ptr<TileLoadingObserver>;
108 using Ptr = boost::shared_ptr<CompressedTile>;
127 std::map<ViewInterface::WeakPtr, boost::weak_ptr<TileViewState>>
viewStates;
247 using Ptr = boost::shared_ptr<Layer>;
265 static Ptr create(
int layerWidth,
int layerHeight,
int bpp);
std::map< ViewInterface::WeakPtr, boost::weak_ptr< TileViewState > > viewStates
Definition: tiledbitmaplayer.hh:127
int getWidth() const
Definition: tiledbitmaplayer.hh:274
TileState getState()
Definition: compressedtile.cc:176
boost::shared_ptr< TileLoadingObserver > Ptr
Definition: tiledbitmaplayer.hh:83
boost::shared_ptr< TileInitialisationObserver > Ptr
Definition: tiledbitmaplayer.hh:52
virtual void tileFinished(const boost::shared_ptr< CompressedTile > &tile)
TileInitialisationObserver.
Definition: compressedtile.cc:289
const int x
Definition: tiledbitmaplayer.hh:112
Scroom::Utils::Rectangle< int > getRect() const
Definition: tiledbitmaplayer.hh:280
int getHorTileCount() const
Definition: layer.cc:124
TileStateInternal
Definition: tiledbitmaplayer.hh:34
boost::shared_ptr< PageProvider > Ptr
Definition: memoryblobs.hh:41
void close(ViewInterface::WeakPtr vi) override
Definition: compressedtile.cc:284
int width
Definition: tiledbitmaplayer.hh:251
Tile::WeakPtr tile
Definition: tiledbitmaplayer.hh:118
Scroom::Bookkeeping::Token registerStrongObserver(Observer const &observer)
Definition: observable.hh:213
CompressedTileGrid tiles
Definition: tiledbitmaplayer.hh:255
boost::shared_ptr< Blob > Ptr
Definition: memoryblobs.hh:78
int verTileCount
Definition: tiledbitmaplayer.hh:254
void close(ViewInterface::WeakPtr vi) override
Definition: layer.cc:173
std::vector< CompressedTileLine > CompressedTileGrid
Definition: tiledbitmaplayer.hh:238
boost::shared_ptr< WeakQueue > Ptr
Definition: threadpool.hh:137
ConstTile::WeakPtr constTile
Definition: tiledbitmaplayer.hh:119
void cleanupState()
Definition: compressedtile.cc:261
static Ptr create(int depth, int x, int y, int bpp, const Scroom::MemoryBlobs::PageProvider::Ptr &provider, TileStateInternal state=TSI_UNINITIALIZED)
Definition: compressedtile.cc:32
Scroom::Bookkeeping::Token registerStrongObserver(TileLoadingObserver::Ptr const &observer)
Definition: tiledbitmaplayer.hh:177
Tile::Ptr getTileSync()
Definition: compressedtile.cc:55
void fetchData(SourcePresentation::Ptr sp, const ThreadPool::WeakQueue::Ptr &queue, std::function< void()> on_finished)
Definition: layer.cc:148
ConstTile::Ptr getConstTileAsync()
Definition: compressedtile.cc:84
boost::shared_ptr< ConstTile > Ptr
Definition: tile.hh:47
int height
Definition: tiledbitmaplayer.hh:252
ConstTile::Ptr getConstTileSync()
Definition: compressedtile.cc:44
boost::shared_ptr< SourcePresentation > Ptr
Definition: tiledbitmapinterface.hh:198
CompressedTile::Ptr outOfBounds
Definition: tiledbitmaplayer.hh:256
CompressedTileLine & getTileLine(int j)
Definition: layer.cc:138
@ TSI_LOADING_SYNCHRONOUSLY
Definition: tiledbitmaplayer.hh:39
ConstTile::Ptr do_load()
Definition: compressedtile.cc:130
void open(ViewInterface::WeakPtr vi) override
Definition: compressedtile.cc:279
CompressedTileLine lineOutOfBounds
Definition: tiledbitmaplayer.hh:257
Scroom::MemoryBlobs::PageProvider::Ptr pageProvider
Definition: tiledbitmaplayer.hh:258
Definition: tiledbitmaplayer.hh:242
int horTileCount
Definition: tiledbitmaplayer.hh:253
int depth
Definition: tiledbitmaplayer.hh:250
boost::mutex stateData
Definition: tiledbitmaplayer.hh:122
Scroom::Bookkeeping::Token registerObserver(ObserverWeak const &observer)
Definition: observable.hh:233
const int depth
Definition: tiledbitmaplayer.hh:111
TileState
Definition: tiledbitmapinterface.hh:32
CompressedTile::Ptr getTile(int i, int j)
Definition: layer.cc:128
Scroom::MemoryBlobs::PageProvider::Ptr provider
Definition: tiledbitmaplayer.hh:120
Scroom::MemoryBlobs::PageProvider::Ptr getPageProvider()
Definition: tiledbitmaplayer.hh:284
Scroom::Bookkeeping::Token registerObserver(const TileInitialisationObserver::Ptr &observer)
Definition: layer.cc:110
boost::weak_ptr< ViewInterface > WeakPtr
Definition: viewinterface.hh:194
CompressedTile(int depth, int x, int y, int bpp, const Scroom::MemoryBlobs::PageProvider::Ptr &provider, TileStateInternal state)
CompressedTile.
Definition: compressedtile.cc:21
void notifyObservers(const ConstTile::Ptr &tile)
Definition: compressedtile.cc:271
@ TSI_UNINITIALIZED
Definition: tiledbitmaplayer.hh:36
Definition: utilities.hh:30
boost::weak_ptr< TileLoadingObserver > WeakPtr
Definition: tiledbitmaplayer.hh:84
TileStateInternal state
Definition: tiledbitmaplayer.hh:117
boost::shared_ptr< Tile > Ptr
Definition: tile.hh:21
const int bpp
Definition: tiledbitmaplayer.hh:114
void observerAdded(TileInitialisationObserver::Ptr const &observer, Scroom::Bookkeeping::Token const &token) override
Definition: compressedtile.cc:208
Scroom::Bookkeeping::Token registerObserver(TileInitialisationObserver::WeakPtr const &observer)
Definition: tiledbitmaplayer.hh:173
Scroom::Bookkeeping::Token registerObserver(TileLoadingObserver::WeakPtr const &observer)
Definition: tiledbitmaplayer.hh:181
Definition: observable.hh:24
Definition: tiledbitmaplayer.hh:102
void open(ViewInterface::WeakPtr vi) override
Definition: layer.cc:157
int getVerTileCount() const
Definition: layer.cc:126
Definition: interface.hh:10
virtual void tileCreated(const boost::shared_ptr< CompressedTile > &tile)
Definition: compressedtile.cc:291
int getDepth() const
Definition: tiledbitmaplayer.hh:278
boost::weak_ptr< TileInitialisationObserver > WeakPtr
Definition: tiledbitmaplayer.hh:53
@ TSI_OUT_OF_BOUNDS
Definition: tiledbitmaplayer.hh:38
Scroom::MemoryBlobs::Blob::Ptr data
Definition: tiledbitmaplayer.hh:121
boost::shared_ptr< CompressedTile > Ptr
Definition: tiledbitmaplayer.hh:108
int getHeight() const
Definition: tiledbitmaplayer.hh:276
static Ptr create(int depth, int layerWidth, int layerHeight, int bpp, Scroom::MemoryBlobs::PageProvider::Ptr provider)
Definition: layer.cc:98
Definition: tileviewstate.hh:22
Definition: presentationinterface.hh:32
boost::mutex tileData
Definition: tiledbitmaplayer.hh:123
std::vector< CompressedTile::Ptr > CompressedTileLine
Definition: tiledbitmaplayer.hh:237
@ TSI_LOADING_ASYNCHRONOUSLY
Definition: tiledbitmaplayer.hh:40
boost::weak_ptr< Queue > WeakPtr
Definition: threadpool.hh:83
const int y
Definition: tiledbitmaplayer.hh:113
Definition: bookkeeping.hh:37
Definition: tiledbitmaplayer.hh:49
boost::shared_ptr< TileViewState > getViewState(const ViewInterface::WeakPtr &vi)
Definition: compressedtile.cc:163
@ TSI_NORMAL
Definition: tiledbitmaplayer.hh:37
boost::shared_ptr< Viewable > Ptr
Definition: presentationinterface.hh:35
void reportFinished()
Definition: compressedtile.cc:116
ThreadPool::Queue::WeakPtr queue
Definition: tiledbitmaplayer.hh:125
virtual void tileLoaded(ConstTile::Ptr tile)=0
boost::weak_ptr< ConstTile > WeakPtr
Definition: tile.hh:48
Tile::Ptr initialize()
Definition: compressedtile.cc:90
boost::weak_ptr< Tile > WeakPtr
Definition: tile.hh:22
Layer(int depth, int layerWidth, int layerHeight, int bpp, Scroom::MemoryBlobs::PageProvider::Ptr provider)
Layer.
Definition: layer.cc:70
Scroom::Bookkeeping::Token registerStrongObserver(TileInitialisationObserver::Ptr const &observer)
Definition: tiledbitmaplayer.hh:169
Definition: tiledbitmaplayer.hh:80