SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
afislide.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_afislide_HPP
5#define OPENCV_slideio_afislide_HPP
6
7#include "slideio/drivers/afi/afi_api_def.hpp"
8#include "slideio/core/cvscene.hpp"
9#include "slideio/core/cvslide.hpp"
10
11#if defined(_MSC_VER)
12#pragma warning( push )
13#pragma warning(disable: 4251)
14#endif
15
16namespace slideio
17{
18 class SLIDEIO_AFI_EXPORTS AFISlide : public slideio::CVSlide
19 {
20 protected:
21 AFISlide();
22 public:
23 using Scenes = std::vector<std::shared_ptr<slideio::CVScene>>;
24 using Slides = std::vector<std::shared_ptr<slideio::CVSlide>>;
25 using SlidesScenes = std::pair<Slides, Scenes>;
26 virtual ~AFISlide();
27 int getNumScenes() const override;
28 std::string getFilePath() const override;
29 std::shared_ptr<slideio::CVScene> getScene(int index) const override;
30 static std::shared_ptr<AFISlide> openFile(const std::string& path);
31 static std::vector<std::string> getFileList(std::string xmlString);
32 static SlidesScenes getSlidesScenesFromFiles(const std::vector<std::string>& files, std::string mainFile);
33 private:
34 Slides m_slides;
35 Scenes m_scenes;
36 std::string m_filePath;
37 };
38}
39
40#if defined(_MSC_VER)
41#pragma warning( pop )
42#endif
43
44#endif
CVSlide is an base class for representation of medical slide.
Definition: cvslide.hpp:28
Definition: exceptions.hpp:12