GenericRayKernel

Acts as a switch between the AD/non-AD base class for RayKernels that calculate residual contributions along the trace of a Ray.

This effectively allows a class to either inherit from RayKernel for the non-AD case or ADRayKernel for the AD case via the boolean <is_ad>. For en example, see LineSourceRayKernel.