transformers: allow modifying renderdata pre-pass
This commit is contained in:
parent
a61eb7694d
commit
95db9108e5
3 changed files with 18 additions and 2 deletions
|
|
@ -2,12 +2,19 @@
|
|||
|
||||
#include "Framebuffer.hpp"
|
||||
|
||||
struct SRenderData;
|
||||
|
||||
// A window transformer can be attached to a window.
|
||||
// If any is attached, Hyprland will render the window to a separate fb, then call the transform() func with it,
|
||||
// and finally render it back to the main fb after all transformers pass.
|
||||
//
|
||||
// Worth noting transformers for now only affect the main pass (not popups)
|
||||
class IWindowTransformer {
|
||||
public:
|
||||
// called by Hyprland. For more data about what is being rendered, inspect render data.
|
||||
// returns the out fb.
|
||||
virtual CFramebuffer* transform(CFramebuffer* in) = 0;
|
||||
|
||||
// called by Hyprland before a window main pass is started.
|
||||
virtual void preWindowRender(SRenderData* pRenderData);
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue