27 lines
489 B
C++
27 lines
489 B
C++
#ifndef ARGS_HPP
|
|
#define ARGS_HPP
|
|
|
|
#include <filesystem>
|
|
#include <glm/glm.hpp>
|
|
#include <optional>
|
|
#include <string_view>
|
|
|
|
namespace rog::cli {
|
|
|
|
struct args {
|
|
std::filesystem::path scene_path;
|
|
|
|
glm::uvec2 extent = {512, 512};
|
|
std::uint32_t samples_per_pixel = 256;
|
|
|
|
std::optional<std::filesystem::path> blender_path;
|
|
|
|
bool help = false;
|
|
};
|
|
[[nodiscard]] args parse(int argc, char **argv);
|
|
|
|
[[nodiscard]] std::string_view help_message() noexcept;
|
|
} // namespace rog::cli
|
|
|
|
#endif
|