Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-11-07 10:11:34

0001 //------------------------------- -*- C++ -*- -------------------------------//
0002 // Copyright Celeritas contributors: see top-level COPYRIGHT file for details
0003 // SPDX-License-Identifier: (Apache-2.0 OR MIT)
0004 //---------------------------------------------------------------------------//
0005 //! \file celeritas/inp/EventsIO.json.hh
0006 //---------------------------------------------------------------------------//
0007 #pragma once
0008 
0009 #include <nlohmann/json.hpp>
0010 
0011 #include "Events.hh"
0012 
0013 namespace celeritas
0014 {
0015 namespace inp
0016 {
0017 //---------------------------------------------------------------------------//
0018 
0019 void to_json(nlohmann::json& j, EnergyDistribution const&);
0020 void from_json(nlohmann::json const& j, EnergyDistribution&);
0021 
0022 void to_json(nlohmann::json& j, ShapeDistribution const&);
0023 void from_json(nlohmann::json const& j, ShapeDistribution&);
0024 
0025 void to_json(nlohmann::json& j, AngleDistribution const&);
0026 void from_json(nlohmann::json const& j, AngleDistribution&);
0027 
0028 void to_json(nlohmann::json& j, OpticalPrimaryGenerator const&);
0029 void from_json(nlohmann::json const& j, OpticalPrimaryGenerator&);
0030 
0031 void to_json(nlohmann::json& j, OpticalEmGenerator const&);
0032 void from_json(nlohmann::json const& j, OpticalEmGenerator&);
0033 
0034 void to_json(nlohmann::json& j, OpticalOffloadGenerator const&);
0035 void from_json(nlohmann::json const& j, OpticalOffloadGenerator&);
0036 
0037 void to_json(nlohmann::json& j, OpticalDirectGenerator const&);
0038 void from_json(nlohmann::json const& j, OpticalDirectGenerator&);
0039 
0040 void to_json(nlohmann::json& j, OpticalGenerator const&);
0041 void from_json(nlohmann::json const& j, OpticalGenerator&);
0042 
0043 void to_json(nlohmann::json& j, CorePrimaryGenerator const&);
0044 void from_json(nlohmann::json const& j, CorePrimaryGenerator&);
0045 
0046 void to_json(nlohmann::json& j, SampleFileEvents const&);
0047 void from_json(nlohmann::json const& j, SampleFileEvents&);
0048 
0049 void to_json(nlohmann::json& j, ReadFileEvents const&);
0050 void from_json(nlohmann::json const& j, ReadFileEvents&);
0051 
0052 void to_json(nlohmann::json& j, Generator const&);
0053 void from_json(nlohmann::json const& j, Generator&);
0054 
0055 void to_json(nlohmann::json& j, Events const&);
0056 void from_json(nlohmann::json const& j, Events&);
0057 
0058 //---------------------------------------------------------------------------//
0059 }  // namespace inp
0060 }  // namespace celeritas