#ifndef DUST3D_APPLICATION_MESH_PREVIEW_IMAGES_GENERATOR_H_ #define DUST3D_APPLICATION_MESH_PREVIEW_IMAGES_GENERATOR_H_ #include #include #include #include #include #include "model_offscreen_render.h" class MeshPreviewImagesGenerator : public QObject { Q_OBJECT public: MeshPreviewImagesGenerator(ModelOffscreenRender *modelOffscreenRender) : m_offscreenRender(modelOffscreenRender) { } struct PreviewInput { std::unique_ptr mesh; bool useFrontView = false; }; ~MeshPreviewImagesGenerator() { delete m_offscreenRender; } void addInput(const dust3d::Uuid &inputId, std::unique_ptr previewMesh, bool useFrontView=false); void generate(); std::map *takeImages(); signals: void finished(); public slots: void process(); private: std::map m_previewInputMap; ModelOffscreenRender *m_offscreenRender = nullptr; std::unique_ptr> m_partImages; }; #endif