diff --git a/CMakeLists.txt b/CMakeLists.txt index ff389a1..ecdfe0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,70 +1,53 @@ # CMakeLists.txt for event package. It creates a library with dictionary and a main program cmake_minimum_required(VERSION 3.0 FATAL_ERROR) -project(pluto) +project(Pluto + VERSION 6.1.9 + LANGUAGES CXX +) +include(GNUInstallDirs) include(CTest) -include_directories(include ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) - -########################################################### -SET(PLUGIN_CLASSES "") -SET(PLUGIN_CLASSES_NAMES "") -SET(PLUGIN_COLLECTION "") - -FUNCTION(addprefix var prefix) - ##MESSAGE( STATUS "prefix: " ${prefix} ) - SET(listVar "") - FOREACH(f ${ARGN}) - LIST(APPEND listVar "${prefix}/${f}") - ENDFOREACH(f) - SET(${var} "${listVar}" PARENT_SCOPE) -ENDFUNCTION(addprefix) - -FUNCTION(addsuffix var suffix) - SET(listVar "") - FOREACH(f ${ARGN}) - LIST(APPEND listVar "${f}${suffix}") - ENDFOREACH(f) - SET(${var} "${listVar}" PARENT_SCOPE) -ENDFUNCTION(addsuffix) - -add_subdirectory(plugins) -##MESSAGE( STATUS "PLUGIN_CLASSES: " ${PLUGIN_CLASSES} ) - -addsuffix(PHDRS ".h" ${PLUGIN_CLASSES}) -addsuffix(PSRC ".cc" ${PLUGIN_CLASSES}) -##MESSAGE( STATUS "PHDRS: " ${PHDRS} ) -##MESSAGE( STATUS "PLUGIN_CLASSES_NAMES: " ${PLUGIN_CLASSES_NAMES} ) -##MESSAGE( STATUS "PLUGIN_COLLECTION: " ${PLUGIN_COLLECTION} ) - -########################################################### - -file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/Plugins.h) -FOREACH(f ${PHDRS}) - file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/Plugins.h "\#include \"${f}\"\n") -ENDFOREACH(f) - -file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/Plugins.cc) -FOREACH(f ${PLUGIN_COLLECTION}) - file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/Plugins.cc "\#include \"${f}\"\n") -ENDFOREACH(f) - -file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/PluginLinkDef.h) -FOREACH(f ${PLUGIN_CLASSES_NAMES}) - file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/PluginLinkDef.h "\#pragma link C++ class ${f};\n") -ENDFOREACH(f) +option(MULTISLOT "Allow to install several Pluto versions ito same DESTDIR" OFF) +if (MULTISLOT) + set(PLUTO_SLOT Pluto-${PROJECT_VERSION}) +endif() ########################################################### - - -file(GLOB SOURCES "src/*.cc") -SET(SOURCES ${SOURCES} ${PLUGIN_CLASSES}) - -#file(GLOB INCL_FILES RELATIVE "${CMAKE_SOURCE_DIR}" "include/*.h" ) -file(GLOB INCL_FILES RELATIVE "${CMAKE_CURRENT_BINARY_DIR}" "include/*.h" ) -SET(INCL_FILES ${INCL_FILES} ${PHDRS}) - -MESSAGE( STATUS "INCL_FILES: " ${INCL_FILES} ) +SET(SOURCES src/PAdaptiveMesh.cc src/PAdaptiveMeshN.cc src/PAngularDistribution.cc src/PAnyDistribution.cc src/PArray.cc + src/PBatch.cc src/PBeamSmearing.cc src/PBreitWigner.cc src/PBulkInterface.cc src/PChannel.cc src/PChannelModel.cc + src/PCommandList.cc src/PComplexBreitWigner.cc src/PCross.cc src/PDalitzDecay.cc src/PDalitzDistribution.cc + src/PDataBase.cc src/PData.cc src/PDebugFileOutput.cc src/PDecayChannel.cc src/PDecayManager.cc + src/PDeltaAngularDistribution.cc src/PDensityMatrix.cc src/PDiLepton.cc src/PDistribution.cc + src/PDistributionCollection.cc src/PDistributionManager.cc src/PDistributionManagerUtil.cc src/PDynamicData.cc + src/PEEDirectDecay.cc src/PEmbeddedParticles.cc src/PF1.cc src/PF2.cc src/PF3.cc src/PFermiMomentum.cc + src/PFermiMomentumDD.cc src/PFileInput.cc src/PFileOutput.cc src/PFilter.cc src/PFireball.cc src/PFixedDecay.cc + src/PFixedProduction.cc src/PFormula.cc src/PFunction.cc src/PGenBod.cc src/PHadronDecay.cc src/PHadronDecayM1.cc + src/PHadronDecayM1N.cc src/PHadronDecayM2.cc src/PHadronDecayM3.cc src/PHadronModel.cc src/PInclusiveModel.cc + src/PMassSampling.cc src/PMesh.cc src/PParticle.cc src/PPiOmegaAngularDistribution.cc src/PPlutoBulkDecay.cc + src/PProjector.cc src/PPropagator.cc src/PReaction.cc src/PSaid.cc src/PScatterDistribution.cc src/PSimpleVMDFF.cc + src/PStaticData.cc src/PStdData.cc src/PStdModels.cc src/PTCrossWeight.cc src/PTGenPhaseSpace.cc src/PThermal.cc + src/PUtils.cc src/PValues.cc src/PVertexFile.cc +) + +set(HEADERS include/PAdaptiveMesh.h include/PAdaptiveMeshN.h include/PAngularDistribution.h include/PAnyDistribution.h + include/PArray.h include/PBatch.h include/PBeamSmearing.h include/PBreitWigner.h include/PBulkInterface.h + include/PChannel.h include/PChannelModel.h include/PCommandList.h include/PComplexBreitWigner.h include/PCross.h + include/PDalitzDecay.h include/PDalitzDistribution.h include/PDataBase.h include/PData.h include/PDebugFileOutput.h + include/PDecayChannel.h include/PDecayManager.h include/PDefines.h include/PDeltaAngularDistribution.h + include/PDensityMatrix.h include/PDiLepton.h include/PDistributionCollection.h include/PDistribution.h + include/PDistributionManager.h include/PDistributionManagerUtil.h include/PDynamicData.h include/PEEDirectDecay.h + include/PEmbeddedParticles.h include/PF1.h include/PF2.h include/PF3.h include/PFermiMomentumDD.h + include/PFermiMomentum.h include/PFileInput.h include/PFileOutput.h include/PFilter.h include/PFireball.h + include/PFixedDecay.h include/PFixedProduction.h include/PFormula.h include/PFunction.h include/PGenBod.h + include/PHadronDecay.h include/PHadronDecayM1.h include/PHadronDecayM1N.h include/PHadronDecayM2.h + include/PHadronDecayM3.h include/PHadronModel.h include/PInclusiveModel.h include/PKinematics.h + include/PMassSampling.h include/PMesh.h include/PParticle.h include/PPiOmegaAngularDistribution.h + include/PPlutoBulkDecay.h include/PProjector.h include/PPropagator.h include/PReaction.h include/PSaid.h + include/PScatterDistribution.h include/PSimpleVMDFF.h include/PStaticData.h include/PStdData.h include/PStdModels.h + include/PTCrossWeight.h include/PTGenPhaseSpace.h include/PThermal.h include/PUtils.h include/PValues.h + include/PVertexFile.h +) # You need to tell CMake where to find the ROOT installation. This can be done in a number of ways: # - ROOT built with classic configure/make use the provided $ROOTSYS/etc/cmake/FindROOT.cmake @@ -75,32 +58,147 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} $ENV{ROOTSYS}/etc/cmake) #---Locate the ROOT package and defines a number of variables (e.g. ROOT_INCLUDE_DIRS) find_package(ROOT "6.00" REQUIRED COMPONENTS RIO Net) if(ROOT_VERSION LESS 6.00) - message(FATAL_ERROR "The required ROOT version has to be at least 6.00, found " ${ROOT_VERSION}) + message(FATAL_ERROR "The required ROOT version has to be at least 6.00, found " ${ROOT_VERSION}) endif() message(STATUS "Found ROOT version: " ${ROOT_VERSION}) #---Define useful ROOT functions and macros (e.g. ROOT_GENERATE_DICTIONARY) include(${ROOT_USE_FILE}) -# explicitly tell the linker to use the EG library to resolve linker problems with TDatabasePDG::Instance() -set(DEFAULT_LINKER_FLAGS "-lEG") +SET(ROOT_VERSION_LEGACY 6.22.00) + +#---Create a shared library with geneated dictionary +add_library(Pluto SHARED ${SOURCES} ${CMAKE_BINARY_DIR}/Compiled.h) +add_library(Pluto::Pluto ALIAS Pluto) + +target_include_directories(Pluto + PUBLIC + $ + PRIVATE + $ + $ + ${CMAKE_BINARY_DIR} +) + +if (${ROOT_VERSION} VERSION_LESS ${ROOT_VERSION_LEGACY}) + include_directories(${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/include) +endif() + +file(WRITE ${CMAKE_BINARY_DIR}/Plugins.h) +file(WRITE ${CMAKE_BINARY_DIR}/Plugins.cc) +file(WRITE ${CMAKE_BINARY_DIR}/PluginLinkDef.h) + +# This macro prepares whole Plugin logic: +# - if 'PDistributionManager.mod.cc' file exists adds it to `Plugins.cc' +# - for each of SOURCES adds it as source to `Pluto` target +# - for each of HEADERS adds it to headers collection (should be improved) +# - installs include and macros (if exists) directories +# - appends CLASSES to `PluginLinkDef.h` +macro(add_plugin plugin_target) + set(options) + set(oneValueArgs) + set(multiValueArgs SOURCES HEADERS CLASSES) + cmake_parse_arguments(PLUGIN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} ) + + if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/PDistributionManager.mod.cc) + file(APPEND ${CMAKE_BINARY_DIR}/Plugins.cc "\#include \"${CMAKE_CURRENT_SOURCE_DIR}/PDistributionManager.mod.cc\"\n") + endif() + + foreach(f ${PLUGIN_SOURCES}) + target_sources(Pluto PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/${f}) + endforeach() + + foreach(f ${PLUGIN_HEADERS}) + list(APPEND PLUGIN_HEADERS_COLLECTION ${CMAKE_CURRENT_SOURCE_DIR}/${f}) + file(APPEND ${CMAKE_BINARY_DIR}/Plugins.h "\#include \"${CMAKE_CURRENT_SOURCE_DIR}/${f}\"\n") + endforeach() + + install(DIRECTORY include/ + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PLUTO_SLOT}/plugins + ) + + target_include_directories(Pluto + PUBLIC + $ + PRIVATE + $ + ) + if (${ROOT_VERSION} VERSION_LESS ${ROOT_VERSION_LEGACY}) + get_property(incdir DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES) + set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include;${incdir}") + endif() + + if (IS_DIRECTORY macros) + install(DIRECTORY macros/ + DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PLUTO_SLOT}/plugins/${plugin_target}) + endif() + + # dynamically generate source files and Plugins LinkDef + foreach(f ${PLUGIN_CLASSES}) + file(APPEND ${CMAKE_BINARY_DIR}/PluginLinkDef.h "\#pragma link C++ class ${f};\n") + endforeach() +endmacro() -##LIST(APPEND INCL_FILES ${PHDRS}) +add_subdirectory(plugins) -#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) -ROOT_GENERATE_DICTIONARY(G__Pluto ${INCL_FILES} LINKDEF PlutoLinkDef.h) +ROOT_GENERATE_DICTIONARY(G__Pluto MODULE Pluto ${PLUGIN_HEADERS_COLLECTION} ${HEADERS} Plugins.h LINKDEF PlutoLinkDef.h) #---Create a shared library with geneated dictionary -add_library(Pluto SHARED ${SOURCES} G__Pluto.cxx ${CMAKE_CURRENT_BINARY_DIR}/Compiled.h) -target_link_libraries(Pluto ${ROOT_LIBRARIES}) -#---Create a main program using the library -#add_executable(Main MainEvent.cxx) -#target_link_libraries(Main Event) +target_link_libraries(Pluto PRIVATE ROOT::Core ROOT::Tree ROOT::EG) + +########################################################### add_custom_target(Compiled.h) add_custom_command(OUTPUT Compiled.h COMMAND echo char *date_string = \\\(char*\\\) \\\"\$\$\(date +\"%e %B %Y\"\)\\\" > ${CMAKE_CURRENT_BINARY_DIR}/Compiled.h DEPENDS G__Pluto.cxx ${SOURCES}) - - -#add_custom_target(PluginLinkdef.h) +# Install logic +set(CMAKE_INSTALL_CMAKEDIR ${CMAKE_INSTALL_LIBDIR}/cmake/Pluto-${PROJECT_VERSION}) + +install(TARGETS Pluto + EXPORT PlutoTargets + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PLUTO_SLOT}) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/libPluto.rootmap + ${CMAKE_CURRENT_BINARY_DIR}/libPluto_rdict.pcm + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + +INSTALL(DIRECTORY macros/ + DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PLUTO_SLOT}) +INSTALL(DIRECTORY include/ + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PLUTO_SLOT}) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/libPluto.rootmap + ${CMAKE_CURRENT_BINARY_DIR}/libPluto_rdict.pcm + DESTINATION ${CMAKE_INSTALL_LIBDIR}) + +# Install Cionfig files +include(CMakePackageConfigHelpers) +configure_package_config_file(Config.cmake.in PlutoConfig.cmake + INSTALL_DESTINATION ${CMAKE_INSTALL_CMAKEDIR} + PATH_VARS CMAKE_INSTALL_INCLUDEDIR CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_BINDIR) + +write_basic_package_version_file(PlutoConfigVersion.cmake + VERSION ${PROJECT_VERSION} + COMPATIBILITY SameMajorVersion) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/PlutoConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/PlutoConfigVersion.cmake + DESTINATION ${CMAKE_INSTALL_CMAKEDIR}) + +# Create and install export/targets package +export(PACKAGE Pluto) + +# Add all targets to the build-tree export set +export(TARGETS Pluto + NAMESPACE Pluto + FILE PlutoTargets.cmake) + +install(EXPORT PlutoTargets + FILE PlutoTargets.cmake + NAMESPACE Pluto:: + DESTINATION ${CMAKE_INSTALL_CMAKEDIR}) diff --git a/Config.cmake.in b/Config.cmake.in new file mode 100644 index 0000000..ba045d1 --- /dev/null +++ b/Config.cmake.in @@ -0,0 +1,4 @@ +include(CMakeFindDependencyMacro) + +find_dependency(ROOT QUIET REQUIRED COMPONENTS Core EG Hist Physics Tree) +include(${CMAKE_CURRENT_LIST_DIR}/PlutoTargets.cmake) diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 8795100..e58a2d0 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -1,21 +1,23 @@ cmake_minimum_required(VERSION 3.0 FATAL_ERROR) -add_subdirectory(eta_decays) -add_subdirectory(w_decays) -add_subdirectory(strangeness) -add_subdirectory(pion_beam) add_subdirectory(beamline) -add_subdirectory(pdg_unigen) -add_subdirectory(tools) -add_subdirectory(scatter_mod) -add_subdirectory(fairroot) -add_subdirectory(elementary) -add_subdirectory(dalitz_mod) add_subdirectory(brems) +add_subdirectory(dalitz_mod) +add_subdirectory(elementary) +add_subdirectory(eta_decays) +add_subdirectory(fairroot) add_subdirectory(hades) +add_subdirectory(mesons) add_subdirectory(nucleus_fermi) +add_subdirectory(pdg_unigen) +add_subdirectory(pion_beam) +add_subdirectory(scatter_mod) +add_subdirectory(strangeness) +add_subdirectory(tools) +add_subdirectory(w_decays) SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) +SET(PLUGIN_SOURCES_COLLECTION "${PLUGIN_SOURCES_COLLECTION}" PARENT_SCOPE) +SET(PLUGIN_HEADERS_COLLECTION "${PLUGIN_HEADERS_COLLECTION}" PARENT_SCOPE) diff --git a/plugins/beamline/CMakeLists.txt b/plugins/beamline/CMakeLists.txt index dc872ba..6b4ad76 100644 --- a/plugins/beamline/CMakeLists.txt +++ b/plugins/beamline/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PBeamLineSimulation) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(beamline SOURCES src/PBeamLineSimulation.cc HEADERS include/PBeamLineSimulation.h CLASSES PBeamLineSimulation) diff --git a/plugins/beamline/PBeamLineSimulation.h b/plugins/beamline/include/PBeamLineSimulation.h similarity index 100% rename from plugins/beamline/PBeamLineSimulation.h rename to plugins/beamline/include/PBeamLineSimulation.h diff --git a/plugins/beamline/dummy_macro.C b/plugins/beamline/macros/dummy_macro.C similarity index 100% rename from plugins/beamline/dummy_macro.C rename to plugins/beamline/macros/dummy_macro.C diff --git a/plugins/beamline/piony.C b/plugins/beamline/macros/piony.C similarity index 100% rename from plugins/beamline/piony.C rename to plugins/beamline/macros/piony.C diff --git a/plugins/beamline/rootlogon.C b/plugins/beamline/macros/rootlogon.C similarity index 100% rename from plugins/beamline/rootlogon.C rename to plugins/beamline/macros/rootlogon.C diff --git a/plugins/beamline/PBeamLineSimulation.cc b/plugins/beamline/src/PBeamLineSimulation.cc similarity index 100% rename from plugins/beamline/PBeamLineSimulation.cc rename to plugins/beamline/src/PBeamLineSimulation.cc diff --git a/plugins/brems/CMakeLists.txt b/plugins/brems/CMakeLists.txt index 30ec24f..b74b22f 100644 --- a/plugins/brems/CMakeLists.txt +++ b/plugins/brems/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PBremsstrahlung PBremsstrahlungPlugin) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(brems SOURCES src/PBremsstrahlung.cc src/PBremsstrahlungPlugin.cc HEADERS include/PBremsstrahlung.h include/PBremsstrahlungPlugin.h CLASSES PBremsstrahlung PBremsstrahlungPlugin) diff --git a/plugins/brems/PBremsstrahlung.h b/plugins/brems/include/PBremsstrahlung.h similarity index 100% rename from plugins/brems/PBremsstrahlung.h rename to plugins/brems/include/PBremsstrahlung.h diff --git a/plugins/brems/PBremsstrahlungPlugin.h b/plugins/brems/include/PBremsstrahlungPlugin.h similarity index 97% rename from plugins/brems/PBremsstrahlungPlugin.h rename to plugins/brems/include/PBremsstrahlungPlugin.h index bb77bf9..4a7f093 100644 --- a/plugins/brems/PBremsstrahlungPlugin.h +++ b/plugins/brems/include/PBremsstrahlungPlugin.h @@ -15,7 +15,7 @@ #include "PBremsstrahlung.h" #include "PInclusiveModel.h" -#include "../elementary/PNNFSI.h" +#include "PNNFSI.h" #include "PArray.h" using namespace std; diff --git a/plugins/brems/PBremsstrahlung.cc b/plugins/brems/src/PBremsstrahlung.cc similarity index 100% rename from plugins/brems/PBremsstrahlung.cc rename to plugins/brems/src/PBremsstrahlung.cc diff --git a/plugins/brems/PBremsstrahlungPlugin.cc b/plugins/brems/src/PBremsstrahlungPlugin.cc similarity index 100% rename from plugins/brems/PBremsstrahlungPlugin.cc rename to plugins/brems/src/PBremsstrahlungPlugin.cc diff --git a/plugins/dalitz_mod/CMakeLists.txt b/plugins/dalitz_mod/CMakeLists.txt index e28d96c..fd1a0ae 100644 --- a/plugins/dalitz_mod/CMakeLists.txt +++ b/plugins/dalitz_mod/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PDalitzModPlugin PDeltaDalitzFF PDeltaDalitzKrivoruchenko PResonanceDalitz) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(dalitz_mod SOURCES src/PDalitzModPlugin.cc src/PDeltaDalitzFF.cc src/PDeltaDalitzKrivoruchenko.cc src/PResonanceDalitz.cc HEADERS include/PDalitzModPlugin.h include/PDeltaDalitzFF.h include/PDeltaDalitzKrivoruchenko.h include/PResonanceDalitz.h CLASSES PDalitzModPlugin PDeltaDalitzFF PDeltaDalitzKrivoruchenko PResonanceDalitz) diff --git a/plugins/dalitz_mod/PDalitzModPlugin.h b/plugins/dalitz_mod/include/PDalitzModPlugin.h similarity index 100% rename from plugins/dalitz_mod/PDalitzModPlugin.h rename to plugins/dalitz_mod/include/PDalitzModPlugin.h diff --git a/plugins/dalitz_mod/PDeltaDalitzFF.h b/plugins/dalitz_mod/include/PDeltaDalitzFF.h similarity index 100% rename from plugins/dalitz_mod/PDeltaDalitzFF.h rename to plugins/dalitz_mod/include/PDeltaDalitzFF.h diff --git a/plugins/dalitz_mod/PDeltaDalitzKrivoruchenko.h b/plugins/dalitz_mod/include/PDeltaDalitzKrivoruchenko.h similarity index 100% rename from plugins/dalitz_mod/PDeltaDalitzKrivoruchenko.h rename to plugins/dalitz_mod/include/PDeltaDalitzKrivoruchenko.h diff --git a/plugins/dalitz_mod/PResonanceDalitz.h b/plugins/dalitz_mod/include/PResonanceDalitz.h similarity index 100% rename from plugins/dalitz_mod/PResonanceDalitz.h rename to plugins/dalitz_mod/include/PResonanceDalitz.h diff --git a/plugins/dalitz_mod/PDalitzModPlugin.cc b/plugins/dalitz_mod/src/PDalitzModPlugin.cc similarity index 100% rename from plugins/dalitz_mod/PDalitzModPlugin.cc rename to plugins/dalitz_mod/src/PDalitzModPlugin.cc diff --git a/plugins/dalitz_mod/PDeltaDalitzFF.cc b/plugins/dalitz_mod/src/PDeltaDalitzFF.cc similarity index 100% rename from plugins/dalitz_mod/PDeltaDalitzFF.cc rename to plugins/dalitz_mod/src/PDeltaDalitzFF.cc diff --git a/plugins/dalitz_mod/PDeltaDalitzKrivoruchenko.cc b/plugins/dalitz_mod/src/PDeltaDalitzKrivoruchenko.cc similarity index 100% rename from plugins/dalitz_mod/PDeltaDalitzKrivoruchenko.cc rename to plugins/dalitz_mod/src/PDeltaDalitzKrivoruchenko.cc diff --git a/plugins/dalitz_mod/PResonanceDalitz.cc b/plugins/dalitz_mod/src/PResonanceDalitz.cc similarity index 100% rename from plugins/dalitz_mod/PResonanceDalitz.cc rename to plugins/dalitz_mod/src/PResonanceDalitz.cc diff --git a/plugins/elementary/CMakeLists.txt b/plugins/elementary/CMakeLists.txt index a32dbdf..576a668 100644 --- a/plugins/elementary/CMakeLists.txt +++ b/plugins/elementary/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PElementaryPlugin PNNFSI) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(elementary SOURCES src/PElementaryPlugin.cc src/PNNFSI.cc HEADERS include/PElementaryPlugin.h include/PNNFSI.h CLASSES PElementaryPlugin PNNFSI) diff --git a/plugins/elementary/PElementaryPlugin.h b/plugins/elementary/include/PElementaryPlugin.h similarity index 100% rename from plugins/elementary/PElementaryPlugin.h rename to plugins/elementary/include/PElementaryPlugin.h diff --git a/plugins/elementary/PNNFSI.h b/plugins/elementary/include/PNNFSI.h similarity index 100% rename from plugins/elementary/PNNFSI.h rename to plugins/elementary/include/PNNFSI.h diff --git a/plugins/elementary/PElementaryPlugin.cc b/plugins/elementary/src/PElementaryPlugin.cc similarity index 100% rename from plugins/elementary/PElementaryPlugin.cc rename to plugins/elementary/src/PElementaryPlugin.cc diff --git a/plugins/elementary/PNNFSI.cc b/plugins/elementary/src/PNNFSI.cc similarity index 100% rename from plugins/elementary/PNNFSI.cc rename to plugins/elementary/src/PNNFSI.cc diff --git a/plugins/eta_decays/CMakeLists.txt b/plugins/eta_decays/CMakeLists.txt index d81c178..63eea15 100644 --- a/plugins/eta_decays/CMakeLists.txt +++ b/plugins/eta_decays/CMakeLists.txt @@ -1,22 +1 @@ -set(LOCAL_CLASSES PEtaDecaysPlugin PEtaDoubleDalitz PEtaDoubleDalitzFF PEtaDoubleDalitzEnv PEtaPiPiGamma PEtaPiPiDilepton PEtaPiPiDileptonMass) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -#addprefix(LOCAL_PLUGIN_CLASSES ${CMAKE_CURRENT_SOURCE_DIR} ${LOCAL_CLASSES}) -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -#addprefix(LOCAL_COLLECTION ${CMAKE_CURRENT_SOURCE_DIR} ${LOCAL_COLLECTION}) -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(eta_decays SOURCES src/PEtaDecaysPlugin.cc src/PEtaDoubleDalitz.cc src/PEtaDoubleDalitzEnv.cc src/PEtaDoubleDalitzFF.cc src/PEtaPiPiDilepton.cc src/PEtaPiPiDileptonMass.cc src/PEtaPiPiGamma.cc HEADERS include/PEtaDecaysPlugin.h include/PEtaDoubleDalitzEnv.h include/PEtaDoubleDalitzFF.h include/PEtaDoubleDalitz.h include/PEtaPiPiDilepton.h include/PEtaPiPiDileptonMass.h include/PEtaPiPiGamma.h CLASSES PEtaDecaysPlugin PEtaDoubleDalitz PEtaDoubleDalitzFF PEtaDoubleDalitzEnv PEtaPiPiGamma PEtaPiPiDilepton PEtaPiPiDileptonMass) diff --git a/plugins/eta_decays/PEtaDecaysPlugin.h b/plugins/eta_decays/include/PEtaDecaysPlugin.h similarity index 100% rename from plugins/eta_decays/PEtaDecaysPlugin.h rename to plugins/eta_decays/include/PEtaDecaysPlugin.h diff --git a/plugins/eta_decays/PEtaDoubleDalitz.h b/plugins/eta_decays/include/PEtaDoubleDalitz.h similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitz.h rename to plugins/eta_decays/include/PEtaDoubleDalitz.h diff --git a/plugins/eta_decays/PEtaDoubleDalitzEnv.h b/plugins/eta_decays/include/PEtaDoubleDalitzEnv.h similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitzEnv.h rename to plugins/eta_decays/include/PEtaDoubleDalitzEnv.h diff --git a/plugins/eta_decays/PEtaDoubleDalitzFF.h b/plugins/eta_decays/include/PEtaDoubleDalitzFF.h similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitzFF.h rename to plugins/eta_decays/include/PEtaDoubleDalitzFF.h diff --git a/plugins/eta_decays/PEtaPiPiDilepton.h b/plugins/eta_decays/include/PEtaPiPiDilepton.h similarity index 100% rename from plugins/eta_decays/PEtaPiPiDilepton.h rename to plugins/eta_decays/include/PEtaPiPiDilepton.h diff --git a/plugins/eta_decays/PEtaPiPiDileptonMass.h b/plugins/eta_decays/include/PEtaPiPiDileptonMass.h similarity index 100% rename from plugins/eta_decays/PEtaPiPiDileptonMass.h rename to plugins/eta_decays/include/PEtaPiPiDileptonMass.h diff --git a/plugins/eta_decays/PEtaPiPiGamma.h b/plugins/eta_decays/include/PEtaPiPiGamma.h similarity index 100% rename from plugins/eta_decays/PEtaPiPiGamma.h rename to plugins/eta_decays/include/PEtaPiPiGamma.h diff --git a/plugins/eta_decays/PEtaDecaysPlugin.cc b/plugins/eta_decays/src/PEtaDecaysPlugin.cc similarity index 100% rename from plugins/eta_decays/PEtaDecaysPlugin.cc rename to plugins/eta_decays/src/PEtaDecaysPlugin.cc diff --git a/plugins/eta_decays/PEtaDoubleDalitz.cc b/plugins/eta_decays/src/PEtaDoubleDalitz.cc similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitz.cc rename to plugins/eta_decays/src/PEtaDoubleDalitz.cc diff --git a/plugins/eta_decays/PEtaDoubleDalitzEnv.cc b/plugins/eta_decays/src/PEtaDoubleDalitzEnv.cc similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitzEnv.cc rename to plugins/eta_decays/src/PEtaDoubleDalitzEnv.cc diff --git a/plugins/eta_decays/PEtaDoubleDalitzFF.cc b/plugins/eta_decays/src/PEtaDoubleDalitzFF.cc similarity index 100% rename from plugins/eta_decays/PEtaDoubleDalitzFF.cc rename to plugins/eta_decays/src/PEtaDoubleDalitzFF.cc diff --git a/plugins/eta_decays/PEtaPiPiDilepton.cc b/plugins/eta_decays/src/PEtaPiPiDilepton.cc similarity index 100% rename from plugins/eta_decays/PEtaPiPiDilepton.cc rename to plugins/eta_decays/src/PEtaPiPiDilepton.cc diff --git a/plugins/eta_decays/PEtaPiPiDileptonMass.cc b/plugins/eta_decays/src/PEtaPiPiDileptonMass.cc similarity index 100% rename from plugins/eta_decays/PEtaPiPiDileptonMass.cc rename to plugins/eta_decays/src/PEtaPiPiDileptonMass.cc diff --git a/plugins/eta_decays/PEtaPiPiGamma.cc b/plugins/eta_decays/src/PEtaPiPiGamma.cc similarity index 100% rename from plugins/eta_decays/PEtaPiPiGamma.cc rename to plugins/eta_decays/src/PEtaPiPiGamma.cc diff --git a/plugins/fairroot/CMakeLists.txt b/plugins/fairroot/CMakeLists.txt index 63774ab..d19bda9 100644 --- a/plugins/fairroot/CMakeLists.txt +++ b/plugins/fairroot/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PFairGenerator) -set(LOCAL_COLLECTION ) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(fairroot SOURCES src/PFairGenerator.cc HEADERS include/PFairGenerator.h CLASSES PFairGenerator) diff --git a/plugins/fairroot/PFairGenerator.h b/plugins/fairroot/include/PFairGenerator.h similarity index 100% rename from plugins/fairroot/PFairGenerator.h rename to plugins/fairroot/include/PFairGenerator.h diff --git a/plugins/fairroot/PFairGenerator.cc b/plugins/fairroot/src/PFairGenerator.cc similarity index 100% rename from plugins/fairroot/PFairGenerator.cc rename to plugins/fairroot/src/PFairGenerator.cc diff --git a/plugins/hades/CMakeLists.txt b/plugins/hades/CMakeLists.txt index 13e9303..6d42668 100644 --- a/plugins/hades/CMakeLists.txt +++ b/plugins/hades/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PHadesParticleSmearer PHGeantOutput PHUrCollisionHeader PHUrEventHeader PHUrParticle PHUrAddon PHUrDilep PHUrReader) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(hades SOURCES src/PHGeantOutput.cc src/PHUrCollisionHeader.cc src/PHUrEventHeader.cc src/PHUrReader.cc src/PHadesParticleSmearer.cc src/PHUrAddon.cc src/PHUrDilep.cc src/PHUrParticle.cc HEADERS include/PHadesParticleSmearer.h include/PHGeantOutput.h include/PHUrAddon.h include/PHUrCollisionHeader.h include/PHUrDilep.h include/PHUrEventHeader.h include/PHUrParticle.h include/PHUrReader.h CLASSES PHadesParticleSmearer PHGeantOutput PHUrCollisionHeader PHUrEventHeader PHUrParticle PHUrAddon PHUrDilep PHUrReader) diff --git a/plugins/hades/PHGeantOutput.h b/plugins/hades/include/PHGeantOutput.h similarity index 100% rename from plugins/hades/PHGeantOutput.h rename to plugins/hades/include/PHGeantOutput.h diff --git a/plugins/hades/PHUrAddon.h b/plugins/hades/include/PHUrAddon.h similarity index 100% rename from plugins/hades/PHUrAddon.h rename to plugins/hades/include/PHUrAddon.h diff --git a/plugins/hades/PHUrCollisionHeader.h b/plugins/hades/include/PHUrCollisionHeader.h similarity index 100% rename from plugins/hades/PHUrCollisionHeader.h rename to plugins/hades/include/PHUrCollisionHeader.h diff --git a/plugins/hades/PHUrDilep.h b/plugins/hades/include/PHUrDilep.h similarity index 100% rename from plugins/hades/PHUrDilep.h rename to plugins/hades/include/PHUrDilep.h diff --git a/plugins/hades/PHUrEventHeader.h b/plugins/hades/include/PHUrEventHeader.h similarity index 100% rename from plugins/hades/PHUrEventHeader.h rename to plugins/hades/include/PHUrEventHeader.h diff --git a/plugins/hades/PHUrParticle.h b/plugins/hades/include/PHUrParticle.h similarity index 100% rename from plugins/hades/PHUrParticle.h rename to plugins/hades/include/PHUrParticle.h diff --git a/plugins/hades/PHUrReader.h b/plugins/hades/include/PHUrReader.h similarity index 100% rename from plugins/hades/PHUrReader.h rename to plugins/hades/include/PHUrReader.h diff --git a/plugins/hades/PHadesParticleSmearer.h b/plugins/hades/include/PHadesParticleSmearer.h similarity index 100% rename from plugins/hades/PHadesParticleSmearer.h rename to plugins/hades/include/PHadesParticleSmearer.h diff --git a/plugins/hades/makeEmbeddedParticlesVertexHGeant.C b/plugins/hades/macros/makeEmbeddedParticlesVertexHGeant.C similarity index 100% rename from plugins/hades/makeEmbeddedParticlesVertexHGeant.C rename to plugins/hades/macros/makeEmbeddedParticlesVertexHGeant.C diff --git a/plugins/hades/urqmd_f15_input.C b/plugins/hades/macros/urqmd_f15_input.C similarity index 100% rename from plugins/hades/urqmd_f15_input.C rename to plugins/hades/macros/urqmd_f15_input.C diff --git a/plugins/hades/PHGeantOutput.cc b/plugins/hades/src/PHGeantOutput.cc similarity index 100% rename from plugins/hades/PHGeantOutput.cc rename to plugins/hades/src/PHGeantOutput.cc diff --git a/plugins/hades/PHUrAddon.cc b/plugins/hades/src/PHUrAddon.cc similarity index 100% rename from plugins/hades/PHUrAddon.cc rename to plugins/hades/src/PHUrAddon.cc diff --git a/plugins/hades/PHUrCollisionHeader.cc b/plugins/hades/src/PHUrCollisionHeader.cc similarity index 100% rename from plugins/hades/PHUrCollisionHeader.cc rename to plugins/hades/src/PHUrCollisionHeader.cc diff --git a/plugins/hades/PHUrDilep.cc b/plugins/hades/src/PHUrDilep.cc similarity index 100% rename from plugins/hades/PHUrDilep.cc rename to plugins/hades/src/PHUrDilep.cc diff --git a/plugins/hades/PHUrEventHeader.cc b/plugins/hades/src/PHUrEventHeader.cc similarity index 100% rename from plugins/hades/PHUrEventHeader.cc rename to plugins/hades/src/PHUrEventHeader.cc diff --git a/plugins/hades/PHUrParticle.cc b/plugins/hades/src/PHUrParticle.cc similarity index 100% rename from plugins/hades/PHUrParticle.cc rename to plugins/hades/src/PHUrParticle.cc diff --git a/plugins/hades/PHUrReader.cc b/plugins/hades/src/PHUrReader.cc similarity index 100% rename from plugins/hades/PHUrReader.cc rename to plugins/hades/src/PHUrReader.cc diff --git a/plugins/hades/PHadesParticleSmearer.cc b/plugins/hades/src/PHadesParticleSmearer.cc similarity index 100% rename from plugins/hades/PHadesParticleSmearer.cc rename to plugins/hades/src/PHadesParticleSmearer.cc diff --git a/plugins/mesons/CMakeLists.txt b/plugins/mesons/CMakeLists.txt new file mode 100644 index 0000000..9dbd53b --- /dev/null +++ b/plugins/mesons/CMakeLists.txt @@ -0,0 +1 @@ +add_plugin(mesons SOURCES src/PMesonsPlugin.cc HEADERS include/PMesonsPlugin.h CLASSES PMesonsPlugin) diff --git a/plugins/mesons/PDistributionManager.mod.cc b/plugins/mesons/PDistributionManager.mod.cc new file mode 100644 index 0000000..76fbefe --- /dev/null +++ b/plugins/mesons/PDistributionManager.mod.cc @@ -0,0 +1,7 @@ +//this line is added to the PDistributionManager.cc + +PMesonsPlugin *mesons = new PMesonsPlugin("mesons", "Mesons extension"); +AddPlugin(mesons); +Enable("mesons"); +PluginInfo("Various mesons available"); + diff --git a/plugins/mesons/README b/plugins/mesons/README new file mode 100644 index 0000000..67b4d55 --- /dev/null +++ b/plugins/mesons/README @@ -0,0 +1,2 @@ +Plugin to add new particles with mesons and their decays +@@PMesonsPlugin.html diff --git a/plugins/mesons/include/PMesonsPlugin.h b/plugins/mesons/include/PMesonsPlugin.h new file mode 100644 index 0000000..4db6e76 --- /dev/null +++ b/plugins/mesons/include/PMesonsPlugin.h @@ -0,0 +1,35 @@ +// Author: R. Lalik +// Written: 12.06.2023 +// Revised: +// + +#ifndef _PMESONS_PLUGIN_H_ +#define _PMESONS_PLUGIN_H_ + +#include "TROOT.h" + +#include "PChannelModel.h" +#include "PDistributionManagerUtil.h" +#include "PDistributionCollection.h" + +using namespace std; + +class PMesonsPlugin : public PDistributionCollection { +public: + PMesonsPlugin(const Char_t *id, const Char_t *de); + ~PMesonsPlugin(); + + Bool_t ExecCommand(const char *command, Double_t value); + Bool_t Activate(void); + + static void EnableExperimentalDecays(Bool_t enabled) { experimental_decays = enabled; } + +private: + Int_t is_initialized; + + static Bool_t experimental_decays; + + ClassDef(PMesonsPlugin, 0) //Plugin to add new particles with mesons and their decays +}; + +#endif //_PMESONS_PLUGIN_H_ diff --git a/plugins/mesons/src/PMesonsPlugin.cc b/plugins/mesons/src/PMesonsPlugin.cc new file mode 100644 index 0000000..07e7be2 --- /dev/null +++ b/plugins/mesons/src/PMesonsPlugin.cc @@ -0,0 +1,98 @@ +///////////////////////////////////////////////////////////////////// +//Plugin to add the mesons particles Lambda(1405) and Sigma(1385) +// +//Pids are 70-73 +// +//This plugin is automatically enabled. If you don't like it, call +//makeDistributionManager()->Disable("mesons"); +//in the very beginning of your macro +// +////////////////////////////////////////////////////////////////////// + +#include "PMesonsPlugin.h" + +#include "PDistributionManager.h" +#include "PResonanceDalitz.h" + +Bool_t PMesonsPlugin::experimental_decays{kFALSE}; + +PMesonsPlugin::PMesonsPlugin(const Char_t *id, const Char_t *de): + PDistributionCollection(id, de) { + is_initialized = 0; + // RequiresPlugin("elementary"); +} + +Bool_t PMesonsPlugin::Activate(void) { + return kTRUE; +} + +PMesonsPlugin::~PMesonsPlugin() { +} + + +Bool_t PMesonsPlugin::ExecCommand(const char *command, Double_t) { + + if (strcmp (command,"init") == 0) { + if (!is_initialized) { + is_initialized = 1; + + Double_t *system_alloc_verbosity = makeStaticData()->GetBatchValue("_system_alloc_verbosity"); + Double_t old = (*system_alloc_verbosity); + (*system_alloc_verbosity) = 0; + + if (makeStaticData()->AddParticle(117, "X17", 0.017) > 0) { + // makeStaticData()->AddAlias("X17","x17"); + makeStaticData()->SetParticleTotalWidth("X17", 6.582122e-25/4e-14); + makeStaticData()->SetParticleParity("X17", 1); + + if (experimental_decays) { + makeStaticData()->AddDecay("X17 --> e+ + e-", "X17", "e+,e-", 1); + makeStaticData()->AddDecay("eta --> pi+ + pi- + X17", "eta", "pi+,pi-,X17", 0.001); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + if (makeStaticData()->AddParticle(-1, "f1", 1.2819) > 0) { + makeStaticData()->AddAlias("f1", "f1(1285)"); + makeStaticData()->SetParticleTotalWidth("f1", 0.0227); + makeStaticData()->SetParticleMeson("f1", 1); + makeStaticData()->SetParticleSpin("f1", 1); + makeStaticData()->SetParticleParity("f1", 1); + makeStaticData()->SetParticleCharge("f1", 0); + makeStaticData()->SetParticleIsospin("f1", 0); + + makeStaticData()->AddDecay("f1 --> pi+ + pi- + eta", "f1", "pi+,pi-,eta", 0.35); + makeStaticData()->AddDecay("f1 --> 2pi0 + pi+ + pi-", "f1", "pi+,pi-,pi0,pi0", 0.218); + makeStaticData()->AddDecay("f1 --> 2pi+ + 2pi-", "f1", "pi+,pi-,pi+,pi-", 0.109); + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + if (makeStaticData()->AddParticle(-1, "eta1295", 1.294) > 0) { + makeStaticData()->AddAlias("eta1295", "eta(1295)"); + makeStaticData()->SetParticleTotalWidth("eta1295", 0.055); + makeStaticData()->SetParticleMeson("eta1295", 1); + makeStaticData()->SetParticleSpin("eta1295", 0); + makeStaticData()->SetParticleParity("eta1295", -1); + makeStaticData()->SetParticleCharge("eta1295", 0); + makeStaticData()->SetParticleIsospin("eta1295", 0); + + makeStaticData()->AddDecay("eta1295 --> pi+ + pi- + eta", "eta1295", "pi+,pi-,eta", 1.0); + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + if (experimental_decays) { + makeStaticData()->AddDecay("eta --> pi0 + g + g", "eta", "pi0,g,g", 2.5e-4); + } + (*system_alloc_verbosity) = old; + } + return kTRUE; + } + + return kFALSE; +} + + +ClassImp(PMesonsPlugin) diff --git a/plugins/nucleus_fermi/CMakeLists.txt b/plugins/nucleus_fermi/CMakeLists.txt index b837baf..2ae1c95 100644 --- a/plugins/nucleus_fermi/CMakeLists.txt +++ b/plugins/nucleus_fermi/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PFermiDistributions PFermiMomentumGA PNucleusFermiPlugin) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(nucleus_fermi SOURCES src/PFermiDistributions.cc src/PFermiMomentumGA.cc src/PNucleusFermiPlugin.cc HEADERS include/PFermiDistributions.h include/PFermiMomentumGA.h include/PNucleusFermiPlugin.h CLASSES PFermiDistributions PFermiMomentumGA PNucleusFermiPlugin) diff --git a/plugins/nucleus_fermi/PFermiDistributions.h b/plugins/nucleus_fermi/include/PFermiDistributions.h similarity index 100% rename from plugins/nucleus_fermi/PFermiDistributions.h rename to plugins/nucleus_fermi/include/PFermiDistributions.h diff --git a/plugins/nucleus_fermi/PFermiMomentumGA.h b/plugins/nucleus_fermi/include/PFermiMomentumGA.h similarity index 100% rename from plugins/nucleus_fermi/PFermiMomentumGA.h rename to plugins/nucleus_fermi/include/PFermiMomentumGA.h diff --git a/plugins/nucleus_fermi/PNucleusFermiPlugin.h b/plugins/nucleus_fermi/include/PNucleusFermiPlugin.h similarity index 100% rename from plugins/nucleus_fermi/PNucleusFermiPlugin.h rename to plugins/nucleus_fermi/include/PNucleusFermiPlugin.h diff --git a/plugins/nucleus_fermi/C12_breakup_macro.C b/plugins/nucleus_fermi/macros/C12_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/C12_breakup_macro.C rename to plugins/nucleus_fermi/macros/C12_breakup_macro.C diff --git a/plugins/nucleus_fermi/Ca40_breakup_macro.C b/plugins/nucleus_fermi/macros/Ca40_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/Ca40_breakup_macro.C rename to plugins/nucleus_fermi/macros/Ca40_breakup_macro.C diff --git a/plugins/nucleus_fermi/DrawAllFermiDistributions.C b/plugins/nucleus_fermi/macros/DrawAllFermiDistributions.C similarity index 100% rename from plugins/nucleus_fermi/DrawAllFermiDistributions.C rename to plugins/nucleus_fermi/macros/DrawAllFermiDistributions.C diff --git a/plugins/nucleus_fermi/He3_breakup_macro.C b/plugins/nucleus_fermi/macros/He3_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/He3_breakup_macro.C rename to plugins/nucleus_fermi/macros/He3_breakup_macro.C diff --git a/plugins/nucleus_fermi/He4_breakup_macro.C b/plugins/nucleus_fermi/macros/He4_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/He4_breakup_macro.C rename to plugins/nucleus_fermi/macros/He4_breakup_macro.C diff --git a/plugins/nucleus_fermi/KineticRecoilEnergy.C b/plugins/nucleus_fermi/macros/KineticRecoilEnergy.C similarity index 100% rename from plugins/nucleus_fermi/KineticRecoilEnergy.C rename to plugins/nucleus_fermi/macros/KineticRecoilEnergy.C diff --git a/plugins/nucleus_fermi/Li7_breakup_macro.C b/plugins/nucleus_fermi/macros/Li7_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/Li7_breakup_macro.C rename to plugins/nucleus_fermi/macros/Li7_breakup_macro.C diff --git a/plugins/nucleus_fermi/Nb93_breakup_macro.C b/plugins/nucleus_fermi/macros/Nb93_breakup_macro.C similarity index 100% rename from plugins/nucleus_fermi/Nb93_breakup_macro.C rename to plugins/nucleus_fermi/macros/Nb93_breakup_macro.C diff --git a/plugins/nucleus_fermi/analyze_g12C.C b/plugins/nucleus_fermi/macros/analyze_g12C.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g12C.C rename to plugins/nucleus_fermi/macros/analyze_g12C.C diff --git a/plugins/nucleus_fermi/analyze_g3He.C b/plugins/nucleus_fermi/macros/analyze_g3He.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g3He.C rename to plugins/nucleus_fermi/macros/analyze_g3He.C diff --git a/plugins/nucleus_fermi/analyze_g40Ca.C b/plugins/nucleus_fermi/macros/analyze_g40Ca.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g40Ca.C rename to plugins/nucleus_fermi/macros/analyze_g40Ca.C diff --git a/plugins/nucleus_fermi/analyze_g4He.C b/plugins/nucleus_fermi/macros/analyze_g4He.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g4He.C rename to plugins/nucleus_fermi/macros/analyze_g4He.C diff --git a/plugins/nucleus_fermi/analyze_g7Li.C b/plugins/nucleus_fermi/macros/analyze_g7Li.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g7Li.C rename to plugins/nucleus_fermi/macros/analyze_g7Li.C diff --git a/plugins/nucleus_fermi/analyze_g93Nb.C b/plugins/nucleus_fermi/macros/analyze_g93Nb.C similarity index 100% rename from plugins/nucleus_fermi/analyze_g93Nb.C rename to plugins/nucleus_fermi/macros/analyze_g93Nb.C diff --git a/plugins/nucleus_fermi/fermi_rescattering.C b/plugins/nucleus_fermi/macros/fermi_rescattering.C similarity index 100% rename from plugins/nucleus_fermi/fermi_rescattering.C rename to plugins/nucleus_fermi/macros/fermi_rescattering.C diff --git a/plugins/nucleus_fermi/proton_Li7_macro.C b/plugins/nucleus_fermi/macros/proton_Li7_macro.C similarity index 100% rename from plugins/nucleus_fermi/proton_Li7_macro.C rename to plugins/nucleus_fermi/macros/proton_Li7_macro.C diff --git a/plugins/nucleus_fermi/rootlogon.C b/plugins/nucleus_fermi/macros/rootlogon.C similarity index 100% rename from plugins/nucleus_fermi/rootlogon.C rename to plugins/nucleus_fermi/macros/rootlogon.C diff --git a/plugins/nucleus_fermi/PFermiDistributions.cc b/plugins/nucleus_fermi/src/PFermiDistributions.cc similarity index 100% rename from plugins/nucleus_fermi/PFermiDistributions.cc rename to plugins/nucleus_fermi/src/PFermiDistributions.cc diff --git a/plugins/nucleus_fermi/PFermiMomentumGA.cc b/plugins/nucleus_fermi/src/PFermiMomentumGA.cc similarity index 100% rename from plugins/nucleus_fermi/PFermiMomentumGA.cc rename to plugins/nucleus_fermi/src/PFermiMomentumGA.cc diff --git a/plugins/nucleus_fermi/PNucleusFermiPlugin.cc b/plugins/nucleus_fermi/src/PNucleusFermiPlugin.cc similarity index 100% rename from plugins/nucleus_fermi/PNucleusFermiPlugin.cc rename to plugins/nucleus_fermi/src/PNucleusFermiPlugin.cc diff --git a/plugins/pdg_unigen/CMakeLists.txt b/plugins/pdg_unigen/CMakeLists.txt index 03e0028..76eabeb 100644 --- a/plugins/pdg_unigen/CMakeLists.txt +++ b/plugins/pdg_unigen/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES UEvent UParticle URun PUniGenInput PPDGPlugin) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(pdg_unigen SOURCES src/PPDGPlugin.cc src/PUniGenInput.cc src/UEvent.cc src/UParticle.cc src/URun.cc HEADERS include/PPDGPlugin.h include/PUniGenInput.h include/UEvent.h include/UParticle.h include/URun.h CLASSES UEvent UParticle URun PUniGenInput PPDGPlugin) diff --git a/plugins/pdg_unigen/PPDGPlugin.h b/plugins/pdg_unigen/include/PPDGPlugin.h similarity index 100% rename from plugins/pdg_unigen/PPDGPlugin.h rename to plugins/pdg_unigen/include/PPDGPlugin.h diff --git a/plugins/pdg_unigen/PUniGenInput.h b/plugins/pdg_unigen/include/PUniGenInput.h similarity index 100% rename from plugins/pdg_unigen/PUniGenInput.h rename to plugins/pdg_unigen/include/PUniGenInput.h diff --git a/plugins/pdg_unigen/UEvent.h b/plugins/pdg_unigen/include/UEvent.h similarity index 100% rename from plugins/pdg_unigen/UEvent.h rename to plugins/pdg_unigen/include/UEvent.h diff --git a/plugins/pdg_unigen/UParticle.h b/plugins/pdg_unigen/include/UParticle.h similarity index 100% rename from plugins/pdg_unigen/UParticle.h rename to plugins/pdg_unigen/include/UParticle.h diff --git a/plugins/pdg_unigen/URun.h b/plugins/pdg_unigen/include/URun.h similarity index 100% rename from plugins/pdg_unigen/URun.h rename to plugins/pdg_unigen/include/URun.h diff --git a/plugins/pdg_unigen/unigen_input.C b/plugins/pdg_unigen/macros/unigen_input.C similarity index 100% rename from plugins/pdg_unigen/unigen_input.C rename to plugins/pdg_unigen/macros/unigen_input.C diff --git a/plugins/pdg_unigen/using_pdg_code.C b/plugins/pdg_unigen/macros/using_pdg_code.C similarity index 100% rename from plugins/pdg_unigen/using_pdg_code.C rename to plugins/pdg_unigen/macros/using_pdg_code.C diff --git a/plugins/pdg_unigen/PPDGPlugin.cc b/plugins/pdg_unigen/src/PPDGPlugin.cc similarity index 100% rename from plugins/pdg_unigen/PPDGPlugin.cc rename to plugins/pdg_unigen/src/PPDGPlugin.cc diff --git a/plugins/pdg_unigen/PUniGenInput.cc b/plugins/pdg_unigen/src/PUniGenInput.cc similarity index 100% rename from plugins/pdg_unigen/PUniGenInput.cc rename to plugins/pdg_unigen/src/PUniGenInput.cc diff --git a/plugins/pdg_unigen/UEvent.cc b/plugins/pdg_unigen/src/UEvent.cc similarity index 100% rename from plugins/pdg_unigen/UEvent.cc rename to plugins/pdg_unigen/src/UEvent.cc diff --git a/plugins/pdg_unigen/UParticle.cc b/plugins/pdg_unigen/src/UParticle.cc similarity index 100% rename from plugins/pdg_unigen/UParticle.cc rename to plugins/pdg_unigen/src/UParticle.cc diff --git a/plugins/pdg_unigen/URun.cc b/plugins/pdg_unigen/src/URun.cc similarity index 100% rename from plugins/pdg_unigen/URun.cc rename to plugins/pdg_unigen/src/URun.cc diff --git a/plugins/pion_beam/CMakeLists.txt b/plugins/pion_beam/CMakeLists.txt index 7cb4235..92b5afa 100644 --- a/plugins/pion_beam/CMakeLists.txt +++ b/plugins/pion_beam/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PPionBeamPlugin PPionBeamAmplitude) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(pion_beam SOURCES src/PPionBeamAmplitude.cc src/PPionBeamPlugin.cc HEADERS include/PPionBeamAmplitude.h include/PPionBeamPlugin.h CLASSES PPionBeamPlugin PPionBeamAmplitude) diff --git a/plugins/pion_beam/PPionBeamAmplitude.h b/plugins/pion_beam/include/PPionBeamAmplitude.h similarity index 100% rename from plugins/pion_beam/PPionBeamAmplitude.h rename to plugins/pion_beam/include/PPionBeamAmplitude.h diff --git a/plugins/pion_beam/PPionBeamPlugin.h b/plugins/pion_beam/include/PPionBeamPlugin.h similarity index 100% rename from plugins/pion_beam/PPionBeamPlugin.h rename to plugins/pion_beam/include/PPionBeamPlugin.h diff --git a/plugins/pion_beam/pion_beam_example.C b/plugins/pion_beam/macros/pion_beam_example.C similarity index 100% rename from plugins/pion_beam/pion_beam_example.C rename to plugins/pion_beam/macros/pion_beam_example.C diff --git a/plugins/pion_beam/PPionBeamAmplitude.cc b/plugins/pion_beam/src/PPionBeamAmplitude.cc similarity index 100% rename from plugins/pion_beam/PPionBeamAmplitude.cc rename to plugins/pion_beam/src/PPionBeamAmplitude.cc diff --git a/plugins/pion_beam/PPionBeamPlugin.cc b/plugins/pion_beam/src/PPionBeamPlugin.cc similarity index 100% rename from plugins/pion_beam/PPionBeamPlugin.cc rename to plugins/pion_beam/src/PPionBeamPlugin.cc diff --git a/plugins/scatter_mod/CMakeLists.txt b/plugins/scatter_mod/CMakeLists.txt index 5c40715..21bdafa 100644 --- a/plugins/scatter_mod/CMakeLists.txt +++ b/plugins/scatter_mod/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PSaidLowEnergy PSaidPN PScatterCrossSection) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(scatter_mod SOURCES src/PSaidLowEnergy.cc src/PSaidPN.cc src/PScatterCrossSection.cc HEADERS include/PSaidLowEnergy.h include/PSaidPN.h include/PScatterCrossSection.h CLASSES PSaidLowEnergy PSaidPN PScatterCrossSection) diff --git a/plugins/scatter_mod/PSaidLowEnergy.h b/plugins/scatter_mod/include/PSaidLowEnergy.h similarity index 100% rename from plugins/scatter_mod/PSaidLowEnergy.h rename to plugins/scatter_mod/include/PSaidLowEnergy.h diff --git a/plugins/scatter_mod/PSaidPN.h b/plugins/scatter_mod/include/PSaidPN.h similarity index 100% rename from plugins/scatter_mod/PSaidPN.h rename to plugins/scatter_mod/include/PSaidPN.h diff --git a/plugins/scatter_mod/PScatterCrossSection.h b/plugins/scatter_mod/include/PScatterCrossSection.h similarity index 100% rename from plugins/scatter_mod/PScatterCrossSection.h rename to plugins/scatter_mod/include/PScatterCrossSection.h diff --git a/plugins/scatter_mod/cross_section_example.C b/plugins/scatter_mod/macros/cross_section_example.C similarity index 100% rename from plugins/scatter_mod/cross_section_example.C rename to plugins/scatter_mod/macros/cross_section_example.C diff --git a/plugins/scatter_mod/pn_ela.C b/plugins/scatter_mod/macros/pn_ela.C similarity index 100% rename from plugins/scatter_mod/pn_ela.C rename to plugins/scatter_mod/macros/pn_ela.C diff --git a/plugins/scatter_mod/pp_ela_4e.C b/plugins/scatter_mod/macros/pp_ela_4e.C similarity index 100% rename from plugins/scatter_mod/pp_ela_4e.C rename to plugins/scatter_mod/macros/pp_ela_4e.C diff --git a/plugins/scatter_mod/rootlogon.C b/plugins/scatter_mod/macros/rootlogon.C similarity index 100% rename from plugins/scatter_mod/rootlogon.C rename to plugins/scatter_mod/macros/rootlogon.C diff --git a/plugins/scatter_mod/PSaidLowEnergy.cc b/plugins/scatter_mod/src/PSaidLowEnergy.cc similarity index 100% rename from plugins/scatter_mod/PSaidLowEnergy.cc rename to plugins/scatter_mod/src/PSaidLowEnergy.cc diff --git a/plugins/scatter_mod/PSaidPN.cc b/plugins/scatter_mod/src/PSaidPN.cc similarity index 100% rename from plugins/scatter_mod/PSaidPN.cc rename to plugins/scatter_mod/src/PSaidPN.cc diff --git a/plugins/scatter_mod/PScatterCrossSection.cc b/plugins/scatter_mod/src/PScatterCrossSection.cc similarity index 100% rename from plugins/scatter_mod/PScatterCrossSection.cc rename to plugins/scatter_mod/src/PScatterCrossSection.cc diff --git a/plugins/strangeness/CMakeLists.txt b/plugins/strangeness/CMakeLists.txt index 826650e..558b80c 100644 --- a/plugins/strangeness/CMakeLists.txt +++ b/plugins/strangeness/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PStrangenessPlugin) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(strangeness SOURCES src/PStrangenessPlugin.cc HEADERS include/PStrangenessPlugin.h CLASSES PStrangenessPlugin) diff --git a/plugins/strangeness/PStrangenessPlugin.cc b/plugins/strangeness/PStrangenessPlugin.cc deleted file mode 100644 index 721c3dd..0000000 --- a/plugins/strangeness/PStrangenessPlugin.cc +++ /dev/null @@ -1,113 +0,0 @@ -///////////////////////////////////////////////////////////////////// -//Plugin to add the strangeness particles Lambda(1405) and Sigma(1385) -// -//Pids are 70-73 -// -//This plugin is automatically enabled. If you don't like it, call -//makeDistributionManager()->Disable("strangeness"); -//in the very beginning of your macro -// -////////////////////////////////////////////////////////////////////// - -#include "PStrangenessPlugin.h" - - -PStrangenessPlugin::PStrangenessPlugin(const Char_t *id, const Char_t *de): - PDistributionCollection(id, de) { - is_initialized = 0; - // RequiresPlugin("elementary"); -} - -Bool_t PStrangenessPlugin::Activate(void) { - return kTRUE; -} - -PStrangenessPlugin::~PStrangenessPlugin() { -} - - -Bool_t PStrangenessPlugin::ExecCommand(const char *command, Double_t) { - - if (strcmp (command,"init") == 0) { - if (!is_initialized) { - is_initialized = 1; - - Double_t *system_alloc_verbosity = makeStaticData()->GetBatchValue("_system_alloc_verbosity"); - Double_t old = (*system_alloc_verbosity); - (*system_alloc_verbosity) = 0; - - if (makeStaticData()->AddParticle(70, "Lambda1405", 1.406) > 0) { - makeStaticData()->AddAlias("Lambda1405", "Lambda(1405)"); - - makeStaticData()->SetParticleTotalWidth("Lambda1405", 0.05); - makeStaticData()->SetParticleBaryon("Lambda1405", 1); - - - makeStaticData()->AddDecay("Lambda(1405)0 --> Sigma+ + pi-", "Lambda1405", - "Sigma+,pi-", .3333 ); - makeStaticData()->AddDecay("Lambda(1405)0 --> Sigma- + pi+", "Lambda1405", - "Sigma-,pi+", .3333 ); - makeStaticData()->AddDecay("Lambda(1405)0 --> Sigma0 + pi0", "Lambda1405", - "Sigma0,pi0", .3333 ); - - - makeStaticData()->AddParticle(71, "Sigma1385+", 1.3828); - makeStaticData()->AddAlias("Sigma1385+", "Sigma(1385)+"); - makeStaticData()->SetParticleTotalWidth("Sigma1385+", 0.0358); - makeStaticData()->SetParticleBaryon("Sigma1385+", 1); - makeStaticData()->SetParticleLMass("Sigma1385+", 1.2); - - makeStaticData()->AddDecay("Sigma(1385)+ --> Lambda + pi+", "Sigma1385+", - "Lambda,pi+", .8815 ); - makeStaticData()->AddDecay("Sigma(1385)+ --> Sigma+ + pi0", "Sigma1385+", - "Sigma+, pi0", .05925); - makeStaticData()->AddDecay("Sigma(1385)+ --> Sigma0 + pi+", "Sigma1385+", - "Sigma0, pi+", .05925); - - - - makeStaticData()->AddParticle(72, "Sigma1385-", 1.3872); - makeStaticData()->AddAlias("Sigma1385-", "Sigma(1385)-"); - makeStaticData()->SetParticleTotalWidth("Sigma1385-", 0.0394); - makeStaticData()->SetParticleBaryon("Sigma1385-", 1); - makeStaticData()->SetParticleLMass("Sigma1385-", 1.2); - - makeStaticData()->AddDecay("Sigma(1385)- --> Lambda + pi-", "Sigma1385-", - "Lambda,pi-", .8815 ); - makeStaticData()->AddDecay("Sigma(1385)- --> Sigma- + pi0", "Sigma1385-", - "Sigma-, pi0", .05925); - makeStaticData()->AddDecay("Sigma(1385)- --> Sigma0 + pi-", "Sigma1385-", - "Sigma0, pi-", .05925); - - - - makeStaticData()->AddParticle(73,"Sigma13850", 1.3837); - makeStaticData()->AddAlias("Sigma13850", "Sigma(1385)0"); - makeStaticData()->SetParticleTotalWidth("Sigma13850", 0.0365); - makeStaticData()->SetParticleBaryon("Sigma13850", 1); - makeStaticData()->SetParticleLMass("Sigma13850", 1.2); - - makeStaticData()->AddDecay("Sigma(1385)0 --> Lambda + pi0", "Sigma13850", - "Lambda,pi0", .87000 ); - makeStaticData()->AddDecay("Sigma(1385)0 --> Lambda + g", "Sigma13850", - "Lambda,g", .01300 ); - makeStaticData()->AddDecay("Sigma(1385)0 --> Sigma+ + pi-", "Sigma13850", - "Sigma+, pi-", .05850); - makeStaticData()->AddDecay("Sigma(1385)0 --> Sigma- + pi+", "Sigma13850", - "Sigma-, pi+", .05850); - - } else { - Error("ExecCommand", "PIDs blocked, plugin disabled"); - } - - (*system_alloc_verbosity) = old; - } - return kTRUE; - } - - return kFALSE; -} - - -ClassImp(PStrangenessPlugin) - diff --git a/plugins/strangeness/PStrangenessPlugin.h b/plugins/strangeness/include/PStrangenessPlugin.h similarity index 51% rename from plugins/strangeness/PStrangenessPlugin.h rename to plugins/strangeness/include/PStrangenessPlugin.h index d20b8bd..77477d5 100644 --- a/plugins/strangeness/PStrangenessPlugin.h +++ b/plugins/strangeness/include/PStrangenessPlugin.h @@ -1,9 +1,10 @@ // Author: I. Froehlich // Written: 12.10.2008 // Revised: +// Updates: RafaƂ Lalik, 05.06.2023 - New Y* decays channels +// - Software switches to modify decays // - #ifndef _PSTRANGENESS_PLUGIN_H_ #define _PSTRANGENESS_PLUGIN_H_ @@ -27,18 +28,22 @@ class PStrangenessPlugin : public PDistributionCollection { Bool_t ExecCommand(const char *command, Double_t value); Bool_t Activate(void); + static void EnableHadronDecays(Bool_t enabled) { hyperon_hadron_decays = enabled; } + static void EnablePhotonDecays(Bool_t enabled) { hyperon_photon_decays = enabled; } + static void EnableDalitzDecays(Bool_t enabled) { hyperon_dalitz_decays = enabled; } + static void EnableExperimentalDecays(Bool_t enabled) { hyperon_experimental_decays = enabled; } + static void ShowFlags(); + private: Int_t is_initialized; + static Bool_t hyperon_hadron_decays; + static Bool_t hyperon_photon_decays; + static Bool_t hyperon_dalitz_decays; + static Bool_t hyperon_experimental_decays; + ClassDef(PStrangenessPlugin, 0) //Plugin to add new particles with strangeness and their decays }; #endif //_PSTRANGENESS_PLUGIN_H_ - - - - - - - diff --git a/plugins/strangeness/src/PStrangenessPlugin.cc b/plugins/strangeness/src/PStrangenessPlugin.cc new file mode 100644 index 0000000..5a31fd9 --- /dev/null +++ b/plugins/strangeness/src/PStrangenessPlugin.cc @@ -0,0 +1,268 @@ +///////////////////////////////////////////////////////////////////// +//Plugin to add the strangeness particles Lambda(1405) and Sigma(1385) +// +//Pids are 70-73 +// +//This plugin is automatically enabled. If you don't like it, call +//makeDistributionManager()->Disable("strangeness"); +//in the very beginning of your macro +// +////////////////////////////////////////////////////////////////////// + +#include "PStrangenessPlugin.h" + +#include "PDistributionManager.h" +#include "PResonanceDalitz.h" + + +Bool_t PStrangenessPlugin::hyperon_hadron_decays{kTRUE}; +Bool_t PStrangenessPlugin::hyperon_photon_decays{kTRUE}; +Bool_t PStrangenessPlugin::hyperon_dalitz_decays{kTRUE}; +Bool_t PStrangenessPlugin::hyperon_experimental_decays{kFALSE}; + +void PStrangenessPlugin::ShowFlags() +{ + fprintf(stderr, "Strangeness plugin - flags status:\n" + "- Hadron: %d\n" + "- Photon: %d\n" + "- Dalitz: %d\n" + "- Experimental: %d\n", + hyperon_hadron_decays, hyperon_photon_decays, hyperon_dalitz_decays, hyperon_experimental_decays); +} + +PStrangenessPlugin::PStrangenessPlugin(const Char_t *id, const Char_t *de): PDistributionCollection(id, de), + is_initialized(0) { + // RequiresPlugin("elementary"); +} + +Bool_t PStrangenessPlugin::Activate(void) { + return kTRUE; +} + +PStrangenessPlugin::~PStrangenessPlugin() { +} + + +Bool_t PStrangenessPlugin::ExecCommand(const char *command, Double_t) { + + if (strcmp (command,"init") == 0) { + if (!is_initialized) { + is_initialized = 1; + + Double_t *system_alloc_verbosity = makeStaticData()->GetBatchValue("_system_alloc_verbosity"); + Double_t old = (*system_alloc_verbosity); + (*system_alloc_verbosity) = 0; + + + if (makeStaticData()->AddParticle(70, "Sigma13850", 1.3837) > 0) { + makeStaticData()->AddAlias("Sigma13850", "Sigma(1385)0"); + + makeStaticData()->SetParticleTotalWidth("Sigma13850", 0.0365); + makeStaticData()->SetParticleBaryon("Sigma13850", 1); + makeStaticData()->SetParticleLMass("Sigma13850", 1.2); + makeStaticData()->SetParticleSpin("Sigma13850", 3); + makeStaticData()->SetParticleParity("Sigma13850", 1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Sigma(1385)0 --> Lambda + pi0", "Sigma13850", "Lambda,pi0", 0.87000); + makeStaticData()->AddDecay("Sigma(1385)0 --> Lambda + g", "Sigma13850", "Lambda,g", 0.01300 * (1. - 1./137.)); + makeStaticData()->AddDecay("Sigma(1385)0 --> Sigma+ + pi-", "Sigma13850", "Sigma+,pi-", 0.117 / 3); + makeStaticData()->AddDecay("Sigma(1385)0 --> Sigma- + pi+", "Sigma13850", "Sigma-,pi+", 0.117 / 3); + makeStaticData()->AddDecay("Sigma(1385)0 --> Sigma0 + pi0", "Sigma13850", "Sigma0,pi0", 0.117 / 3); + } + + if (hyperon_dalitz_decays) { + makeStaticData()->AddDecay("Sigma(1385)0 --> Lambda + dilepton", "Sigma13850", "Lambda,dilepton", 0.013 / 137.); + PResonanceDalitz * dalitz = new PResonanceDalitz("Sigma13850_dalitz@Sigma13850_to_Lambda_dilepton", "dgdm from Zetenyi/Wolf", -1); + dalitz->setGm(0.719); + makeDistributionManager()->Add(dalitz); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(-1, "Sigma1385+", 1.3828) > 0) { + makeStaticData()->AddAlias("Sigma1385+", "Sigma(1385)+"); + + makeStaticData()->SetParticleTotalWidth("Sigma1385+", 0.0358); + makeStaticData()->SetParticleBaryon("Sigma1385+", 1); + makeStaticData()->SetParticleLMass("Sigma1385+", 1.2); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Sigma(1385)+ --> Lambda + pi+", "Sigma1385+", "Lambda,pi+", 0.8815); + makeStaticData()->AddDecay("Sigma(1385)+ --> Sigma+ + pi0", "Sigma1385+", "Sigma+,pi0", 0.05925); + makeStaticData()->AddDecay("Sigma(1385)+ --> Sigma0 + pi+", "Sigma1385+", "Sigma0,pi+", 0.05925); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(-1, "Sigma1385-", 1.3872) > 0) { + makeStaticData()->AddAlias("Sigma1385-", "Sigma(1385)-"); + + makeStaticData()->SetParticleTotalWidth("Sigma1385-", 0.0394); + makeStaticData()->SetParticleBaryon("Sigma1385-", 1); + makeStaticData()->SetParticleLMass("Sigma1385-", 1.2); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Sigma(1385)- --> Lambda + pi-", "Sigma1385-", "Lambda,pi-", 0.8815 ); + makeStaticData()->AddDecay("Sigma(1385)- --> Sigma- + pi0", "Sigma1385-", "Sigma-,pi0", 0.05925); + makeStaticData()->AddDecay("Sigma(1385)- --> Sigma0 + pi-", "Sigma1385-", "Sigma0,pi-", 0.05925); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(-1, "Lambda1405", 1.406) > 0) { + makeStaticData()->AddAlias("Lambda1405", "Lambda(1405)"); + + makeStaticData()->SetParticleTotalWidth("Lambda1405", 0.05); + makeStaticData()->SetParticleBaryon("Lambda1405", 1); + makeStaticData()->SetParticleSpin("Lambda1405", 1); + makeStaticData()->SetParticleParity("Lambda1405", -1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Lambda(1405) --> Sigma+ + pi-", "Lambda1405", "Sigma+,pi-", 1. / 3); + makeStaticData()->AddDecay("Lambda(1405) --> Sigma- + pi+", "Lambda1405", "Sigma-,pi+", 1. / 3); + makeStaticData()->AddDecay("Lambda(1405) --> Sigma0 + pi0", "Lambda1405", "Sigma0,pi0", 1. / 3); + } + + if (hyperon_photon_decays) { + makeStaticData()->AddDecay("Lambda(1405) --> Lambda + gamma", "Lambda1405", "Lambda,g", 0.0085); + makeStaticData()->AddDecay("Lambda(1405) --> Sigma(1385)0 + gamma", "Lambda1405", "Sigma13850,g", 0.0085); + } + + if (hyperon_dalitz_decays) { + makeStaticData()->AddDecay("Lambda(1405) --> Lambda + dilepton", "Lambda1405", "Lambda,dilepton", 0.0085 / 137.); + + PResonanceDalitz * dalitz = new PResonanceDalitz("Lambda1405_dalitz@Lambda1405_to_Lambda_dilepton", "dgdm from Zetenyi/Wolf", -1); + dalitz->setGm(0.719); + makeDistributionManager()->Add(dalitz); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(-1,"Lambda1520", 1.5195) > 0) { + makeStaticData()->AddAlias("Lambda1520","Lambda(1520)"); + + makeStaticData()->SetParticleTotalWidth("Lambda1520", 0.0156); + makeStaticData()->SetParticleBaryon("Lambda1520", 1); + makeStaticData()->SetParticleSpin("Lambda1520", 3); + makeStaticData()->SetParticleParity("Lambda1520", 1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Lambda(1520) --> n + K0S", "Lambda1520", "n,K0S", 0.45 / 3); // N + /K from PDG + makeStaticData()->AddDecay("Lambda(1520) --> n + K0L", "Lambda1520", "n,K0L", 0.45 / 3); // N + /K from PDG + makeStaticData()->AddDecay("Lambda(1520) --> p + K-", "Lambda1520", "p,K-", 0.45 / 3); // N + /K from PDG + makeStaticData()->AddDecay("Lambda(1520) --> Lambda + pi0 + pi0", "Lambda1520", "Lambda,pi0,pi0", 0.2 / 3); // 10% * 2/3 + makeStaticData()->AddDecay("Lambda(1520) --> Lambda + pi+ + pi-", "Lambda1520", "Lambda,pi+,pi-", 0.1 / 3); // 10% * 1/3 , old BR .014638 + makeStaticData()->AddDecay("Lambda(1520) --> Sigma0 + pi0", "Lambda1520", "Sigma0,pi0", 0.139096); // 42% / 3 + makeStaticData()->AddDecay("Lambda(1520) --> Sigma+ + pi-", "Lambda1520", "Sigma+,pi-", 0.139096); // 42% / 3 + makeStaticData()->AddDecay("Lambda(1520) --> Sigma- + pi+", "Lambda1520", "Sigma-,pi+", 0.139096); // 42% / 3 + makeStaticData()->AddDecay("Lambda(1520) --> Sigma0 + pi0 + pi0", "Lambda1520", "Sigma0,pi0,pi0", 0.009/5.0); // + makeStaticData()->AddDecay("Lambda(1520) --> Sigma0 + pi+ + pi-", "Lambda1520", "Sigma0,pi+,pi-", 0.009/5.0); // + } + + if (hyperon_photon_decays) { + makeStaticData()->AddDecay("Lambda(1520) --> Lambda + g", "Lambda1520", "Lambda,g", 0.0085); + } + + if (hyperon_dalitz_decays) { + makeStaticData()->AddDecay("Lambda(1520) --> Lambda + dilepton", "Lambda1520", "Lambda,dilepton", .007948/137.); + + PResonanceDalitz * dalitz = new PResonanceDalitz("Lambda1520_dalitz@Lambda1520_to_Lambda_dilepton", "dgdm from Zetenyi/Wolf", -1); + dalitz->setGm(0.719); + makeDistributionManager()->Add(dalitz); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(75,"Xi1530-", 1.5352) > 0) { + makeStaticData()->AddAlias("Xi1530-","Xi(1530)-"); + + makeStaticData()->SetParticleTotalWidth("Xi1530-", 0.091); + makeStaticData()->SetParticleBaryon("Xi1530-", 1); + makeStaticData()->SetParticleSpin("Xi1530-", 2); + makeStaticData()->SetParticleParity("Xi1530-", 1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Xi(1530)- --> Xi0 + pi-", "Xi1530-", "Xi0,pi-", 1. / 2.0); + makeStaticData()->AddDecay("Xi(1530)- --> Xi- + pi0", "Xi1530-", "Xi-,pi0", 1. / 2.0); + } + + if (hyperon_photon_decays) { + makeStaticData()->AddDecay("Xi(1530)- --> Xi- + g", "Xi1530-", "Xi-,g", .037); + } + + if (hyperon_dalitz_decays) { + makeStaticData()->AddDecay("Xi(1530)- --> Xi- + dilepton", "Xi1530-", "Xi-,dilepton", .037/137.); + + PResonanceDalitz * dalitz = new PResonanceDalitz("Xi1530-_dalitz@Xi1530-_to_Xi-_dilepton", "dgdm from Zetenyi/Wolf", -1); + dalitz->setGm(0.719); + makeDistributionManager()->Add(dalitz); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(76,"Xi15300", 1.53178) > 0) { + makeStaticData()->AddAlias("Xi15300","Xi(1530)0"); + + makeStaticData()->SetParticleTotalWidth("Xi15300", 0.099); + makeStaticData()->SetParticleBaryon("Xi15300", 1); + makeStaticData()->SetParticleSpin("Xi15300", 2); + makeStaticData()->SetParticleParity("Xi15300", 1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Xi(1530)0 --> Xi0 + pi0", "Xi15300", "Xi0,pi0", 1. / 2.0); + makeStaticData()->AddDecay("Xi(1530)0 --> Xi- + pi+", "Xi15300", "Xi-,pi+", 1. / 2.0); + } + + if (hyperon_photon_decays) { + makeStaticData()->AddDecay("Xi(1530)0 --> Xi0 + g", "Xi15300", "Xi0,g", .037); + } + + if (hyperon_dalitz_decays) { + makeStaticData()->AddDecay("Xi(1530)0 --> Xi0 + dilepton", "Xi15300", "Xi0,dilepton", .037/137.); + + PResonanceDalitz * dalitz = new PResonanceDalitz("Xi15300_dalitz@Xi15300_to_Xi0_dilepton", "dgdm from Zetenyi/Wolf", -1); + dalitz->setGm(0.719); + makeDistributionManager()->Add(dalitz); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + + if (makeStaticData()->AddParticle(79, "Delta2050++", 2.05) > 0) { + makeStaticData()->AddAlias("Delta2050++", "Delta(2050)++"); + + makeStaticData()->SetParticleTotalWidth("Delta2050++", 0.25); + makeStaticData()->SetParticleBaryon("Delta2050++", 1); + + if (hyperon_hadron_decays) { + makeStaticData()->AddDecay("Delta(2050)++ --> Sigma(1385)+ + K+", "Delta2050++", "Sigma1385+,K+", 1.0); + } + } else { + Error("ExecCommand", "PIDs blocked, plugin disabled"); + } + + (*system_alloc_verbosity) = old; + } + return kTRUE; + } + + return kFALSE; +} + + +ClassImp(PStrangenessPlugin) + diff --git a/plugins/tools/CMakeLists.txt b/plugins/tools/CMakeLists.txt index 32cafca..1a76bd3 100644 --- a/plugins/tools/CMakeLists.txt +++ b/plugins/tools/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES PGammaConversion) -set(LOCAL_COLLECTION ) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) - - +add_plugin(tools SOURCES src/PGammaConversion.cc HEADERS include/PGammaConversion.h CLASSES PGammaConversion) diff --git a/plugins/tools/PGammaConversion.h b/plugins/tools/include/PGammaConversion.h similarity index 100% rename from plugins/tools/PGammaConversion.h rename to plugins/tools/include/PGammaConversion.h diff --git a/plugins/tools/conversion_demo.C b/plugins/tools/macros/conversion_demo.C similarity index 100% rename from plugins/tools/conversion_demo.C rename to plugins/tools/macros/conversion_demo.C diff --git a/plugins/tools/rootlogon.C b/plugins/tools/macros/rootlogon.C similarity index 100% rename from plugins/tools/rootlogon.C rename to plugins/tools/macros/rootlogon.C diff --git a/plugins/tools/PGammaConversion.cc b/plugins/tools/src/PGammaConversion.cc similarity index 100% rename from plugins/tools/PGammaConversion.cc rename to plugins/tools/src/PGammaConversion.cc diff --git a/plugins/w_decays/CMakeLists.txt b/plugins/w_decays/CMakeLists.txt index e5433f6..27f0c53 100644 --- a/plugins/w_decays/CMakeLists.txt +++ b/plugins/w_decays/CMakeLists.txt @@ -1,20 +1 @@ -set(LOCAL_CLASSES POmega3Pi) -set(LOCAL_COLLECTION PDistributionManager.mod.cc) - - -### do not change something below - -file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}") - -#addprefix(LOCAL_PLUGIN_CLASSES ${CMAKE_CURRENT_SOURCE_DIR} ${LOCAL_CLASSES}) -addprefix(LOCAL_PLUGIN_CLASSES ${_relPath} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES ${PLUGIN_CLASSES} ${LOCAL_PLUGIN_CLASSES}) -SET(PLUGIN_CLASSES "${PLUGIN_CLASSES}" PARENT_SCOPE) - -SET(PLUGIN_CLASSES_NAMES ${PLUGIN_CLASSES_NAMES} ${LOCAL_CLASSES}) -SET(PLUGIN_CLASSES_NAMES "${PLUGIN_CLASSES_NAMES}" PARENT_SCOPE) - -#addprefix(LOCAL_COLLECTION ${CMAKE_CURRENT_SOURCE_DIR} ${LOCAL_COLLECTION}) -addprefix(LOCAL_COLLECTION ${_relPath} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION ${PLUGIN_COLLECTION} ${LOCAL_COLLECTION}) -SET(PLUGIN_COLLECTION "${PLUGIN_COLLECTION}" PARENT_SCOPE) +add_plugin(w_decays SOURCES src/POmega3Pi.cc HEADERS include/POmega3Pi.h CLASSES POmega3Pi) diff --git a/plugins/w_decays/POmega3Pi.h b/plugins/w_decays/include/POmega3Pi.h similarity index 100% rename from plugins/w_decays/POmega3Pi.h rename to plugins/w_decays/include/POmega3Pi.h diff --git a/plugins/w_decays/w_hadronic_test.C b/plugins/w_decays/macros/w_hadronic_test.C similarity index 100% rename from plugins/w_decays/w_hadronic_test.C rename to plugins/w_decays/macros/w_hadronic_test.C diff --git a/plugins/w_decays/POmega3Pi.cc b/plugins/w_decays/src/POmega3Pi.cc similarity index 100% rename from plugins/w_decays/POmega3Pi.cc rename to plugins/w_decays/src/POmega3Pi.cc