SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
slide.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#pragma once
5
6#include "slideio/slideio/slideio_def.hpp"
7#include <string>
8#include <memory>
9#include <list>
10#include "scene.hpp"
11
12#if defined(_MSC_VER)
13#pragma warning( push )
14#pragma warning(disable: 4251)
15#endif
16
17
18namespace slideio
19{
20 class CVSlide;
28 class SLIDEIO_EXPORTS Slide
29 {
30 friend SLIDEIO_EXPORTS std::shared_ptr<Slide> openSlide(const std::string& path, const std::string& driver);
31 private:
34 Slide(std::shared_ptr<CVSlide> slide);
35 public:
36 virtual ~Slide();
38 int getNumScenes() const;
40 std::string getFilePath() const;
42 std::shared_ptr<Scene> getScene(int index) const;
47 const std::string& getRawMetadata() const;
51 const std::list<std::string>& getAuxImageNames() const;
53 virtual int getNumAuxImages() const;
58 virtual std::shared_ptr<Scene> getAuxImage(const std::string& sceneName) const;
59 private:
60 std::shared_ptr<CVSlide> m_slide;
61 };
62}
63
64#define SlidePtr std::shared_ptr<slideio::Slide>
65
66#if defined(_MSC_VER)
67#pragma warning( pop )
68#endif
Slide class is an interface for accessing the information on a medical slide.
Definition: slide.hpp:29
friend SLIDEIO_EXPORTS std::shared_ptr< Slide > openSlide(const std::string &path, const std::string &driver)
The function returns a smart pointer to an object of Slide class.
Definition: exceptions.hpp:12