The clock offset is used when the measurement is somehow based on a timestamp set by an onboard clock that may be out-of-sync with respect to UTC. It is mainly used for GNSS measurements (either when the satellite you deal with is a GNSS satellite with an onboard atomic clock or when you deal with a regular satellite with a GNSS receiver). In your case, the satellite is passive, the measurement is not related to any onboard clock, it is only timestamped by the radar itself.
If you don’t know the satellite at the start of operation, just create something like
ObservableSatellite unknownSat = new ObservableSatellite(0);
unknownSat to build all you measurements. Then you can do a first loop and call the estimate method with the state of each candidate satellite and based on the residuals select which one is more consistent. After this first loop, you will have associated original measurements with different satellites.
After this first step, you have can either do several mono-satellites orbit determinations or one multi-satellites orbit determination.
If you plan to perform n mono-satellites orbit determinations, then you can simply reuse the already built measurements, taking care to use only the measurements associated with one single satellite for each determination. this means you will have to filter out the measurements list. As all orbit determinations will manage only one satellite, for this OD they will all consider their satellite is the number 0 (since there is only one satellite at this step), this is the reason why you can reuse the measurements built before.
If you plan to use one multi-satellites orbit determination, you will have to rebuild the measurements, but this time using the appropriate candidate (i.e. you will use n different ObservableSatellite in one OD process).
I think n independant mono-satellites orbit determination is simpler, but one single multi-satellite OD would allow you to estimate common parameters like radar biases.