blob: e490db6fe055aab8f6187f1fe1cbcba01b3a4a75 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#pragma once
#include <string>
namespace Donut
{
// How each channel is written:
// Png = display image (tone-mapped colour / false-coloured observable).
// Pfm = raw float image (actual physical values; RGB, Portable Float Map).
// Csv = raw scalar grid (the observable's value per pixel, one row per line).
enum class ExportFormat { Png, Pfm, Csv };
// What the Export workspace asks the RenderPath to write to disk: which
// observable channels to render, at what resolution, in what format, and where.
// Each enabled channel becomes one file.
struct ExportConfig
{
bool color = true; // colour image (tone-mapped, or linear HDR when raw)
bool redshift = false; // redshift factor g (disk only)
bool temperature = false; // emission temperature in K (disk only)
bool impact = false; // impact parameter in r_s (whole frame)
int width = 1920;
int height = 1080;
ExportFormat format = ExportFormat::Png;
std::string directory = "exports";
};
}
|