Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:20:02

0001 /*******************************************************************************
0002  * Copyright (c) The JETSCAPE Collaboration, 2018
0003  *
0004  * Modular, task-based framework for simulating all aspects of heavy-ion collisions
0005  * 
0006  * For the list of contributors see AUTHORS.
0007  *
0008  * Report issues at https://github.com/JETSCAPE/JETSCAPE/issues
0009  *
0010  * or via email to bugs.jetscape@gmail.com
0011  *
0012  * Distributed under the GNU General Public License 3.0 (GPLv3 or later).
0013  * See COPYING for details.
0014  ******************************************************************************/
0015 // -----------------------------------------
0016 // This is a wrapper for iSpectraSampler (iSS) with the JETSCAPE framework
0017 // -----------------------------------------
0018 
0019 #ifndef ISPECTRASAMPLERWRAPPER_H
0020 #define ISPECTRASAMPLERWRAPPER_H
0021 
0022 #include <memory>
0023 
0024 #include "SoftParticlization.h"
0025 #include "iSS.h"
0026 
0027 using namespace Jetscape;
0028 
0029 class iSpectraSamplerWrapper : public SoftParticlization {
0030 private:
0031   tinyxml2::XMLElement *iSS_xml_;
0032 
0033   std::unique_ptr<iSS> iSpectraSampler_ptr_;
0034 
0035   // Allows the registration of the module so that it is available to be used by the Jetscape framework.
0036   static RegisterJetScapeModule<iSpectraSamplerWrapper> reg;
0037 
0038 public:
0039   iSpectraSamplerWrapper();
0040   ~iSpectraSamplerWrapper();
0041 
0042   void InitTask();
0043   void Exec();
0044   void Clear();
0045   void WriteTask(weak_ptr<JetScapeWriter> w);
0046 
0047   void PassHadronListToJetscape();
0048 };
0049 
0050 #endif // ISPECTRASAMPLERWRAPPER_H