Files
SimpleRayTracing/native/header/Window.h
Misaki f1d3dddb9a Change project structure;
Added new c# binding;
2025-12-30 20:54:05 +09:00

28 lines
795 B
C

#ifndef WINDOW_H
#define WINDOW_H
#include "Common.h"
#include "Rendering/Renderer.h"
#include <stdint.h>
#include <windows.h>
#define WM_USER_TILE_DONE (WM_USER + 1)
// TODO: This is just a temporary solution. We may move to C# Windows SDK for easier GUI handling in the future.
static HWND hwnd;
static HANDLE render_thread;
static HDC hdc_mem;
static HBITMAP bitmap;
static BITMAPINFO bitmap_info;
static int window_width;
static int window_height;
static unsigned char* pixel_buffer;
bool window_create(const char* title, HINSTANCE hInst, int width, int height, render_job_t* render_job);
void window_update_pixel(vec4s color, int pixel_x, int pixel_y);
void window_refresh_region(int pixel_x, int pixel_y, int region_width, int region_height);
void window_close();
#endif // WINDOW_H