Back to home page

EIC code displayed by LXR

 
 

    


Last indexation completed on 2026-07-21 08:46:30 UTC

 
  Name Size Date (UTC) Last indexed Description
  Name Size Date (UTC) Last indexed Description
folder Parent directory - 2026-07-21 07:00:48  
folder tests/ - 2026-07-21 07:00:46  
CheckGeo.cc 645 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05

include "CheckGeo.hh"

CheckGeo.hh 562 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05  
CMakeLists.txt 8429 bytes 2026-07-21 07:00:46 -  
config.cpp 12015 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05

include <algorithm>

config.h 2760 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05

pragma once

config_path.h.in 255 bytes 2026-07-21 07:00:46 -  
CUDA_CHECK.h 2932 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05

pragma once

iexpand.h 5081 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05  
njuffa_erfcinvf.h 4707 bytes 2026-07-21 07:00:46 2026-07-21 07:54:05  
np.h 4886 bytes 2026-07-21 07:00:46 2026-07-21 07:54:06

https://github.com/simoncblyth/np/ Extract from NP.hh NPU.hh minimal-ish code to write a NumPy file

NP.hh 260308 bytes 2026-07-21 07:00:46 2026-07-21 07:54:07  
NP_future.h 707 bytes 2026-07-21 07:00:46 2026-07-21 07:54:07  
NP_nanobind.h 5877 bytes 2026-07-21 07:00:46 2026-07-21 07:54:08  
NPFold.h 109665 bytes 2026-07-21 07:00:46 2026-07-21 07:54:08 collecting and persisting NP arrays keyed by relative paths
NPU.hh 88550 bytes 2026-07-21 07:00:46 2026-07-21 07:54:09  
NPX.h 35917 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10 NP.hh related extras such as static converters
OPTICKS_LOG.hh 11573 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10  
OpticksCSG.h 21779 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10  
OpticksGenstep.h 10924 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10

Genstep versioning Not using typedef enum for simplicity as this needs to be used everywhere.

OpticksPhoton.cc 4963 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10

include <iostream>

OpticksPhoton.h 1977 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10  
OpticksPhoton.hh 12367 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10  
OPTIX_CHECK.h 2662 bytes 2026-07-21 07:00:46 2026-07-21 07:54:10  
PlainFormatter.hh 1544 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
PLOG.hh 105 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
S4.h 2368 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

After X4.hh

S4MaterialPropertyVector.h 12094 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

This provides serialization of int, string keyed maps of G4MaterialPropertyVector into NPFold as well as the import of the NPFold back into maps.

S4Random.h 2491 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

For all the bells and whistles use U4Random.hh S4Random.h aims to be a minimal headeronly alternative intended for use from standalone tests.

S4RandomArray.h 2892 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

S4RandomArray : Uses Current Engine, but collects the randoms Instanciation holds onto the current engine in m_engine and replaces it with itself.

S4RandomMonitor.h 2340 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

S4RandomMonitor Instanciation holds onto the current engine in m_engine and replaces it with itself.

s_bb.cc 54 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

include "s_bb.h" s_bb::POOL* s_bb::pool = nullptr ;

s_bb.h 9628 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

ctor adds to the pool dtor removes from the pool

s_csg.cc 56 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

include "s_csg.h" s_csg* s_csg::INSTANCE = nullptr ;

s_csg.h 6000 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11 Manage persisting of CSG constituent nodes
S_get_option.cc 744 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
S_get_option.hh 3351 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
s_mock_erfcinvf.h 654 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

This is only intended to be included for MOCK_CUDA on CPU running, it defines a global function to standin for the CUDA equivalent.

s_mock_texture.h 5222 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

s_mock_texture : exploring CUDA texture lookup API on CPU The cudaTextureObject_t just probably typedef to unsigned long so its an "int" pointer.

s_pa.cc 54 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

include "s_pa.h" s_pa::POOL* s_pa::pool = nullptr ;

