Merge commit '4e94c925686cdda4b1ac777045dd7a17c7dc0329'
All checks were successful
Build / build (push) Successful in 1m38s
All checks were successful
Build / build (push) Successful in 1m38s
This commit is contained in:
commit
a2e41e6527
@ -1,6 +1,7 @@
|
|||||||
# module dir list
|
# module dir list
|
||||||
|
|
||||||
add_subdirectory(gfx)
|
add_subdirectory(gfx)
|
||||||
|
add_subdirectory(sound)
|
||||||
add_subdirectory(scene)
|
add_subdirectory(scene)
|
||||||
|
|
||||||
# module libraries
|
# module libraries
|
||||||
@ -13,7 +14,7 @@ add_library(
|
|||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaKeelModules PUBLIC
|
NostalgiaKeelModules PUBLIC
|
||||||
Keel
|
Keel
|
||||||
NostalgiaCore-Keel
|
NostalgiaGfx-Keel
|
||||||
NostalgiaScene-Keel
|
NostalgiaScene-Keel
|
||||||
)
|
)
|
||||||
install(
|
install(
|
||||||
@ -32,7 +33,8 @@ if(NOSTALGIA_BUILD_STUDIO)
|
|||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaStudioModules PUBLIC
|
NostalgiaStudioModules PUBLIC
|
||||||
StudioAppLib
|
StudioAppLib
|
||||||
NostalgiaCore-Studio-ImGui
|
NostalgiaGfx-Studio-ImGui
|
||||||
|
NostalgiaSound-Studio-ImGui
|
||||||
NostalgiaScene-Studio
|
NostalgiaScene-Studio
|
||||||
)
|
)
|
||||||
install(
|
install(
|
||||||
|
@ -449,7 +449,7 @@ TileSheet::SubSheet &getSubSheet(
|
|||||||
std::size_t idxIt,
|
std::size_t idxIt,
|
||||||
TileSheet::SubSheet &pSubsheet) noexcept;
|
TileSheet::SubSheet &pSubsheet) noexcept;
|
||||||
|
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
||||||
#endif
|
#endif
|
||||||
@ -458,7 +458,7 @@ TileSheet::SubSheet const&getSubSheet(TileSheet const&ts, ox::SpanView<uint32_t>
|
|||||||
|
|
||||||
[[nodiscard]]
|
[[nodiscard]]
|
||||||
TileSheet::SubSheet &getSubSheet(TileSheet &ts, ox::SpanView<uint32_t> const &idx) noexcept;
|
TileSheet::SubSheet &getSubSheet(TileSheet &ts, ox::SpanView<uint32_t> const &idx) noexcept;
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic pop
|
#pragma GCC diagnostic pop
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
add_library(
|
add_library(
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
gfx.cpp
|
gfx.cpp
|
||||||
tilesheet.cpp
|
tilesheet.cpp
|
||||||
)
|
)
|
||||||
@ -10,12 +10,12 @@ if(NOT BUILDCORE_TARGET STREQUAL "gba")
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
NostalgiaCore PUBLIC
|
NostalgiaGfx PUBLIC
|
||||||
../include
|
../include
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore PUBLIC
|
NostalgiaGfx PUBLIC
|
||||||
Turbine
|
Turbine
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ endif()
|
|||||||
|
|
||||||
install(
|
install(
|
||||||
TARGETS
|
TARGETS
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
DESTINATION
|
DESTINATION
|
||||||
LIBRARY DESTINATION lib
|
LIBRARY DESTINATION lib
|
||||||
ARCHIVE DESTINATION lib
|
ARCHIVE DESTINATION lib
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
add_library(
|
add_library(
|
||||||
NostalgiaCore-GBA OBJECT
|
NostalgiaGfx-GBA OBJECT
|
||||||
context.cpp
|
context.cpp
|
||||||
gfx.cpp
|
gfx.cpp
|
||||||
panic.cpp
|
panic.cpp
|
||||||
)
|
)
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
NostalgiaCore-GBA PUBLIC
|
NostalgiaGfx-GBA PUBLIC
|
||||||
../../include
|
../../include
|
||||||
)
|
)
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore-GBA PUBLIC
|
NostalgiaGfx-GBA PUBLIC
|
||||||
TeaGBA
|
TeaGBA
|
||||||
Keel
|
Keel
|
||||||
Turbine
|
Turbine
|
||||||
@ -17,5 +17,5 @@ target_link_libraries(
|
|||||||
|
|
||||||
if(BUILDCORE_TARGET STREQUAL "gba")
|
if(BUILDCORE_TARGET STREQUAL "gba")
|
||||||
set_source_files_properties(gfx.cpp PROPERTIES COMPILE_FLAGS -marm)
|
set_source_files_properties(gfx.cpp PROPERTIES COMPILE_FLAGS -marm)
|
||||||
target_link_libraries(NostalgiaCore PUBLIC NostalgiaCore-GBA)
|
target_link_libraries(NostalgiaGfx PUBLIC NostalgiaGfx-GBA)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,18 +1,18 @@
|
|||||||
add_library(
|
add_library(
|
||||||
NostalgiaCore-Keel
|
NostalgiaGfx-Keel
|
||||||
keelmodule.cpp
|
keelmodule.cpp
|
||||||
typeconv.cpp
|
typeconv.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore-Keel PUBLIC
|
NostalgiaGfx-Keel PUBLIC
|
||||||
Keel
|
Keel
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
)
|
)
|
||||||
|
|
||||||
install(
|
install(
|
||||||
TARGETS
|
TARGETS
|
||||||
NostalgiaCore-Keel
|
NostalgiaGfx-Keel
|
||||||
DESTINATION
|
DESTINATION
|
||||||
LIBRARY DESTINATION lib
|
LIBRARY DESTINATION lib
|
||||||
ARCHIVE DESTINATION lib
|
ARCHIVE DESTINATION lib
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore PRIVATE
|
NostalgiaGfx PRIVATE
|
||||||
context.cpp
|
context.cpp
|
||||||
gfx.cpp
|
gfx.cpp
|
||||||
)
|
)
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore PUBLIC
|
NostalgiaGfx PUBLIC
|
||||||
GlUtils
|
GlUtils
|
||||||
)
|
)
|
||||||
|
@ -1,25 +1,25 @@
|
|||||||
add_library(NostalgiaCore-Studio)
|
add_library(NostalgiaGfx-Studio)
|
||||||
|
|
||||||
add_library(
|
add_library(
|
||||||
NostalgiaCore-Studio-ImGui
|
NostalgiaGfx-Studio-ImGui
|
||||||
studiomodule.cpp
|
studiomodule.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore-Studio PUBLIC
|
NostalgiaGfx-Studio PUBLIC
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
Studio
|
Studio
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore-Studio-ImGui PUBLIC
|
NostalgiaGfx-Studio-ImGui PUBLIC
|
||||||
NostalgiaCore-Studio
|
NostalgiaGfx-Studio
|
||||||
)
|
)
|
||||||
|
|
||||||
install(
|
install(
|
||||||
TARGETS
|
TARGETS
|
||||||
NostalgiaCore-Studio-ImGui
|
NostalgiaGfx-Studio-ImGui
|
||||||
NostalgiaCore-Studio
|
NostalgiaGfx-Studio
|
||||||
LIBRARY DESTINATION
|
LIBRARY DESTINATION
|
||||||
${NOSTALGIA_DIST_MODULE}
|
${NOSTALGIA_DIST_MODULE}
|
||||||
)
|
)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore-Studio-ImGui PRIVATE
|
NostalgiaGfx-Studio-ImGui PRIVATE
|
||||||
paletteeditor-imgui.cpp
|
paletteeditor-imgui.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore-Studio PRIVATE
|
NostalgiaGfx-Studio PRIVATE
|
||||||
addcolorcommand.cpp
|
addcolorcommand.cpp
|
||||||
addpagecommand.cpp
|
addpagecommand.cpp
|
||||||
applycolorallpagescommand.cpp
|
applycolorallpagescommand.cpp
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore-Studio PRIVATE
|
NostalgiaGfx-Studio PRIVATE
|
||||||
tilesheeteditorview.cpp
|
tilesheeteditorview.cpp
|
||||||
tilesheeteditormodel.cpp
|
tilesheeteditormodel.cpp
|
||||||
tilesheetpixelgrid.cpp
|
tilesheetpixelgrid.cpp
|
||||||
@ -7,12 +7,12 @@ target_sources(
|
|||||||
)
|
)
|
||||||
|
|
||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore-Studio-ImGui PRIVATE
|
NostalgiaGfx-Studio-ImGui PRIVATE
|
||||||
tilesheeteditor-imgui.cpp
|
tilesheeteditor-imgui.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCore-Studio-ImGui PUBLIC
|
NostalgiaGfx-Studio-ImGui PUBLIC
|
||||||
lodepng
|
lodepng
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
target_sources(
|
target_sources(
|
||||||
NostalgiaCore-Studio PRIVATE
|
NostalgiaGfx-Studio PRIVATE
|
||||||
addsubsheetcommand.cpp
|
addsubsheetcommand.cpp
|
||||||
cutpastecommand.cpp
|
cutpastecommand.cpp
|
||||||
deletetilescommand.cpp
|
deletetilescommand.cpp
|
||||||
|
@ -18,14 +18,13 @@
|
|||||||
#include "commands/drawcommand.hpp"
|
#include "commands/drawcommand.hpp"
|
||||||
#include "commands/flipcommand.hpp"
|
#include "commands/flipcommand.hpp"
|
||||||
#include "commands/inserttilescommand.hpp"
|
#include "commands/inserttilescommand.hpp"
|
||||||
|
#include "commands/movesubsheetcommand.hpp"
|
||||||
#include "commands/palettechangecommand.hpp"
|
#include "commands/palettechangecommand.hpp"
|
||||||
#include "commands/rmsubsheetcommand.hpp"
|
#include "commands/rmsubsheetcommand.hpp"
|
||||||
|
#include "commands/rotatecommand.hpp"
|
||||||
#include "commands/updatesubsheetcommand.hpp"
|
#include "commands/updatesubsheetcommand.hpp"
|
||||||
#include "tilesheeteditormodel.hpp"
|
#include "tilesheeteditormodel.hpp"
|
||||||
|
|
||||||
#include "commands/movesubsheetcommand.hpp"
|
|
||||||
#include "commands/rotatecommand.hpp"
|
|
||||||
|
|
||||||
namespace nostalgia::gfx {
|
namespace nostalgia::gfx {
|
||||||
|
|
||||||
// delete pixels of all non-leaf nodes
|
// delete pixels of all non-leaf nodes
|
||||||
|
@ -187,7 +187,7 @@ TileSheet::SubSheetIdx validateSubSheetIdx(TileSheet const&ts, TileSheet::SubShe
|
|||||||
return validateSubSheetIdx(std::move(idx), 0, ts.subsheet);
|
return validateSubSheetIdx(std::move(idx), 0, ts.subsheet);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
||||||
#endif
|
#endif
|
||||||
@ -204,7 +204,7 @@ static TileSheet::SubSheet const&getSubSheet(
|
|||||||
}
|
}
|
||||||
return getSubSheet(idx, idxIt + 1, pSubsheet.subsheets[currentIdx]);
|
return getSubSheet(idx, idxIt + 1, pSubsheet.subsheets[currentIdx]);
|
||||||
}
|
}
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic pop
|
#pragma GCC diagnostic pop
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -218,7 +218,7 @@ TileSheet::SubSheet &getSubSheet(
|
|||||||
return getSubSheet(idx, idxIt + 1, pSubsheet.subsheets[idx[idxIt]]);
|
return getSubSheet(idx, idxIt + 1, pSubsheet.subsheets[idx[idxIt]]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
#pragma GCC diagnostic ignored "-Wdangling-reference"
|
||||||
#endif
|
#endif
|
||||||
@ -229,7 +229,7 @@ TileSheet::SubSheet const&getSubSheet(TileSheet const &ts, ox::SpanView<uint32_t
|
|||||||
TileSheet::SubSheet &getSubSheet(TileSheet &ts, ox::SpanView<uint32_t> const &idx) noexcept {
|
TileSheet::SubSheet &getSubSheet(TileSheet &ts, ox::SpanView<uint32_t> const &idx) noexcept {
|
||||||
return gfx::getSubSheet(idx, 0, ts.subsheet);
|
return gfx::getSubSheet(idx, 0, ts.subsheet);
|
||||||
}
|
}
|
||||||
#if defined(__GNUC__) && __GNUC__ >= 14
|
#if defined(__GNUC__) && __GNUC__ >= 13
|
||||||
#pragma GCC diagnostic pop
|
#pragma GCC diagnostic pop
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
add_executable(
|
add_executable(
|
||||||
NostalgiaCoreTest
|
NostalgiaGfxTest
|
||||||
tests.cpp
|
tests.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaCoreTest
|
NostalgiaGfxTest
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test("[NostalgiaCore] readWriteTileSheet" ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/NostalgiaCoreTest readWriteTileSheet)
|
add_test("[NostalgiaGfx] readWriteTileSheet" ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/NostalgiaGfxTest readWriteTileSheet)
|
||||||
|
@ -12,7 +12,7 @@ target_include_directories(
|
|||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
NostalgiaScene PUBLIC
|
NostalgiaScene PUBLIC
|
||||||
NostalgiaCore
|
NostalgiaGfx
|
||||||
)
|
)
|
||||||
|
|
||||||
add_subdirectory(keel)
|
add_subdirectory(keel)
|
||||||
|
12
src/nostalgia/modules/sound/CMakeLists.txt
Normal file
12
src/nostalgia/modules/sound/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
add_subdirectory(src)
|
||||||
|
|
||||||
|
if(NOT BUILDCORE_TARGET STREQUAL "gba")
|
||||||
|
add_subdirectory(test)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
install(
|
||||||
|
DIRECTORY
|
||||||
|
include/nostalgia
|
||||||
|
DESTINATION
|
||||||
|
include
|
||||||
|
)
|
@ -0,0 +1,8 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace nostalgia::sound {
|
||||||
|
}
|
27
src/nostalgia/modules/sound/src/CMakeLists.txt
Normal file
27
src/nostalgia/modules/sound/src/CMakeLists.txt
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
add_library(
|
||||||
|
NostalgiaSound
|
||||||
|
sound.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
target_include_directories(
|
||||||
|
NostalgiaSound PUBLIC
|
||||||
|
../include
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
NostalgiaSound PUBLIC
|
||||||
|
Turbine
|
||||||
|
)
|
||||||
|
|
||||||
|
add_subdirectory(keel)
|
||||||
|
if(NOSTALGIA_BUILD_STUDIO)
|
||||||
|
add_subdirectory(studio)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
install(
|
||||||
|
TARGETS
|
||||||
|
NostalgiaSound
|
||||||
|
DESTINATION
|
||||||
|
LIBRARY DESTINATION lib
|
||||||
|
ARCHIVE DESTINATION lib
|
||||||
|
)
|
19
src/nostalgia/modules/sound/src/keel/CMakeLists.txt
Normal file
19
src/nostalgia/modules/sound/src/keel/CMakeLists.txt
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
add_library(
|
||||||
|
NostalgiaSound-Keel
|
||||||
|
keelmodule.cpp
|
||||||
|
typeconv.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
NostalgiaSound-Keel PUBLIC
|
||||||
|
Keel
|
||||||
|
NostalgiaSound
|
||||||
|
)
|
||||||
|
|
||||||
|
install(
|
||||||
|
TARGETS
|
||||||
|
NostalgiaSound-Keel
|
||||||
|
DESTINATION
|
||||||
|
LIBRARY DESTINATION lib
|
||||||
|
ARCHIVE DESTINATION lib
|
||||||
|
)
|
46
src/nostalgia/modules/sound/src/keel/keelmodule.cpp
Normal file
46
src/nostalgia/modules/sound/src/keel/keelmodule.cpp
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <ox/model/model.hpp>
|
||||||
|
|
||||||
|
#include <keel/module.hpp>
|
||||||
|
|
||||||
|
#include "typeconv.hpp"
|
||||||
|
|
||||||
|
namespace nostalgia::sound {
|
||||||
|
|
||||||
|
static class: public keel::Module {
|
||||||
|
private:
|
||||||
|
|
||||||
|
public:
|
||||||
|
[[nodiscard]]
|
||||||
|
ox::String id() const noexcept override {
|
||||||
|
return ox::String{"net.drinkingtea.nostalgia.sound"};
|
||||||
|
}
|
||||||
|
|
||||||
|
[[nodiscard]]
|
||||||
|
ox::Vector<keel::TypeDescGenerator> types() const noexcept final {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
[[nodiscard]]
|
||||||
|
ox::Vector<keel::BaseConverter const*> converters() const noexcept final {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
[[nodiscard]]
|
||||||
|
ox::Vector<keel::PackTransform> packTransforms() const noexcept final {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
} const mod;
|
||||||
|
|
||||||
|
keel::Module const*keelModule() noexcept {
|
||||||
|
return &mod;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
9
src/nostalgia/modules/sound/src/keel/typeconv.cpp
Normal file
9
src/nostalgia/modules/sound/src/keel/typeconv.cpp
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "typeconv.hpp"
|
||||||
|
|
||||||
|
namespace nostalgia::sound {
|
||||||
|
|
||||||
|
}
|
15
src/nostalgia/modules/sound/src/keel/typeconv.hpp
Normal file
15
src/nostalgia/modules/sound/src/keel/typeconv.hpp
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <ox/std/def.hpp>
|
||||||
|
|
||||||
|
#include <keel/typeconv.hpp>
|
||||||
|
|
||||||
|
namespace nostalgia::sound {
|
||||||
|
|
||||||
|
// Type converters
|
||||||
|
|
||||||
|
}
|
6
src/nostalgia/modules/sound/src/sound.cpp
Normal file
6
src/nostalgia/modules/sound/src/sound.cpp
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace nostalgia::sound {
|
||||||
|
}
|
17
src/nostalgia/modules/sound/src/studio/CMakeLists.txt
Normal file
17
src/nostalgia/modules/sound/src/studio/CMakeLists.txt
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
add_library(
|
||||||
|
NostalgiaSound-Studio-ImGui
|
||||||
|
studiomodule.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
NostalgiaSound-Studio-ImGui PUBLIC
|
||||||
|
NostalgiaSound
|
||||||
|
Studio
|
||||||
|
)
|
||||||
|
|
||||||
|
install(
|
||||||
|
TARGETS
|
||||||
|
NostalgiaSound-Studio-ImGui
|
||||||
|
LIBRARY DESTINATION
|
||||||
|
${NOSTALGIA_DIST_MODULE}
|
||||||
|
)
|
27
src/nostalgia/modules/sound/src/studio/studiomodule.cpp
Normal file
27
src/nostalgia/modules/sound/src/studio/studiomodule.cpp
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <ox/std/memory.hpp>
|
||||||
|
|
||||||
|
#include <studio/studio.hpp>
|
||||||
|
|
||||||
|
namespace nostalgia::gfx {
|
||||||
|
|
||||||
|
static class: public studio::Module {
|
||||||
|
ox::Vector<studio::EditorMaker> editors(studio::StudioContext&) const noexcept final {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
ox::Vector<ox::UPtr<studio::ItemMaker>> itemMakers(studio::StudioContext&) const noexcept final {
|
||||||
|
ox::Vector<ox::UniquePtr<studio::ItemMaker>> out;
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
} const mod;
|
||||||
|
|
||||||
|
const studio::Module *studioModule() noexcept {
|
||||||
|
return &mod;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
10
src/nostalgia/modules/sound/test/CMakeLists.txt
Normal file
10
src/nostalgia/modules/sound/test/CMakeLists.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
add_executable(
|
||||||
|
NostalgiaSoundTest
|
||||||
|
tests.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
NostalgiaSoundTest
|
||||||
|
NostalgiaSound
|
||||||
|
)
|
||||||
|
|
26
src/nostalgia/modules/sound/test/tests.cpp
Normal file
26
src/nostalgia/modules/sound/test/tests.cpp
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#undef NDEBUG
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
#include <ox/std/error.hpp>
|
||||||
|
#include <ox/mc/mc.hpp>
|
||||||
|
|
||||||
|
static std::map<ox::StringView, ox::Error(*)()> tests = {
|
||||||
|
};
|
||||||
|
|
||||||
|
int main(int argc, const char **argv) {
|
||||||
|
int retval = -1;
|
||||||
|
if (argc > 0) {
|
||||||
|
auto const args = ox::Span{argv, static_cast<size_t>(argc)};
|
||||||
|
auto const testName = ox::StringView(args[1]);
|
||||||
|
if (tests.find(testName) != tests.end()) {
|
||||||
|
retval = static_cast<int>(tests[testName]());
|
||||||
|
} else {
|
||||||
|
retval = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return retval;
|
||||||
|
}
|
@ -147,9 +147,8 @@ static void sceneKeyEventHandler(turbine::Context &tctx, turbine::Key key, bool
|
|||||||
|
|
||||||
[[maybe_unused]]
|
[[maybe_unused]]
|
||||||
static ox::Error runScene(turbine::Context &tctx) {
|
static ox::Error runScene(turbine::Context &tctx) {
|
||||||
constexpr ox::StringView SceneAddr{"/Scenes/Chester.nscn"};
|
|
||||||
OX_REQUIRE_M(cctx, gfx::init(tctx));
|
OX_REQUIRE_M(cctx, gfx::init(tctx));
|
||||||
OX_REQUIRE(scn, keel::readObj<scene::SceneStatic>(keelCtx(tctx), SceneAddr));
|
OX_REQUIRE(scn, keel::readObj<scene::SceneStatic>(keelCtx(tctx), "/Scenes/Chester.nscn"));
|
||||||
turbine::setUpdateHandler(tctx, sceneUpdateHandler);
|
turbine::setUpdateHandler(tctx, sceneUpdateHandler);
|
||||||
turbine::setKeyEventHandler(tctx, sceneKeyEventHandler);
|
turbine::setKeyEventHandler(tctx, sceneKeyEventHandler);
|
||||||
scene::Scene const scene(*scn);
|
scene::Scene const scene(*scn);
|
||||||
@ -163,7 +162,7 @@ ox::Error run(
|
|||||||
[[maybe_unused]] ox::StringView projectDataDir,
|
[[maybe_unused]] ox::StringView projectDataDir,
|
||||||
ox::SpanView<char const*> args) noexcept {
|
ox::SpanView<char const*> args) noexcept {
|
||||||
if (args.size() < 2) {
|
if (args.size() < 2) {
|
||||||
return ox::Error(1, "Please provide path to project directory or OxFS file.");
|
return ox::Error{1, "Please provide path to project directory or OxFS file."};
|
||||||
}
|
}
|
||||||
auto const path = args[1];
|
auto const path = args[1];
|
||||||
OX_REQUIRE_M(fs, keel::loadRomFs(path));
|
OX_REQUIRE_M(fs, keel::loadRomFs(path));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user