mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-10-18 00:59:18 +02:00
Every module unit now includes the standard headers it uses. Declarations reaching a unit only through an imported module's global module fragment are reachable but not visible, so ADL misses the free operators older libstdc++ declares beside a type - reproduced on ubuntu 24.04 (libstdc++ 13), where gl/vao.cpp could not compare vector iterators. Also drops a stale editor/editorSettings.hpp from the MSVC source list, which broke the Windows configure step, silences the deliberate include-in-purview warning in the glm wrapper, and removes GCC support: clang or MSVC only.
35 lines
641 B
C++
35 lines
641 B
C++
module;
|
|
#include <string>
|
|
#include <vector>
|
|
#include <memory>
|
|
|
|
export module eu07.gl.postfx;
|
|
import eu07.gl.shader;
|
|
import eu07.gl.vao;
|
|
import eu07.gl.framebuffer;
|
|
import eu07.model.texture;
|
|
|
|
export {
|
|
|
|
|
|
namespace gl
|
|
{
|
|
class postfx
|
|
{
|
|
private:
|
|
gl::program program;
|
|
static std::shared_ptr<gl::shader> vertex;
|
|
static std::shared_ptr<gl::vao> vao;
|
|
|
|
public:
|
|
postfx(const std::string &s);
|
|
postfx(const shader &s);
|
|
|
|
void attach();
|
|
void apply(opengl_texture &src, framebuffer *dst);
|
|
void apply(std::vector<opengl_texture*> src, framebuffer *dst);
|
|
};
|
|
}
|
|
|
|
} // export
|