s_pa.h 3463 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
s_pmt.h 35005 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
s_pool.h 11897 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11  
s_seq.h 6131 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11 Loading and serving up precooked randoms, usaully GPU generated by curand
s_time.h 2412 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

This follows the approach of plog. Good for string time stamps, but not convenient for measuring durations. See schrono.h or stimer.h for that.

s_tv.cc 54 bytes 2026-07-21 07:00:46 2026-07-21 07:54:11

include "s_tv.h" s_tv::POOL* s_tv::pool = nullptr ;

s_tv.h 6049 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 simple wrapper to give uniform behaviour to spa/sxf/sbb
s_unique.h 6005 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 similar to np.unique
saabb.h 6285 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

pragma once

salloc.h 6109 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 debug out of memory errors on device
SAr.cc 4571 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SAr.hh 1639 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SArgs.cc 4544 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SArgs.hh 2015 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SArr.cc 21 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

include "SArr.hh"

SArr.hh 80 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SArrayDigest.cc 1079 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SArrayDigest.hh 1028 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SBacktrace.h 7070 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SBAS.h 2310 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 Basis mode used by SGLM
sbb.h 1283 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

pragma once

sbibit.cc 783 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
sbibit.h 606 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 packs and unpacks 4*2bit integers into 8 bits
SBit.cc 12882 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SBit.hh 2068 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
sbit_.cc 1678 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
sbit_.h 1879 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 packs and unpacks 8*1bit bools into 8 bits
sbitmask.cc 1888 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
sbitmask.h 1952 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

https://stackoverflow.com/questions/1392059/algorithm-to-generate-bit-mask

SBitSet.h 11904 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

Used for example from CSGFoundry::Load to implement dynamic prim selection.

sblackbody.h 845 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
SBnd.h 20111 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 Used to fish material properties out of the boundary buffer
sboundary.h 10760 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 Q: pol comes in much later with stmm.h, how does it manage that ?
sc4u.cc 844 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
sc4u.h 1926 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

pragma once

SCAM.h 1836 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12  
scanvas.h 5999 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12 ascii "painting" (formerly SCanvas.hh without .cc)
scarrier.h 1854 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

pragma once

SCE.h 2971 bytes 2026-07-21 07:00:46 2026-07-21 07:54:12

pragma once

SCenterExtentFrame.h 7929 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
SCenterExtentGenstep.cc 5057 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

include "scuda.h"

SCenterExtentGenstep.hh 1631 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
scerenkov.h 5257 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 Cerenkov genstep helpers
SCF.h 5493 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 Lightweight access to CSGFoundry geometry loaded from CFBASE directory
schrono.h 2252 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

Good for measuring durations, but complicated to extract string timestamps : see stime.h for that.

SCMD.h 80 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

pragma once struct SCMD { virtual int command(const char* cmd) = 0 ; };

SColor.cc 664 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
SColor.hh 505 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
SComp.h 13149 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 naming array components of QEvt/SEvt
SConstant.cc 84 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

include "SConstant.hh" const char* SConstant::ORIGINAL_DOMAIN_SUFFIX = "_ori" ;

SConstant.hh 128 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
scontext.h 5903 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 holds sdevice.h structs for all and visible GPUs
SCount.cc 1195 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

include "SCount.hh"

SCount.hh 245 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
scsg.cc 5562 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

include "scsg.hh"

scsg.hh 2805 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
SCSGPrimSpec.h 5797 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

pragma once

SCtrl.cc 738 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
SCtrl.hh 943 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
sctx.h 4887 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 holding "thread local" state
SCU.h 5655 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

TODO: merge in SCU_.h

SCU_.h 2503 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

TODO : merge this with SCU.h

SCU_BufferView.h 6481 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
scuda.h 9965 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
scuda_double.h 1988 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

pragma once

SCUDA_Mesh.h 2413 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 uploads SMesh tri and holds SCU_Buf
SCUDA_MeshGroup.h 1814 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13 collect vectors of NP from each SMeshGroup sub, upload together with SCU_BufferView
scuda_pointer.h 624 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

https://github.com/ingowald/optix7course/blob/master/example08_addingTextures/devicePrograms.cu See env-;optix7c-

