4#ifndef OPENCV_slideio_ndpiscene_HPP
5#define OPENCV_slideio_ndpiscene_HPP
7#include "ndpitifftools.hpp"
8#include "slideio/drivers/ndpi/ndpi_api_def.hpp"
9#include "slideio/core/cvscene.hpp"
10#include "slideio/core/tools/cachemanager.hpp"
11#include "slideio/core/tools/tilecomposer.hpp"
14#pragma warning( push )
15#pragma warning(disable: 4251)
25 class SLIDEIO_NDPI_EXPORTS NDPIScene :
public CVScene,
public Tiler
27 friend class NDPISlide;
32 void init(
const std::string& name, NDPIFile* file, int32_t startDirIndex, int32_t endDirIndex);
33 int getNumChannels()
const override;
34 cv::Rect getRect()
const override;
35 std::string getFilePath()
const override;
36 std::string getName()
const override {
39 slideio::DataType getChannelDataType(
int channel)
const override;
40 Resolution getResolution()
const override;
41 double getMagnification()
const override;
43 void readResampledBlockChannels(
const cv::Rect& imageBlockRect,
const cv::Size& requiredBlockSize,
const std::vector<int>& channelIndices,
44 cv::OutputArray output)
override;
45 const NDPITiffDirectory& findZoomDirectory(
const cv::Rect& imageBlockRect,
const cv::Size& requiredBlockSize)
const;
46 void scaleBlockToDirectory(
const cv::Rect& imageBlockRect,
const slideio::NDPITiffDirectory& dir, cv::Rect& dirBlockRect)
const;
47 int getTileCount(
void* userData)
override;
48 bool getTileRect(
int tileIndex, cv::Rect& tileRect,
void* userData)
override;
49 bool readTile(
int tileIndex,
const std::vector<int>& channelIndices, cv::OutputArray tileRaster,
50 void* userData)
override;
51 void initializeBlock(
const cv::Size& blockSize,
const std::vector<int>& channelIndices, cv::OutputArray output)
override;
53 void makeSureValidDirectoryType(NDPITiffDirectory::Type directoryType);
58 std::string m_sceneName;
Definition: exceptions.hpp:12
Compression
raster data compression enum
Definition: slideio_enums.hpp:12