Misc Improvements (#7)
* get rid of optional<ptr> -> double indirection * more optional cleanup * fix * add more render pixel type options * towards different views * missing virtual declaration of ShowImage * fix runtime * init image view factory * fix build Render Image close button re-enable add readme init documentation use awesomeDoxygen ci build docs install doxygen id token permission add pages write permission
This commit is contained in:
committed by
Maximilian Kueffner
parent
0be064bb8e
commit
235d00192a
@@ -4,7 +4,6 @@
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <opencv2/core/mat.hpp>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
|
||||
namespace pixelarium::imaging
|
||||
@@ -35,15 +34,27 @@ class IPixelariumImage
|
||||
virtual ~IPixelariumImage() = default;
|
||||
|
||||
// this will have to throw or something for multidimensional images
|
||||
virtual std::optional<std::unique_ptr<cv::Mat>> TryGetImage() = 0;
|
||||
virtual std::unique_ptr<cv::Mat> TryGetImage() = 0;
|
||||
|
||||
virtual std::optional<std::unique_ptr<cv::Mat>> TryGetImage(const IImageQuery&) = 0;
|
||||
virtual std::unique_ptr<cv::Mat> TryGetImage(const IImageQuery&) = 0;
|
||||
|
||||
virtual std::string Name() const noexcept = 0;
|
||||
virtual std::vector<std::unique_ptr<cv::Mat>> TryGetImages(const IImageQuery&) = 0;
|
||||
|
||||
virtual bool Empty() const noexcept = 0;
|
||||
|
||||
virtual std::filesystem::path Uri() const noexcept = 0;
|
||||
// default implemented
|
||||
public:
|
||||
virtual std::filesystem::path Uri() const noexcept { return this->uri_; }
|
||||
|
||||
virtual std::string Name() const noexcept
|
||||
{
|
||||
if (!this->uri_.empty())
|
||||
{
|
||||
return this->uri_.filename().string();
|
||||
}
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
public:
|
||||
const static ImageFileType type_{ImageFileType::ABSTRACT};
|
||||
|
||||
Reference in New Issue
Block a user