scuda_templated.h 1389 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

Use F2/F4/F4 within "template<typename F>" functions to standin for float2/3/4 or double2/3/4 in a more flexible way.

scurand.h 727 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

pragma once

SDBG.h 1115 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13  
sdebug.h 2153 bytes 2026-07-21 07:00:46 2026-07-21 07:54:13

pragma once

sdevice.h 16079 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SDice.hh 319 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SDigest.cc 10030 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
sdigest.h 7942 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

Header-only hexdigest Uses the vendored Solar Designer MD5 implementation.

SDigest.hh 2440 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SDigestNP.cc 399 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

include <cassert>

SDigestNP.hh 329 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SDir.h 2498 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14 header only dirent.h directory listing paths with supplied ext
SDir_test.cc 0 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SDirect.cc 740 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
sdirect.h 2507 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14 Stream redirection to silence noisy code unless VERBOSE is defined
SDirect.hh 2484 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
sdirectory.h 3316 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

pragma once

sdomain.h 3572 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

Regarding hc_eVnm see U4PhysicalConstantsTest, there is slight difference from smath.h float value : could be arising from CLHEP version difference Wavelength fine domain np.linspace(60,820,761)

SEnabled.cc 921 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

include "SEnabled.hh"

SEnabled.hh 227 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SEvent.cc 10453 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14

include <csignal>

sevent.h 26773 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14 qudarap/QU.cc
SEvent.hh 1934 bytes 2026-07-21 07:00:46 2026-07-21 07:54:14  
SEventConfig.cc 73533 bytes 2026-07-21 07:00:46 2026-07-21 07:54:15

include <sstream>

SEventConfig.hh 26246 bytes 2026-07-21 07:00:46 2026-07-21 07:54:15  
SEvt.cc 149568 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
SEvt.hh 23237 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
sfactor.h 4160 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
SFastSim_Debug.cc 904 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

include "SFastSim_Debug.hh"

SFastSim_Debug.hh 1425 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
SFastSimOpticalModel.cc 274 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

include <cstring>

SFastSimOpticalModel.hh 950 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
sflow.h 1306 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

Flow control enum and CPU only presentation

sfmt.h 756 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

pragma once

sframe.h 23013 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
SFrameConfig.cc 1103 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

include <sstream>

SFrameConfig.hh 530 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
SFrameGenstep.cc 35923 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16

include <limits>

SFrameGenstep.hh 2816 bytes 2026-07-21 07:00:46 2026-07-21 07:54:16  
sfreq.h 8185 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17 count occurrence frequencies of strings and sorts by frequencies
SGDML.cc 2250 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17  
SGDML.hh 1258 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17  
SGen.h 4658 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17

Loads and summarizes genstep arrays.

SGenerate.h 2763 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17  
SGenstep.h 13020 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17 genstep static utilities
SGeo.cc 584 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17

include <cstring>

SGeo.hh 1885 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17  
SGeoConfig.cc 15202 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17

include <iostream>

SGeoConfig.hh 3702 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17  
sgeomdefs.h 561 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17

pragma once

sgeomtools.h 5041 bytes 2026-07-21 07:00:46 2026-07-21 07:54:17

Adapt some extracts from G4GeomTools

SGLM.h 95354 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SGLM_Arcball.h 1790 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SGLM_Modifiers.h 4550 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18 control keys enumeration
SGLM_Parse.h 2209 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SGLM_View.h 1290 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

pragma once

sgs.h 1834 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18 Aiming to replace cfg4/CGenstep
SId.cc 1346 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SId.hh 1276 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
sidxname.h 1328 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLabel.h 4367 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

After the fact lookups of mmlable indices from labels. This was used to provide primitive "post-hoc" trimesh control prior to implementation of proper tri control.

SLabelCache.cc 63 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

include "SLabelCache.hh" template struct SLabelCache<int> ;

SLabelCache.hh 1011 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLauncher.cc 742 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLauncher.hh 922 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLaunchSequence.h 5005 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
slist.h 1003 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

