SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
svsscene.hpp
1// This file is part of slideio project.
2// It is subject to the license terms in the LICENSE file found in the top-level directory
3// of this distribution and at http://slideio.com/license.html.
4#ifndef OPENCV_slideio_svsscene_HPP
5#define OPENCV_slideio_svsscene_HPP
6
7#include "slideio/drivers/svs/svs_api_def.hpp"
8#include "slideio/core/cvscene.hpp"
9#include "slideio/imagetools/tiffkeeper.hpp"
10#include "slideio/imagetools/tifftools.hpp"
11
12#if defined(_MSC_VER)
13#pragma warning( push )
14#pragma warning(disable: 4251)
15#endif
16
17namespace slideio
18{
19 class SLIDEIO_SVS_EXPORTS SVSScene : public CVScene
20 {
21 public:
28 SVSScene(const std::string& filePath, const std::string& name);
29 SVSScene(const std::string& filePath, libtiff::TIFF* hFile, const std::string& name);
30
31 virtual ~SVSScene();
32 void makeSureFileIsOpened();
33
34 std::string getFilePath() const override {
35 return m_filePath;
36 }
37 std::string getName() const override {
38 return m_name;
39 }
40 Compression getCompression() const override{
41 return m_compression;
42 }
43 slideio::Resolution getResolution() const override{
44 return m_resolution;
45 }
46 double getMagnification() const override{
47 return m_magnification;
48 }
49 DataType getChannelDataType(int) const override{
50 return m_dataType;
51 }
52 libtiff::TIFF* getFileHandle();
53
54 protected:
55 std::string m_filePath;
56 std::string m_name;
57 Compression m_compression;
58 Resolution m_resolution;
59 double m_magnification;
60 slideio::DataType m_dataType;
61 private:
62 TIFFKeeper m_tiffKeeper;
63 };
64}
65
66#if defined(_MSC_VER)
67#pragma warning( pop )
68#endif
69
70#endif
Definition: exceptions.hpp:12
Compression
raster data compression enum
Definition: slideio_enums.hpp:12