Misc (#19)
* get image returns optional<Mat> instead of unique_ptr<Mat> * introduce complexity * rename image load function * add example for a basic reader for binary image files * fix windows build? * add a status bar underneath the menu bar * use status bar in custom_0 example app * clang formats * packing w/ pragma push * add "Save As" functions to image views * resize over reserve * rm local override uri * add simple thread pool * rename to simple_thread_pool * get rid of useless renderlib * document version inc * extract hardcoded values to in-header * clang format patch * clone registered image in custom_0 * document binary-file header * minor fixes * clang format * rm unused render cmake
This commit is contained in:
committed by
Maximilian Kueffner
parent
e3e161ce52
commit
b37814204f
@@ -2,20 +2,21 @@
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include "imaging/IPixelariumImage.hpp"
|
||||
#include "resources/resource.hpp"
|
||||
|
||||
namespace
|
||||
{
|
||||
|
||||
// A Mock implementation for tests requiring _any_ instance of a IPixelariumImage
|
||||
class DummyImage : public pixelarium::imaging::IPixelariumImage
|
||||
class DummyImage : public pixelarium::imaging::IPixelariumImageCvMat
|
||||
{
|
||||
public:
|
||||
std::unique_ptr<cv::Mat> TryGetImage() override { return {}; }
|
||||
std::optional<cv::Mat> TryGetImage() override { return {}; }
|
||||
|
||||
std::unique_ptr<cv::Mat> TryGetImage(const pixelarium::imaging::IImageQuery&) override { return {}; }
|
||||
std::optional<cv::Mat> TryGetImage(const pixelarium::imaging::IImageQuery&) override { return {}; }
|
||||
|
||||
std::vector<std::unique_ptr<cv::Mat>> TryGetImages(const pixelarium::imaging::IImageQuery&) override { return {}; }
|
||||
std::vector<std::optional<cv::Mat>> TryGetImages(const pixelarium::imaging::IImageQuery&) override { return {}; }
|
||||
|
||||
std::string Name() const noexcept override { return {}; }
|
||||
|
||||
@@ -43,7 +44,7 @@ TEST(ImageResourcePoolTest, SetWrappedRawPointerGet)
|
||||
{
|
||||
ImageResourcePool pool;
|
||||
auto img = new DummyImage();
|
||||
auto id = pool.SetResource(std::unique_ptr<pixelarium::imaging::IPixelariumImage>(img));
|
||||
auto id = pool.SetResource(std::unique_ptr<pixelarium::imaging::IPixelariumImageCvMat>(img));
|
||||
auto res = pool.GetResource(id);
|
||||
auto res_img = res.lock();
|
||||
EXPECT_NE(res_img, nullptr);
|
||||
@@ -95,7 +96,7 @@ TEST(ImageResourcePoolTest, EnumerateResources)
|
||||
auto id2 = pool.SetResource(std::make_unique<DummyImage>());
|
||||
std::vector<size_t> found_ids{};
|
||||
|
||||
pool.EnumerateResources([&found_ids](size_t id, size_t, const pixelarium::imaging::IPixelariumImage&)
|
||||
pool.EnumerateResources([&found_ids](size_t id, size_t, const pixelarium::imaging::IPixelariumImage<cv::Mat>&)
|
||||
{ found_ids.push_back(id); });
|
||||
|
||||
EXPECT_EQ(found_ids.size(), 2);
|
||||
@@ -110,7 +111,7 @@ TEST(ImageResourcePoolTest, TemplatedEnumerate)
|
||||
auto id2 = pool.SetResource(std::make_unique<DummyImage>());
|
||||
std::vector<size_t> found_ids{};
|
||||
|
||||
pool.Enumerate([&found_ids](size_t id, size_t, const pixelarium::imaging::IPixelariumImage&)
|
||||
pool.Enumerate([&found_ids](size_t id, size_t, const pixelarium::imaging::IPixelariumImage<cv::Mat>&)
|
||||
{ found_ids.push_back(id); });
|
||||
|
||||
EXPECT_EQ(found_ids.size(), 2);
|
||||
|
||||
Reference in New Issue
Block a user