pragma once

SLOG.cc 12206 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
slog.h 2063 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

See notes/issues/logging_from_headeronly_impls.rst

SLOG.hh 3876 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLOG_INIT.hh 4033 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLogger.cc 1529 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SLogger.hh 1253 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SMap.cc 1925 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SMap.hh 1153 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
SMath.cc 1755 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

include <cassert>

smath.h 4973 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18

pragma once

SMath.hh 323 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18  
smatsur.h 3552 bytes 2026-07-21 07:00:46 2026-07-21 07:54:18 ems" : enumeration of Material and Surface types
SMesh.h 26880 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19 holds tri,vtx,nrm NP either from original G4VSolid conversion or concatenation
SMeshGroup.h 4913 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19 collection of SMesh subs and names
SMeta.cc 1362 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19

include <iostream>

smeta.h 1786 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19

BASH_SOURCE fails to export

SMeta.hh 782 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19  
sn.cc 48 bytes 2026-07-21 07:00:46 2026-07-21 07:54:19

include "sn.h" sn::POOL* sn::pool = nullptr ;

sn.h 144041 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20 minimal pointer based transient binary tree node
snam.h 1556 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20

pragma once

SName.h 22424 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20 formerly CSG/CSGName.h
SNameOrder.h 2061 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20 Ordering vectors of objects with GetName methods
SNameVec.cc 24 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20

include "SNameVec.hh"

SNameVec.hh 1192 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20  
snd.cc 42839 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20  
snd.hh 9623 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20  
sndtree.h 3106 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20  
snode.h 5046 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20 structural "volume" nodes
SOPTIX.cu 9801 bytes 2026-07-21 07:00:46 2026-07-21 07:54:20  
SOPTIX.h 4124 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 top level coordinator of triangulated raytrace render
SOPTIX.rst 2448 bytes 2026-07-21 07:00:46 -  
SOPTIX_Accel.h 7352 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 builds acceleration structure GAS or IAS from the buildInputs
SOPTIX_Binding.h 738 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 CPU/GPU SBT records
SOPTIX_BuildInput.h 2169 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
SOPTIX_BuildInput_CPA.h 2369 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21

SOPTIX_BuildInput_CPA As SCSGPrimSpec are passed around by value do not assume long lived pointer addresses back in the SCSGPrimSpec.

SOPTIX_BuildInput_IA.h 1422 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21

pragma once

SOPTIX_BuildInput_Mesh.h 3572 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 create OptixBuildInput via "part" indexing into SCUDA_MeshGroup (Used from SOPTIX_MeshGroup)
SOPTIX_Context.h 2466 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 OptixDeviceContext + SOPTIX_Properties
SOPTIX_Desc.h 3150 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
SOPTIX_getPRD.h 675 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 unpackPointer from optixPayload
SOPTIX_MeshGroup.h 3163 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 create SOPTIX_BuildInput_Mesh for each part of SCUDA_MeshGroup, use those to form SOPTIX_Accel gas
SOPTIX_Module.h 3828 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 Create OptixModule loaded from file
SOPTIX_OPT.h 11420 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 enum strings
SOPTIX_Options.h 8721 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 module and pipeline compile/link options
SOPTIX_Params.h 1162 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 render control
SOPTIX_Pipeline.h 9502 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 Create OptixPipeline from OptixModule
SOPTIX_Pixels.h 1555 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21

pragma once

SOPTIX_Properties.h 7781 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 optixDeviceContextGetProperty results
SOPTIX_SBT.h 7915 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 create sbt from pipeline and scene by uploding the prog and hitgroup records
SOPTIX_Scene.h 7549 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21 top level, holds vectors of SCUDA_MeshGroup SOPTIX_MeshGroup and OptixInstance
spa.h 1032 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21

last two param are zmin/zmax for multiple types:: CSG_ZSPHERE CSG_CYLINDER CSG_CONE

SPack.cc 6591 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21

include <cassert>

