SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
ndpislide.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_ndpislide_HPP
5#define OPENCV_slideio_ndpislide_HPP
6
7#include "slideio/drivers/ndpi/ndpi_api_def.hpp"
8#include "slideio/core/cvscene.hpp"
9#include "slideio/core/cvslide.hpp"
10#include "slideio/imagetools/libtiff.hpp"
11#include <map>
12#include <memory>
13
14#if defined(_MSC_VER)
15#pragma warning( push )
16#pragma warning(disable: 4251)
17#endif
18
19namespace slideio
20{
21 class NDPIFile;
22}
23
24
25namespace slideio
26{
27 class SLIDEIO_NDPI_EXPORTS NDPISlide : public slideio::CVSlide
28 {
29 friend class NDPIImageDriver;
30 protected:
31 NDPISlide();
32 void constructScenes();
33 void init(const std::string& filePath);
34 public:
35 virtual ~NDPISlide();
36 int getNumScenes() const override;
37 std::string getFilePath() const override;
38 std::shared_ptr<slideio::CVScene> getScene(int index) const override;
39 std::shared_ptr<CVScene> getAuxImage(const std::string& sceneName) const override;
40 private:
41 void log();
42 private:
43 std::vector<std::shared_ptr<slideio::CVScene>> m_Scenes;
44 std::map<std::string, std::shared_ptr<slideio::CVScene>> m_auxImages;
45 std::string m_filePath;
46 NDPIFile* m_pfile;
47 };
48}
49
50
51#if defined(_MSC_VER)
52#pragma warning( pop )
53#endif
54
55#endif
CVSlide is an base class for representation of medical slide.
Definition: cvslide.hpp:28
Definition: exceptions.hpp:12