Is there a way to customize retcodes for different callback functions using DifferentialEquations?

I’m trying to solve odes using the package DifferentialEquations.

The odes are constrained by several conditions.

The solutions are terminated by different conditions.

How should I determine the specific condition (cond1 or cond2) for later analyses?

func = ODEFunction(func!, jac=jac_λ!)
prob = ODEProblem(func, u0, span, p)
condition(u, t, integrator) = cond_1(u,t) || cond_2(u,t)
affect!(integrator) = terminate!(integrator)
cb = DiscreteCallback(condition, affect!)
solve(prob; callback=cb)

you could have a parameter that is mutated as a signifier for it. But no, you cannot reliably set the retcode.