diff --git a/ExampleAnalysis/CMakeLists.txt b/ExampleAnalysis/CMakeLists.txt index 8522f03..9f443a4 100644 --- a/ExampleAnalysis/CMakeLists.txt +++ b/ExampleAnalysis/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleAnalysis Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleAnalysisPlugin") +PROJECT("ExampleAnalysisPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -42,7 +42,7 @@ set(PLUGIN_SOURCES src/ExampleAnalysisPlugin.cpp src/SettingsAction.h src/SettingsAction.cpp - src/ExampleAnalysisPlugin.json + PluginInfo.json ) source_group(Plugin FILES ${PLUGIN_SOURCES}) @@ -99,11 +99,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleAnalysis/PluginInfo.json b/ExampleAnalysis/PluginInfo.json new file mode 100644 index 0000000..8b0dce3 --- /dev/null +++ b/ExampleAnalysis/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example Analysis", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Analysis", + "dependencies" : ["Points"] +} diff --git a/ExampleAnalysis/src/ExampleAnalysisPlugin.h b/ExampleAnalysis/src/ExampleAnalysisPlugin.h index d024f87..766cd72 100644 --- a/ExampleAnalysis/src/ExampleAnalysisPlugin.h +++ b/ExampleAnalysis/src/ExampleAnalysisPlugin.h @@ -150,7 +150,7 @@ class ExampleAnalysisPluginFactory : public AnalysisPluginFactory Q_INTERFACES(mv::plugin::AnalysisPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleAnalysisPlugin" - FILE "ExampleAnalysisPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleAnalysis/src/ExampleAnalysisPlugin.json b/ExampleAnalysis/src/ExampleAnalysisPlugin.json deleted file mode 100644 index c86b9e0..0000000 --- a/ExampleAnalysis/src/ExampleAnalysisPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example Analysis", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleData/CMakeLists.txt b/ExampleData/CMakeLists.txt index 89a30e2..14eef19 100644 --- a/ExampleData/CMakeLists.txt +++ b/ExampleData/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleData Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleDataPlugin") +PROJECT("ExampleDataPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options and Setup @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # Include cmake tools include(GenerateExportHeader) @@ -43,7 +43,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleDataPlugin.h src/ExampleDataPlugin.cpp - src/ExampleDataPlugin.json + PluginInfo.json ) set(PLUGIN_HEADERS @@ -120,11 +120,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleData/PluginInfo.json b/ExampleData/PluginInfo.json new file mode 100644 index 0000000..767e105 --- /dev/null +++ b/ExampleData/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example Data", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Data", + "dependencies" : [] +} diff --git a/ExampleData/src/ExampleDataPlugin.h b/ExampleData/src/ExampleDataPlugin.h index 540666b..78b040a 100644 --- a/ExampleData/src/ExampleDataPlugin.h +++ b/ExampleData/src/ExampleDataPlugin.h @@ -110,7 +110,7 @@ class ExampleDataPluginFactory : public RawDataFactory Q_INTERFACES(mv::plugin::RawDataFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleDataPlugin" - FILE "ExampleDataPlugin.json") + FILE "PluginInfo.json") public: ExampleDataPluginFactory(); diff --git a/ExampleData/src/ExampleDataPlugin.json b/ExampleData/src/ExampleDataPlugin.json deleted file mode 100644 index 72ee74b..0000000 --- a/ExampleData/src/ExampleDataPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example Data", - "version" : "1.4", - "dependencies" : [] -} diff --git a/ExampleDependencies/CMakeLists.txt b/ExampleDependencies/CMakeLists.txt index cb65e7e..bfb865c 100644 --- a/ExampleDependencies/CMakeLists.txt +++ b/ExampleDependencies/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleAnalysis Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleDependenciesPlugin") +PROJECT("ExampleDependenciesPlugin" LANGUAGES CXX C) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() include(cmake/get_cpm.cmake) @@ -40,7 +40,7 @@ CPMAddPackage( OPTIONS "HWY_ENABLE_EXAMPLES OFF" "HWY_ENABLE_INSTALL OFF" "HWY_ENABLE_TESTS OFF" "HWY_ENABLE_CONTRIB ON" "BUILD_SHARED_LIBS ON" ) -if (MSVC) +if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_target_properties(hwy_test PROPERTIES EXCLUDE_FROM_ALL True) set_target_properties(hwy_list_targets PROPERTIES EXCLUDE_FROM_ALL True) endif() @@ -68,7 +68,7 @@ set(PLUGIN_SOURCES src/ExampleDependenciesPlugin.cpp src/SettingsAction.h src/SettingsAction.cpp - src/ExampleDependenciesPlugin.json + PluginInfo.json ) source_group(Plugin FILES ${PLUGIN_SOURCES}) @@ -151,11 +151,16 @@ set_target_properties(hwy hwy_contrib hwy_list_targets hwy_test # Automatically available when using find_package(ManiVault) mv_install_dependencies(${PROJECT_NAME} "hwy" "hwy_contrib") +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleDependencies/PluginInfo.json b/ExampleDependencies/PluginInfo.json new file mode 100644 index 0000000..6994b4e --- /dev/null +++ b/ExampleDependencies/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example Dependencies", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Analysis", + "dependencies" : ["Points"] +} diff --git a/ExampleDependencies/src/ExampleDependenciesPlugin.h b/ExampleDependencies/src/ExampleDependenciesPlugin.h index 2c0e3eb..24d2589 100644 --- a/ExampleDependencies/src/ExampleDependenciesPlugin.h +++ b/ExampleDependencies/src/ExampleDependenciesPlugin.h @@ -42,7 +42,7 @@ class ExampleDependenciesPluginFactory : public AnalysisPluginFactory Q_INTERFACES(mv::plugin::AnalysisPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleDependenciesPlugin" - FILE "ExampleDependenciesPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleDependencies/src/ExampleDependenciesPlugin.json b/ExampleDependencies/src/ExampleDependenciesPlugin.json deleted file mode 100644 index e89938b..0000000 --- a/ExampleDependencies/src/ExampleDependenciesPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example Dependencies", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleLoader/CMakeLists.txt b/ExampleLoader/CMakeLists.txt index 4b9651b..71a4837 100644 --- a/ExampleLoader/CMakeLists.txt +++ b/ExampleLoader/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleLoader Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleLoaderPlugin") +PROJECT("ExampleLoaderPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -40,7 +40,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleLoaderPlugin.h src/ExampleLoaderPlugin.cpp - src/ExampleLoaderPlugin.json + PluginInfo.json ) source_group(Plugin FILES ${PLUGIN_SOURCES}) @@ -96,11 +96,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleLoader/src/ExampleLoaderPlugin.json b/ExampleLoader/PluginInfo.json similarity index 50% rename from ExampleLoader/src/ExampleLoaderPlugin.json rename to ExampleLoader/PluginInfo.json index 4050aa3..567fd12 100644 --- a/ExampleLoader/src/ExampleLoaderPlugin.json +++ b/ExampleLoader/PluginInfo.json @@ -1,6 +1,10 @@ { "name" : "Example Loader", "menuName" : "Example (.xmp)", - "version" : "1.4", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Loader", "dependencies" : ["Points"] } diff --git a/ExampleLoader/src/ExampleLoaderPlugin.h b/ExampleLoader/src/ExampleLoaderPlugin.h index 90a1ab3..9013ed4 100644 --- a/ExampleLoader/src/ExampleLoaderPlugin.h +++ b/ExampleLoader/src/ExampleLoaderPlugin.h @@ -33,7 +33,7 @@ class ExampleLoaderPluginFactory : public LoaderPluginFactory Q_INTERFACES(mv::plugin::LoaderPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleLoaderPlugin" - FILE "ExampleLoaderPlugin.json") + FILE "PluginInfo.json") public: ExampleLoaderPluginFactory(); diff --git a/ExampleTransformation/CMakeLists.txt b/ExampleTransformation/CMakeLists.txt index 99a472c..1062e48 100644 --- a/ExampleTransformation/CMakeLists.txt +++ b/ExampleTransformation/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleTransformation Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleTransformationPlugin") +PROJECT("ExampleTransformationPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -40,7 +40,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleTransformationPlugin.h src/ExampleTransformationPlugin.cpp - src/ExampleTransformationPlugin.json + PluginInfo.json ) source_group(Plugin FILES ${PLUGIN_SOURCES}) @@ -96,11 +96,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleTransformation/PluginInfo.json b/ExampleTransformation/PluginInfo.json new file mode 100644 index 0000000..1832c81 --- /dev/null +++ b/ExampleTransformation/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example Transformation", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Transformation", + "dependencies" : ["Points"] +} diff --git a/ExampleTransformation/src/ExampleTransformationPlugin.h b/ExampleTransformation/src/ExampleTransformationPlugin.h index 56036a1..6c9df63 100644 --- a/ExampleTransformation/src/ExampleTransformationPlugin.h +++ b/ExampleTransformation/src/ExampleTransformationPlugin.h @@ -90,7 +90,7 @@ class ExampleTransformationPluginFactory : public TransformationPluginFactory Q_INTERFACES(mv::plugin::TransformationPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleTransformationPlugin" - FILE "ExampleTransformationPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleTransformation/src/ExampleTransformationPlugin.json b/ExampleTransformation/src/ExampleTransformationPlugin.json deleted file mode 100644 index 1017770..0000000 --- a/ExampleTransformation/src/ExampleTransformationPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example Transformation", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleView/CMakeLists.txt b/ExampleView/CMakeLists.txt index 0c4f2ff..1a73e9c 100644 --- a/ExampleView/CMakeLists.txt +++ b/ExampleView/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleView Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleViewPlugin") +PROJECT("ExampleViewPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -40,7 +40,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleViewPlugin.h src/ExampleViewPlugin.cpp - src/ExampleViewPlugin.json + PluginInfo.json ) set(PLUGIN_MOC_HEADERS @@ -100,11 +100,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleView/PluginInfo.json b/ExampleView/PluginInfo.json new file mode 100644 index 0000000..063bb77 --- /dev/null +++ b/ExampleView/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example View", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Viewer", + "dependencies" : ["Points"] +} diff --git a/ExampleView/src/ExampleViewPlugin.h b/ExampleView/src/ExampleViewPlugin.h index 7c8515b..8dd94c0 100644 --- a/ExampleView/src/ExampleViewPlugin.h +++ b/ExampleView/src/ExampleViewPlugin.h @@ -75,7 +75,7 @@ class ExampleViewPluginFactory : public ViewPluginFactory Q_INTERFACES(mv::plugin::ViewPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleViewPlugin" - FILE "ExampleViewPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleView/src/ExampleViewPlugin.json b/ExampleView/src/ExampleViewPlugin.json deleted file mode 100644 index 135c2df..0000000 --- a/ExampleView/src/ExampleViewPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example View", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleViewJS/CMakeLists.txt b/ExampleViewJS/CMakeLists.txt index 4bf270d..e2ce19b 100644 --- a/ExampleViewJS/CMakeLists.txt +++ b/ExampleViewJS/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleViewJS Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleViewJSPlugin") +PROJECT("ExampleViewJSPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -42,7 +42,7 @@ set(PLUGIN_SOURCES src/ExampleViewJSPlugin.cpp src/ChartWidget.h src/ChartWidget.cpp - src/ExampleViewJSPlugin.json + PluginInfo.json ) set(WEB @@ -115,11 +115,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleViewJS/PluginInfo.json b/ExampleViewJS/PluginInfo.json new file mode 100644 index 0000000..399577c --- /dev/null +++ b/ExampleViewJS/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example View JS", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Viewer", + "dependencies" : ["Points"] +} diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.h b/ExampleViewJS/src/ExampleViewJSPlugin.h index 17be088..d69e148 100644 --- a/ExampleViewJS/src/ExampleViewJSPlugin.h +++ b/ExampleViewJS/src/ExampleViewJSPlugin.h @@ -84,7 +84,7 @@ class ExampleViewJSPluginFactory : public ViewPluginFactory Q_INTERFACES(mv::plugin::ViewPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleViewJSPlugin" - FILE "ExampleViewJSPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.json b/ExampleViewJS/src/ExampleViewJSPlugin.json deleted file mode 100644 index 5bc8779..0000000 --- a/ExampleViewJS/src/ExampleViewJSPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example View JS", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleViewOpenGL/CMakeLists.txt b/ExampleViewOpenGL/CMakeLists.txt index 3d9366e..f6c5cca 100644 --- a/ExampleViewOpenGL/CMakeLists.txt +++ b/ExampleViewOpenGL/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleViewOpenGL Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleViewOpenGLPlugin") +PROJECT("ExampleViewOpenGLPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -40,7 +40,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleViewGLPlugin.h src/ExampleViewGLPlugin.cpp - src/ExampleViewGLPlugin.json + PluginInfo.json ) set(PLUGIN_WIDGETS @@ -112,11 +112,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleViewOpenGL/PluginInfo.json b/ExampleViewOpenGL/PluginInfo.json new file mode 100644 index 0000000..0d243e7 --- /dev/null +++ b/ExampleViewOpenGL/PluginInfo.json @@ -0,0 +1,9 @@ +{ + "name" : "Example View OpenGL", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Viewer", + "dependencies" : ["Points"] +} diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.h b/ExampleViewOpenGL/src/ExampleViewGLPlugin.h index 97c6f59..43b0f19 100644 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.h +++ b/ExampleViewOpenGL/src/ExampleViewGLPlugin.h @@ -84,7 +84,7 @@ class ExampleViewGLPluginFactory : public ViewPluginFactory Q_INTERFACES(mv::plugin::ViewPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleViewGLPlugin" - FILE "ExampleViewGLPlugin.json") + FILE "PluginInfo.json") public: diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.json b/ExampleViewOpenGL/src/ExampleViewGLPlugin.json deleted file mode 100644 index daec2ed..0000000 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name" : "Example View OpenGL", - "version" : "1.4", - "dependencies" : ["Points"] -} diff --git a/ExampleWriter/CMakeLists.txt b/ExampleWriter/CMakeLists.txt index 832d3c1..95b7275 100644 --- a/ExampleWriter/CMakeLists.txt +++ b/ExampleWriter/CMakeLists.txt @@ -5,7 +5,7 @@ option(MV_UNITY_BUILD "Combine target source files into batches for faster compi # ----------------------------------------------------------------------------- # ExampleWriter Plugin # ----------------------------------------------------------------------------- -PROJECT("ExampleWriterPlugin") +PROJECT("ExampleWriterPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- # CMake Options @@ -14,12 +14,12 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif(MSVC) +endif() # ----------------------------------------------------------------------------- # Dependencies @@ -40,7 +40,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../Common ${CMAKE_CURRENT_BINARY_DI set(PLUGIN_SOURCES src/ExampleWriterPlugin.h src/ExampleWriterPlugin.cpp - src/ExampleWriterPlugin.json + PluginInfo.json ) source_group(Plugin FILES ${PLUGIN_SOURCES}) @@ -96,11 +96,16 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD --prefix ${ManiVault_INSTALL_DIR}/$ ) +# Append plugin version to output file +# 0 disables automatic folder placement (same as plugin type) +# since we want to place all example plugins in a separate folder +mv_handle_plugin_config(${PROJECT_NAME} 0) + # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- # Automatically set the debug environment (command + working directory) for MSVC -if(MSVC) +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY $,${ManiVault_INSTALL_DIR}/Debug,$,${ManiVault_INSTALL_DIR}/RelWithDebInfo,${ManiVault_INSTALL_DIR}/Release>>) set_property(TARGET ${PROJECT_NAME} PROPERTY VS_DEBUGGER_COMMAND $,"${ManiVault_INSTALL_DIR}/Debug/ManiVault Studio.exe",$,"${ManiVault_INSTALL_DIR}/RelWithDebInfo/ManiVault Studio.exe","${ManiVault_INSTALL_DIR}/Release/ManiVault Studio.exe">>) endif() diff --git a/ExampleWriter/src/ExampleWriterPlugin.json b/ExampleWriter/PluginInfo.json similarity index 50% rename from ExampleWriter/src/ExampleWriterPlugin.json rename to ExampleWriter/PluginInfo.json index 636d962..00a4115 100644 --- a/ExampleWriter/src/ExampleWriterPlugin.json +++ b/ExampleWriter/PluginInfo.json @@ -1,6 +1,10 @@ { "name" : "Example Writer", "menuName" : "Example (.xmp)", - "version" : "1.4", + "version" : { + "plugin" : "1.4", + "core" : ["1.3"] + }, + "type" : "Writer", "dependencies" : ["Points"] } diff --git a/ExampleWriter/src/ExampleWriterPlugin.h b/ExampleWriter/src/ExampleWriterPlugin.h index d2b404b..8058fc5 100644 --- a/ExampleWriter/src/ExampleWriterPlugin.h +++ b/ExampleWriter/src/ExampleWriterPlugin.h @@ -34,7 +34,7 @@ class ExampleWriterPluginFactory : public WriterPluginFactory Q_INTERFACES(mv::plugin::WriterPluginFactory mv::plugin::PluginFactory) Q_OBJECT Q_PLUGIN_METADATA(IID "studio.manivault.ExampleWriterPlugin" - FILE "ExampleWriterPlugin.json") + FILE "PluginInfo.json") public: ExampleWriterPluginFactory();