6#include "slideio/drivers/dcm/dcm_api_def.hpp"
7#include "slideio/core/cvscene.hpp"
8#include "slideio/core/tools/tilecomposer.hpp"
9#include "slideio/drivers/dcm/dcmfile.hpp"
13#pragma warning( push )
14#pragma warning(disable: 4251)
21 class SLIDEIO_DCM_EXPORTS WSIScene :
public CVScene,
public Tiler
26 int zoomLevelIndex = 0;
29 double relativeZoom = 1.;
33 void addFile(std::shared_ptr<DCMFile>& file);
34 void init(
const std::string& slideFilePath,
int sceneIndex,
const std::string& driverId);
35 std::string getFilePath()
const override;
36 int getSceneIndex()
const override {
39 const std::string& getDriverId()
const override {
42 std::string getName()
const override;
43 cv::Rect getRect()
const override;
44 int getNumChannels()
const override;
45 slideio::DataType getChannelDataType(
int channel)
const override;
46 Resolution getResolution()
const override;
47 double getMagnification()
const override;
50 std::shared_ptr<DCMFile> getBaseFile()
const;
53 int getTileCount(
void* userData)
override;
54 bool getTileRect(
int tileIndex, cv::Rect& tileRect,
void* userData)
override;
55 bool readTile(
int tileIndex,
const std::vector<int>& channelIndices, cv::OutputArray tileRaster,
56 void* userData)
override;
57 void initializeBlock(
const cv::Size& blockSize,
const std::vector<int>& channelIndices,
58 cv::OutputArray output)
override;
59 void readResampledBlockChannelsEx(
const cv::Rect& blockRect,
const cv::Size& blockSize,
60 const std::vector<int>& componentIndices,
int zSliceIndex,
int tFrameIndex,
61 cv::OutputArray output)
override;
62 std::shared_ptr<CVScene> getAuxImage(
const std::string& imageName)
const override;
65 std::vector<std::shared_ptr<DCMFile>> m_files;
66 cv::Rect m_rect = { 0, 0, 0, 0 };
70 int m_numChannels = 0;
71 std::string m_filePath;
72 DataType m_dataType = DataType::DT_Unknown;
74 double m_magnification = 0;
75 Resolution m_resolution = { 0, 0 };
76 std::map<std::string, std::shared_ptr<DCMScene>> m_auxImages;
78 std::string m_driverId;
Definition: exceptions.hpp:15
Compression
raster data compression enum
Definition: slideio_enums.hpp:12