SPack.hh 2548 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
SPairVec.cc 1615 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
SPairVec.hh 1253 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
SPath.cc 18343 bytes 2026-07-21 07:00:46 2026-07-21 07:54:21  
spath.h 33236 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

Q: Whats the difference between spath::ResolvePath and spath::Resolve ? A: ResolvePath accepts only a single string element whereas Resolve accepts from 1 to 4 elements.

SPath.hh 4065 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPhiCut.cc 2139 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

include "SLOG.hh"

SPhiCut.hh 245 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
sphit.h 1526 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

Used by SEvt::getLocalHit interface for passing frame information into U4Hit Currently node_index is not included.

spho.h 5417 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22 photon labelling used by genstep collection
sphoton.h 37196 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPhoton_Debug.h 3058 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
sphotonlite.h 13803 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPlace.h 2709 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

pragma once

SPlaceCircle.h 2747 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

pragma once

SPlaceCylinder.h 3047 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

pragma once

SPlaceRing.h 1444 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

pragma once

SPlaceSphere.h 2889 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22

pragma once

SPM.cu 10455 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPM.hh 1427 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPM_future.h 381 bytes 2026-07-21 07:00:46 2026-07-21 07:54:22  
SPMT.h 60501 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23 summarize PMTSimParamData NPFold into the few arrays needed on GPU
SPMTAccessor.h 4173 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

Provides access to JUNO PMT data during standalone optical-only testing without j/PMTSim.

SPrd.h 6280 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

SPrd : used by QSimTest/fake_propagate This was moved from QPrd Dummy per-ray-data enabling pure-CUDA (no OptiX, no geometry) testing of propagation using QSimTest MOCK_PROPAGATE.

SPresent.h 1850 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

include <iostream>

sproc.h 3823 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

pragma once

SProcessHits_EPH.h 14392 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

SProcessHits_EPH_test

SProf.cc 183 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23

include "SProf.hh" char SProf::TAG[N] = {} ; std::vector<sprof> SProf::PROF = {} ; std::vector<std::string> SProf::NAME = {} ; std::vector<std::string> SProf::META = {} ;

sprof.h 4514 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23  
SProf.hh 9529 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23  
SProfile.h 2060 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23  
sprop.h 3491 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23  
sproplist.h 2497 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23  
SPropMockup.h 4199 bytes 2026-07-21 07:00:46 2026-07-21 07:54:23 formerly SProp.hh
sqat4.h 25036 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

pragma once

squad.h 28238 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
squad_double.h 1403 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

pragma once

squadx.h 643 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 facilitate storing uint64_t values into quad4 which uses 32 bit elements
SRand.cc 263 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

include <cstdlib>

SRand.hh 214 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
SRandom.h 133 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

pragma once struct SRandom { virtual int getFlatCursor() const = 0 ; virtual double getFlatPrior() const = 0 ; };

srec.h 4724 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 highly domain compressed photon step records used for debugging only
SRecord.h 12288 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

Loads and summarizes photon record arrays.

SRenderer.cc 742 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
SRenderer.hh 1318 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
SRG.h 1193 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 Raygen Mode
SRM.h 2099 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 Running Mode
srng.h 2233 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 picks curandState implementation
SRng.hh 301 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
srng_traits.h 705 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 common RNG traits interface
srngcpu.h 3520 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 C++ standard random number generation
SScene.h 32417 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

Canonical SScene instance is member of SSim and is instanciated by the SSim ctor.

sscint.h 2699 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 scintillation genstep helpers
SSeq.cc 1285 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
sseq.h 7622 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24 photon level step-by-step history and material recording seqhis/seqmat using NSEQ 64 bit uint
SSeq.hh 1050 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24  
sseq_array.h 2039 bytes 2026-07-21 07:00:46 2026-07-21 07:54:24

Facilitate history selection using seq array This is used from:: sseq_record.h

sseq_index.h 17115 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25  
sseq_record.h 3463 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

Enable selection of photon records with particular histories such as "TO BT AB" Used from:: sysrap/tests/sseq_record_test.cc sysrap/SRecord.h

SSim.cc 25541 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

