Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-15 10:10:56

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/global/Debug.hh
0006 //! \brief Utilities for interactive debugging and diagnostic output
0007 //---------------------------------------------------------------------------//
0008 #pragma once
0009 
0010 #include <iosfwd>
0011 
0012 #include "celeritas/geo/GeoFwd.hh"
0013 
0014 namespace celeritas
0015 {
0016 //---------------------------------------------------------------------------//
0017 // Forward declarations
0018 class CoreParams;
0019 class CoreTrackView;
0020 class ParticleTrackView;
0021 class SimTrackView;
0022 
0023 //---------------------------------------------------------------------------//
0024 //! Print a track to the given stream
0025 struct StreamableTrack
0026 {
0027     CoreTrackView const& track;
0028 };
0029 
0030 std::ostream& operator<<(std::ostream&, StreamableTrack const&);
0031 
0032 //---------------------------------------------------------------------------//
0033 // Print everything that can be printed about a core track view
0034 void debug_print(CoreTrackView const&);
0035 
0036 //---------------------------------------------------------------------------//
0037 // Print a SimTrackView on host
0038 void debug_print(SimTrackView const&);
0039 
0040 //---------------------------------------------------------------------------//
0041 // Print a ParticleTrackView on host
0042 void debug_print(ParticleTrackView const&);
0043 
0044 //---------------------------------------------------------------------------//
0045 }  // namespace celeritas