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:
m-aXimilian
2025-09-23 21:57:08 +02:00
committed by Maximilian Kueffner
parent 0be064bb8e
commit 235d00192a
34 changed files with 418 additions and 173 deletions
@@ -0,0 +1,35 @@
#pragma once
#include <memory>
#include "imaging/IPixelariumImage.hpp"
#include "imgui.h"
#include "rendering/CvMatRender.hpp"
#include "rendering/IPixelariumImageView.hpp"
namespace pixelarium::render
{
class PixelariumImageViewDefault : public IPixelariumImageView
{
using Image = imaging::IPixelariumImage;
using Render = render::CvMatRender;
public:
explicit PixelariumImageViewDefault(std::shared_ptr<Image> img)
{
img_ = img;
render_ = Render(img_);
}
PixelariumImageViewDefault() = delete;
PixelariumImageViewDefault(PixelariumImageViewDefault&) = delete;
PixelariumImageViewDefault(const PixelariumImageViewDefault&) = delete;
PixelariumImageViewDefault(PixelariumImageViewDefault&&) = delete;
PixelariumImageViewDefault& operator=(PixelariumImageViewDefault&) = delete;
PixelariumImageViewDefault& operator=(PixelariumImageViewDefault&&) = delete;
void ShowImage() override;
private:
ImVec2 curr_dim_{};
};
} // namespace pixelarium::render