This is a package for reading the LCIO file format, used for studies of the International Linear Collider, and other future collider concepts. See http://lcio.desy.de for details.
To install the latest version of the package, use the full path when adding the package. From the julia prompt you can type
]
add https://github.com/jstrube/LCIO.jl
We have attempted to achieve a faithful translation of the C++ API, with method names equal to those documented on the LCIO pages. Nevertheless, attempts have been made to improve the user experience. Examples:
float*
or double*
in the C++ API return a Float64[]
on the Julia side.nullptr
, so need to be wrapped in if
clauses. The way to deal with this on the julia side is to use something like the following syntax:ok, value = getReferencePoint(particle)
if ok
println(value)
end
getPosition
for hits, and getMomentum
for particles, which we assume always return valid valuesThe basic construct for iterating over a file is this:
using LCIO
LCIO.open("file.slcio") do reader
for event in reader
println(getEventNumber(event))
end
end
There are more examples in the examples/
directory.