// Copyright (c) 2023 Alex Diener. All rights reserved.

#include "PROJECT_NAME/VisualEffect.h"

#define stemobject_implementation VisualEffect

stemobject_vtable_begin();
stemobject_vtable_entry(dispose);
stemobject_vtable_entry(update);
stemobject_vtable_entry(isFinished);
stemobject_vtable_entry(listRenderables);
stemobject_vtable_entry(writeVertices);
stemobject_vtable_end();

VisualEffect * VisualEffect_create(void) {
	stemobject_create_implementation(init)
}

bool VisualEffect_init(VisualEffect * self) {
	call_super(init, self);
	return true;
}

void VisualEffect_dispose(VisualEffect * self) {
	call_super_virtual(dispose, self);
}

void VisualEffect_update(VisualEffect * self, double deltaTime) {
}

bool VisualEffect_isFinished(VisualEffect * self) {
	return false;
}

void VisualEffect_listRenderables(VisualEffect * self, RenderableIO * renderableIO, int drawOrderOffset, Rect4i clipBounds) {
}

void VisualEffect_writeVertices(VisualEffect * self, Vector2f offset, VertexIO * vertexIO) {
}
