SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
pkeslide.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#include "slideio/drivers/pke/pke_api_def.hpp"
5#include "slideio/core/cvscene.hpp"
6#include "slideio/core/cvslide.hpp"
7#include "slideio/imagetools/libtiff.hpp"
8#include <map>
9
10#if defined(_MSC_VER)
11#pragma warning( push )
12#pragma warning(disable: 4251)
13#endif
14
15namespace slideio
16{
17 class PKESlide;
18}
19
20//std::ostream& operator << (std::ostream& os, const slideio::PKESlide& slide);
21
22namespace slideio
23{
24 class SLIDEIO_PKE_EXPORTS PKESlide : public slideio::CVSlide
25 {
26 protected:
27 PKESlide();
28 public:
29 virtual ~PKESlide();
30 int getNumScenes() const override;
31 std::string getFilePath() const override;
32 std::shared_ptr<slideio::CVScene> getScene(int index) const override;
33 static std::shared_ptr<PKESlide> openFile(const std::string& path);
34 static void closeFile(libtiff::TIFF* hfile);
35 std::shared_ptr<CVScene> getAuxImage(const std::string& sceneName) const override;
36 void log();
37 private:
38 std::vector<std::shared_ptr<slideio::CVScene>> m_Scenes;
39 std::map<std::string, std::shared_ptr<slideio::CVScene>> m_auxImages;
40 std::string m_filePath;
41 };
42}
43
44
45#if defined(_MSC_VER)
46#pragma warning( pop )
47#endif
CVSlide is an base class for representation of medical slide.
Definition: cvslide.hpp:28
Definition: exceptions.hpp:12