include <map>

SSim.hh 4775 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25  
SSimtrace.h 3676 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

SSimtrace : aiming to replace X4Simtrace is very local centric it populates a default sframe with ce from the G4VSolid.

SSimulator.h 1100 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25 pure virtual interface used from QSim, G4CXOpticks, CSGOptiX
sslice.h 3993 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25 python style gs[start:stop] slice of genstep arrays/vectors
ssolid.h 5168 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25  
SSortKV.cc 1221 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25  
SSortKV.hh 1787 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25  
SStackFrame.h 2753 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

SStackFrame Used for stack frame introspection based on *cxxabi.h*

sstamp.h 5127 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

pragma once

sstandard.h 21256 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25 standard domain arrays
sstate.h 3554 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

pragma once

sstr.h 38278 bytes 2026-07-21 07:00:46 2026-07-21 07:54:25

pragma once

SSys.cc 18999 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
ssys.h 30847 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26

Note that strings like "1e-9" parse ok into float/double.

SSys.hh 4999 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
ssystime.h 1936 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
st.h 611 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26

st : complete binary tree expressions cf with CSG/csg_postorder.h that is used on GPU for these // tree_nodes_ = lambda height:( (0x1 << (1+(height))) - 1 )

stag.h 11674 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26 random consumption tags for simulation alignment purposes
stexture.h 364 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26

pragma once

SThetaCut.cc 4369 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26

include <csignal>

SThetaCut.hh 262 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
STime.cc 1171 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
STime.hh 962 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
stimer.h 6942 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
STimes.cc 3130 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
STimes.hh 1305 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
stmm.h 20606 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26 Thin/Thick Multi-layer Stack TMM "Transfer Matrix Method" A,R,T calculation
storch.h 18351 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26 torch genstep helpers
storchtype.h 2214 bytes 2026-07-21 07:00:46 2026-07-21 07:54:26  
stra.h 24923 bytes 2026-07-21 07:00:46 2026-07-21 07:54:27  
STrackInfo.h 4459 bytes 2026-07-21 07:00:46 2026-07-21 07:54:27

formerly U4TrackInfo.h) Formerly uses templated STrackInfo but as doing dynamic cast on such a type is not possible that is dangerous as must rely on no other track info subclasses being in use.

stran.h 21867 bytes 2026-07-21 07:00:46 2026-07-21 07:54:27 Tran
STranche.cc 2624 bytes 2026-07-21 07:00:46 2026-07-21 07:54:27  
STranche.hh 1286 bytes 2026-07-21 07:00:46 2026-07-21 07:54:27  
stree.h 236529 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29 u4/U4Tree.h
strid.h 14424 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

strid::Encode Formerly kludge skipped e=0 for some non-valid reason "kludge to keep [:,3,3] 1.

strided_range.h 3255 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
SU.cu 6241 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
SU.hh 2189 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
SUniformRand.h 2470 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

This adapts u4/U4UniformRand.h to try to get rid of Geant4 dependency.

suniquename.h 1244 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

This allows storing large numbers of repetitive names without repeating them, by storing integer indices into the names vector instead of storing all the repeated names.

SVec.cc 4397 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
svec.h 6956 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29 static vector<T> utilities
SVec.hh 1609 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
sview.h 1837 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

Templated reinterpretation of bits allowing to view unsigned int as float and double and vice versa.

sxf.h 744 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29 simple wrapper to give uniform behaviour to spa/sxf/sbb
sxyz.h 47 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

pragma once enum { XYZ, YZ, XZ, XY } ;

SYSRAP_API_EXPORT.hh 789 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
SYSRAP_LOG.cc 1110 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
SYSRAP_LOG.hh 1321 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
tcomplex.h 1279 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

Based on Yuxiangs implementation following ROOT TComplex.h https://root.cern.ch/doc/master/TComplex_8h_source.html

torch.cpp 662 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

include <curand_kernel.h>

torch.cu 2165 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29  
torch.h 878 bytes 2026-07-21 07:00:46 2026-07-21 07:54:29

pragma once