It appears that mgdraw.f gives us access to most of the Fluka variables at every particle substep. If I recall, the current implementation of advanced scoring works by waiting until the end of a history and allocating the track length backwards along the ray direction.
If we can wait until the end of the history then we can use usreou.f, which is called after the history is complete. By including the common block '(TRACKR)' we have access to all the data in the common block. If we need to do this after each history substep then using mgdraw.f would ideal.
When the times comes for us to implement tetmesh scoring in FluDAG, (after @kldunn has completed the refactor I guess) using https://www.fluka.org/free_download/course/portugal2010/Lectures/AdvancedUserRoutines2010.pdf as a guide to the Fluka internal variables and routines.
It appears that mgdraw.f gives us access to most of the Fluka variables at every particle substep. If I recall, the current implementation of advanced scoring works by waiting until the end of a history and allocating the track length backwards along the ray direction.
If we can wait until the end of the history then we can use usreou.f, which is called after the history is complete. By including the common block '(TRACKR)' we have access to all the data in the common block. If we need to do this after each history substep then using mgdraw.f would ideal.