diff --git a/resources/3rdparty/include_xerces.cmake b/resources/3rdparty/include_xerces.cmake index 4db0dff57..65b2f43a0 100644 --- a/resources/3rdparty/include_xerces.cmake +++ b/resources/3rdparty/include_xerces.cmake @@ -42,7 +42,7 @@ if(USE_XERCESC) mark_as_advanced(CORESERVICES_LIBRARY) endif() find_package(CURL) - list(APPEND STORM_LINK_LIBRARIES ${XERCESC_LIBRARIES} ${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY} ${CURL_LIBRARIES}) + list(APPEND STORM_GSPN_LINK_LIBRARIES ${XERCESC_LIBRARIES} ${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY} ${CURL_LIBRARIES}) else() message (WARNING "Storm - Building without Xerces disables parsing XML formats (for GSPNs)") endif(USE_XERCESC) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 0fec9497c..665c16847 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,4 +1,6 @@ add_subdirectory(storm) add_subdirectory(storm-pgcl) add_subdirectory(storm-pgcl-cli) +add_subdirectory(storm-gspn) +add_subdirectory(storm-gspn-cli) add_subdirectory(test) diff --git a/src/storm-gspn-cli/CMakeLists.txt b/src/storm-gspn-cli/CMakeLists.txt new file mode 100644 index 000000000..343b8acc8 --- /dev/null +++ b/src/storm-gspn-cli/CMakeLists.txt @@ -0,0 +1,3 @@ +add_executable(storm-gspn-cli ${PROJECT_SOURCE_DIR}/src/storm-gspn-cli/storm-gspn.cpp) +target_link_libraries(storm-gspn-cli storm-gspn) # Adding headers for xcode +set_target_properties(storm-gspn-cli PROPERTIES OUTPUT_NAME "storm-gspn") diff --git a/src/storm/storm-gspn.cpp b/src/storm-gspn-cli/storm-gspn.cpp similarity index 95% rename from src/storm/storm-gspn.cpp rename to src/storm-gspn-cli/storm-gspn.cpp index 87e39084f..b973d046d 100644 --- a/src/storm/storm-gspn.cpp +++ b/src/storm-gspn-cli/storm-gspn.cpp @@ -1,9 +1,12 @@ -#include "storm/builder/ExplicitGspnModelBuilder.h" +#include "storm-gspn/builder/ExplicitGspnModelBuilder.h" +#include "storm-gspn/parser/GspnParser.h" +#include "storm-gspn/storage/gspn/GSPN.h" +#include "storm-gspn/storage/gspn/GspnBuilder.h" +#include "storm-gspn/builder/JaniGSPNBuilder.h" + #include "storm/exceptions/BaseException.h" #include "storm/exceptions/WrongFormatException.h" -#include "storm/parser/GspnParser.h" -#include "storm/storage/gspn/GSPN.h" -#include "storm/storage/gspn/GspnBuilder.h" + #include "storm/utility/macros.h" #include "storm/utility/initialize.h" @@ -13,7 +16,6 @@ #include "storm/storage/expressions/ExpressionManager.h" #include "storm/storage/jani/Model.h" #include "storm/storage/jani/JSONExporter.h" -#include "storm/builder/JaniGSPNBuilder.h" #include #include #include diff --git a/src/storm-gspn/CMakeLists.txt b/src/storm-gspn/CMakeLists.txt new file mode 100644 index 000000000..a5478280d --- /dev/null +++ b/src/storm-gspn/CMakeLists.txt @@ -0,0 +1,13 @@ +file(GLOB_RECURSE ALL_FILES ${PROJECT_SOURCE_DIR}/src/storm-gspn/*.h ${PROJECT_SOURCE_DIR}/src/storm-gspn/*.cpp) + +register_source_groups_from_filestructure("${ALL_FILES}" storm-gspn) + + + +file(GLOB_RECURSE STORM_GSPN_SOURCES ${PROJECT_SOURCE_DIR}/src/storm-gspn/*/*.cpp) +file(GLOB_RECURSE STORM_GSPN_HEADERS ${PROJECT_SOURCE_DIR}/src/storm-gspn/*/*.h) + + +# Create storm-pgcl. +add_library(storm-gspn SHARED ${STORM_GSPN_SOURCES} ${STORM_GSPN_HEADERS}) +target_link_libraries(storm-gspn storm ${STORM_GSPN_LINK_LIBRARIES}) diff --git a/src/storm/adapters/XercesAdapter.h b/src/storm-gspn/adapters/XercesAdapter.h similarity index 100% rename from src/storm/adapters/XercesAdapter.h rename to src/storm-gspn/adapters/XercesAdapter.h diff --git a/src/storm/builder/ExplicitGspnModelBuilder.cpp b/src/storm-gspn/builder/ExplicitGspnModelBuilder.cpp similarity index 100% rename from src/storm/builder/ExplicitGspnModelBuilder.cpp rename to src/storm-gspn/builder/ExplicitGspnModelBuilder.cpp diff --git a/src/storm/builder/ExplicitGspnModelBuilder.h b/src/storm-gspn/builder/ExplicitGspnModelBuilder.h similarity index 100% rename from src/storm/builder/ExplicitGspnModelBuilder.h rename to src/storm-gspn/builder/ExplicitGspnModelBuilder.h diff --git a/src/storm/builder/JaniGSPNBuilder.cpp b/src/storm-gspn/builder/JaniGSPNBuilder.cpp similarity index 100% rename from src/storm/builder/JaniGSPNBuilder.cpp rename to src/storm-gspn/builder/JaniGSPNBuilder.cpp diff --git a/src/storm/builder/JaniGSPNBuilder.h b/src/storm-gspn/builder/JaniGSPNBuilder.h similarity index 99% rename from src/storm/builder/JaniGSPNBuilder.h rename to src/storm-gspn/builder/JaniGSPNBuilder.h index 46c0fb095..4fcb19f16 100644 --- a/src/storm/builder/JaniGSPNBuilder.h +++ b/src/storm-gspn/builder/JaniGSPNBuilder.h @@ -1,6 +1,6 @@ #pragma once -#include "storm/storage/gspn/GSPN.h" +#include "storm-gspn/storage/gspn/GSPN.h" #include "storm/storage/jani/Model.h" #include "storm/storage/expressions/ExpressionManager.h" diff --git a/src/storm/parser/GreatSpnEditorProjectParser.cpp b/src/storm-gspn/parser/GreatSpnEditorProjectParser.cpp similarity index 100% rename from src/storm/parser/GreatSpnEditorProjectParser.cpp rename to src/storm-gspn/parser/GreatSpnEditorProjectParser.cpp diff --git a/src/storm/parser/GreatSpnEditorProjectParser.h b/src/storm-gspn/parser/GreatSpnEditorProjectParser.h similarity index 100% rename from src/storm/parser/GreatSpnEditorProjectParser.h rename to src/storm-gspn/parser/GreatSpnEditorProjectParser.h diff --git a/src/storm/parser/GspnParser.cpp b/src/storm-gspn/parser/GspnParser.cpp similarity index 98% rename from src/storm/parser/GspnParser.cpp rename to src/storm-gspn/parser/GspnParser.cpp index 6f5b3c731..dfb3575d3 100644 --- a/src/storm/parser/GspnParser.cpp +++ b/src/storm-gspn/parser/GspnParser.cpp @@ -1,6 +1,6 @@ #include "GspnParser.h" #include "storm-config.h" -#include "storm/adapters/XercesAdapter.h" +#include "storm-gspn/adapters/XercesAdapter.h" #include "storm/exceptions/UnexpectedException.h" #include "storm/exceptions/WrongFormatException.h" diff --git a/src/storm/parser/GspnParser.h b/src/storm-gspn/parser/GspnParser.h similarity index 80% rename from src/storm/parser/GspnParser.h rename to src/storm-gspn/parser/GspnParser.h index 0b80a1615..862dfc757 100644 --- a/src/storm/parser/GspnParser.h +++ b/src/storm-gspn/parser/GspnParser.h @@ -1,4 +1,4 @@ -#include "storm/storage/gspn/GSPN.h" +#include "storm-gspn/storage/gspn/GSPN.h" namespace storm { namespace parser { diff --git a/src/storm/parser/PnmlParser.cpp b/src/storm-gspn/parser/PnmlParser.cpp similarity index 99% rename from src/storm/parser/PnmlParser.cpp rename to src/storm-gspn/parser/PnmlParser.cpp index bf256ec6c..4869405eb 100644 --- a/src/storm/parser/PnmlParser.cpp +++ b/src/storm-gspn/parser/PnmlParser.cpp @@ -1,5 +1,5 @@ -#include "storm/parser/PnmlParser.h" +#include "storm-gspn/parser/PnmlParser.h" #ifdef USE_XERCES #include diff --git a/src/storm/parser/PnmlParser.h b/src/storm-gspn/parser/PnmlParser.h similarity index 100% rename from src/storm/parser/PnmlParser.h rename to src/storm-gspn/parser/PnmlParser.h diff --git a/src/storm/storage/gspn/GSPN.cpp b/src/storm-gspn/storage/gspn/GSPN.cpp similarity index 99% rename from src/storm/storage/gspn/GSPN.cpp rename to src/storm-gspn/storage/gspn/GSPN.cpp index a97d15fd1..8377f2f8e 100644 --- a/src/storm/storage/gspn/GSPN.cpp +++ b/src/storm-gspn/storage/gspn/GSPN.cpp @@ -1,11 +1,14 @@ -#include "storm/storage/gspn/GSPN.h" -#include "storm/utility/macros.h" -#include "storm/exceptions/InvalidArgumentException.h" +#include "GSPN.h" #include #include +#include "storm/utility/macros.h" +#include "storm/exceptions/InvalidArgumentException.h" + + + namespace storm { namespace gspn { uint64_t GSPN::timedTransitionIdToTransitionId(uint64_t ttId) { diff --git a/src/storm/storage/gspn/GSPN.h b/src/storm-gspn/storage/gspn/GSPN.h similarity index 96% rename from src/storm/storage/gspn/GSPN.h rename to src/storm-gspn/storage/gspn/GSPN.h index aee3bbd4c..17448bc8b 100644 --- a/src/storm/storage/gspn/GSPN.h +++ b/src/storm-gspn/storage/gspn/GSPN.h @@ -6,10 +6,10 @@ #include #include -#include "storm/storage/gspn/ImmediateTransition.h" -#include "storm/storage/gspn/Marking.h" -#include "storm/storage/gspn/Place.h" -#include "storm/storage/gspn/TimedTransition.h" +#include "storm-gspn/storage/gspn/ImmediateTransition.h" +#include "storm-gspn/storage/gspn/Marking.h" +#include "storm-gspn/storage/gspn/Place.h" +#include "storm-gspn/storage/gspn/TimedTransition.h" namespace storm { namespace gspn { diff --git a/src/storm/storage/gspn/GspnBuilder.cpp b/src/storm-gspn/storage/gspn/GspnBuilder.cpp similarity index 99% rename from src/storm/storage/gspn/GspnBuilder.cpp rename to src/storm-gspn/storage/gspn/GspnBuilder.cpp index 1800f02d5..cbea96b6a 100644 --- a/src/storm/storage/gspn/GspnBuilder.cpp +++ b/src/storm-gspn/storage/gspn/GspnBuilder.cpp @@ -1,6 +1,8 @@ -#include "storm/exceptions/IllegalFunctionCallException.h" #include "GspnBuilder.h" + +#include "storm/exceptions/IllegalFunctionCallException.h" + #include "storm/utility/macros.h" #include "storm/exceptions/IllegalFunctionCallException.h" #include "storm/exceptions/InvalidArgumentException.h" diff --git a/src/storm/storage/gspn/GspnBuilder.h b/src/storm-gspn/storage/gspn/GspnBuilder.h similarity index 100% rename from src/storm/storage/gspn/GspnBuilder.h rename to src/storm-gspn/storage/gspn/GspnBuilder.h diff --git a/src/storm/storage/gspn/ImmediateTransition.h b/src/storm-gspn/storage/gspn/ImmediateTransition.h similarity index 84% rename from src/storm/storage/gspn/ImmediateTransition.h rename to src/storm-gspn/storage/gspn/ImmediateTransition.h index 6728db936..4dd107f6c 100644 --- a/src/storm/storage/gspn/ImmediateTransition.h +++ b/src/storm-gspn/storage/gspn/ImmediateTransition.h @@ -1,7 +1,6 @@ -#ifndef STORM_STORAGE_GSPN_IMMEDIATETRANSITION_H_ -#define STORM_STORAGE_GSPN_IMMEDIATETRANSITION_H_ +#pragma once -#include "storm/storage/gspn/Transition.h" +#include "storm-gspn/storage/gspn/Transition.h" #include "storm/utility/constants.h" namespace storm { @@ -39,5 +38,3 @@ namespace storm { }; } } - -#endif //STORM_STORAGE_GSPN_IMMEDIATETRANSITION_H_ diff --git a/src/storm/storage/gspn/Marking.cpp b/src/storm-gspn/storage/gspn/Marking.cpp similarity index 98% rename from src/storm/storage/gspn/Marking.cpp rename to src/storm-gspn/storage/gspn/Marking.cpp index 3e9f680d0..559464c7c 100644 --- a/src/storm/storage/gspn/Marking.cpp +++ b/src/storm-gspn/storage/gspn/Marking.cpp @@ -1,5 +1,8 @@ +#include "Marking.h" + + #include -#include "storm/storage/gspn/Marking.h" + namespace storm { namespace gspn { diff --git a/src/storm/storage/gspn/Marking.h b/src/storm-gspn/storage/gspn/Marking.h similarity index 100% rename from src/storm/storage/gspn/Marking.h rename to src/storm-gspn/storage/gspn/Marking.h diff --git a/src/storm/storage/gspn/Place.cpp b/src/storm-gspn/storage/gspn/Place.cpp similarity index 100% rename from src/storm/storage/gspn/Place.cpp rename to src/storm-gspn/storage/gspn/Place.cpp diff --git a/src/storm/storage/gspn/Place.h b/src/storm-gspn/storage/gspn/Place.h similarity index 100% rename from src/storm/storage/gspn/Place.h rename to src/storm-gspn/storage/gspn/Place.h diff --git a/src/storm/storage/gspn/TimedTransition.h b/src/storm-gspn/storage/gspn/TimedTransition.h similarity index 80% rename from src/storm/storage/gspn/TimedTransition.h rename to src/storm-gspn/storage/gspn/TimedTransition.h index 339a19a0f..d8399319d 100644 --- a/src/storm/storage/gspn/TimedTransition.h +++ b/src/storm-gspn/storage/gspn/TimedTransition.h @@ -1,7 +1,6 @@ -#ifndef STORM_STORAGE_GSPN_TIMEDTRANSITION_H_ -#define STORM_STORAGE_GSPN_TIMEDTRANSITION_H_ +#pragma once -#include "storm/storage/gspn/Transition.h" +#include "storm-gspn/storage/gspn/Transition.h" namespace storm { namespace gspn { @@ -31,6 +30,4 @@ namespace storm { RateType rate; }; } -} - -#endif //STORM_STORAGE_GSPN_TIMEDTRANSITION_H_ +} \ No newline at end of file diff --git a/src/storm/storage/gspn/Transition.cpp b/src/storm-gspn/storage/gspn/Transition.cpp similarity index 99% rename from src/storm/storage/gspn/Transition.cpp rename to src/storm-gspn/storage/gspn/Transition.cpp index adb6b3fdc..ccc24d8c3 100644 --- a/src/storm/storage/gspn/Transition.cpp +++ b/src/storm-gspn/storage/gspn/Transition.cpp @@ -1,4 +1,4 @@ -#include "storm/storage/gspn/Transition.h" +#include "Transition.h" #include "storm/utility/macros.h" diff --git a/src/storm/storage/gspn/Transition.h b/src/storm-gspn/storage/gspn/Transition.h similarity index 98% rename from src/storm/storage/gspn/Transition.h rename to src/storm-gspn/storage/gspn/Transition.h index 460e307b6..d61affaea 100644 --- a/src/storm/storage/gspn/Transition.h +++ b/src/storm-gspn/storage/gspn/Transition.h @@ -3,8 +3,8 @@ #include #include #include -#include "storm/storage/gspn/Marking.h" -#include "storm/storage/gspn/Place.h" +#include "storm-gspn/storage/gspn/Marking.h" +#include "storm-gspn/storage/gspn/Place.h" namespace storm { namespace gspn { diff --git a/src/storm/CMakeLists.txt b/src/storm/CMakeLists.txt index 27dcb0913..91b2abd53 100644 --- a/src/storm/CMakeLists.txt +++ b/src/storm/CMakeLists.txt @@ -11,7 +11,6 @@ file(GLOB_RECURSE STORM_HEADERS ${PROJECT_SOURCE_DIR}/src/storm/*.h) file(GLOB_RECURSE STORM_SOURCES_WITHOUT_MAIN ${PROJECT_SOURCE_DIR}/src/storm/*/*.cpp) file(GLOB_RECURSE STORM_MAIN_FILE ${PROJECT_SOURCE_DIR}/src/storm/storm.cpp) file(GLOB_RECURSE STORM_DFT_MAIN_FILE ${PROJECT_SOURCE_DIR}/src/storm/storm-dyftee.cpp) -file(GLOB_RECURSE STORM_GSPN_MAIN_FILE ${PROJECT_SOURCE_DIR}/src/storm/storm-gspn.cpp) # Additional include files like the storm-config.h file(GLOB_RECURSE STORM_BUILD_HEADERS ${PROJECT_BINARY_DIR}/include/*.h) @@ -20,7 +19,6 @@ set(STORM_LIB_SOURCES ${STORM_SOURCES_WITHOUT_MAIN}) set(STORM_LIB_HEADERS ${STORM_HEADERS}) set(STORM_MAIN_SOURCES ${STORM_MAIN_FILE}) set(STORM_DFT_MAIN_SOURCES ${STORM_DFT_MAIN_FILE}) -set(STORM_GSPN_MAIN_SOURCES ${STORM_GSPN_MAIN_FILE}) # Add custom additional include or link directories if (ADDITIONAL_INCLUDE_DIRS) @@ -55,10 +53,6 @@ add_executable(storm-dft-main ${STORM_DFT_MAIN_SOURCES} ${STORM_MAIN_HEADERS}) target_link_libraries(storm-dft-main storm) # Adding headers for xcode set_target_properties(storm-dft-main PROPERTIES OUTPUT_NAME "storm-dft") -add_executable(storm-gspn-main ${STORM_GSPN_MAIN_SOURCES} ${STORM_MAIN_HEADERS}) -target_link_libraries(storm-gspn-main storm) # Adding headers for xcode -set_target_properties(storm-gspn-main PROPERTIES OUTPUT_NAME "storm-gspn") - # Install storm headers to include directory. foreach(HEADER ${STORM_LIB_HEADERS}) string(REGEX REPLACE "${PROJECT_SOURCE_DIR}/src/?" "" RELATIVE_HEADER_PATH ${HEADER})