From f03f8fd0afa7bb97c64f8bec9de60617e16f7243 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 5 Nov 2023 01:04:35 +0100 Subject: a --- wall-tileset-tool/CMakeLists.txt | 2 +- wall-tileset-tool/main.cpp | 54 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) diff --git a/wall-tileset-tool/CMakeLists.txt b/wall-tileset-tool/CMakeLists.txt index 525696fd..28f62254 100644 --- a/wall-tileset-tool/CMakeLists.txt +++ b/wall-tileset-tool/CMakeLists.txt @@ -3,7 +3,7 @@ if(OpenCV_FOUND) set(self "floormat-wall-tileset-tool") include_directories(SYSTEM "${OpenCV_INCLUDE_DIRS}") - link_libraries(Corrade::Utility Magnum::Magnum) + link_libraries(Corrade::Containers Corrade::Utility Magnum::Magnum Magnum::GL fmt::fmt) link_libraries(opencv_imgproc opencv_imgcodecs opencv_core) link_libraries(nlohmann_json::nlohmann_json) diff --git a/wall-tileset-tool/main.cpp b/wall-tileset-tool/main.cpp index eac6a6a7..727b16c2 100644 --- a/wall-tileset-tool/main.cpp +++ b/wall-tileset-tool/main.cpp @@ -1,6 +1,60 @@ +#include "compat/assert.hpp" +#include "compat/sysexits.hpp" +#include "compat/fix-argv0.hpp" +#include "src/wall-atlas.hpp" +#include "loader/loader.hpp" +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include + +namespace floormat { + +using Corrade::Utility::Arguments; +using namespace std::string_literals; + +namespace { + +struct options +{ + String input_dir, input_file, output_dir; +}; + +Triple parse_cmdline(int argc, const char* const* argv) noexcept +{ + Corrade::Utility::Arguments args{}; + args.addOption('o', "output"s).setHelp("output"s, ""s, "DIR"s); + args.addArgument("input"s); + args.parse(argc, argv); + options opts; + //Path::exists(args.value()); + + return { std::move(opts), std::move(args), false }; +} + +[[nodiscard]] static int usage(const Arguments& args) noexcept +{ + Error{Error::Flag::NoNewlineAtTheEnd} << args.usage(); + return EX_USAGE; +} + +} // namespace + +} // namespace floormat + +using namespace floormat; int main(int argc, char** argv) { + argv[0] = fix_argv0(argv[0]); + auto [opts, args, opts_ok] = parse_cmdline(argc, argv); + return 0; } -- cgit v1.2.3