
org.yamcs.protobuf.TimeCorrelationApiClient Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of yamcs-api Show documentation
Show all versions of yamcs-api Show documentation
Used by external clients to communicate with Yamcs
package org.yamcs.protobuf;
import com.google.protobuf.Empty;
import org.yamcs.api.MethodHandler;
import org.yamcs.api.Observer;
/**
*
* Methods related to the Time Correlation Service.
*
*/
@javax.annotation.processing.Generated(value = "org.yamcs.maven.ServiceGenerator", date = "2025-02-13T11:12:59.910669889Z")
public class TimeCorrelationApiClient extends AbstractTimeCorrelationApi {
private final MethodHandler handler;
public TimeCorrelationApiClient(MethodHandler handler) {
this.handler = handler;
}
/**
*
* Get the TCO config
*
* Returns the TCO configuration comprising the accuracy, validity and the fixed delays.
*
*/
@Override
public final void getConfig(Void ctx, GetTcoConfigRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(0),
request,
TcoConfig.getDefaultInstance(),
observer);
}
/**
*
* Set the TCO config
*
* Set the TCO configuration. The configuration is not persisted on disk.
*
*/
@Override
public final void setConfig(Void ctx, SetTcoConfigRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(1),
request,
Empty.getDefaultInstance(),
observer);
}
/**
*
* Get the TCO status
*
* Returns the TCO status comprising the currently used coefficients, the last computed deviation
* and the last received samples.
*
*/
@Override
public final void getStatus(Void ctx, GetTcoStatusRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(2),
request,
TcoStatus.getDefaultInstance(),
observer);
}
/**
*
* Set the TCO coefficients
*
* Manually set the coefficients to be used for time correlation. These will overwrite
* the automatic computed coefficients.
*
*/
@Override
public final void setCoefficients(Void ctx, SetCoefficientsRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(3),
request,
Empty.getDefaultInstance(),
observer);
}
/**
*
* Reset the time correlation.
*
* The current used TCO coefficients are removed together with all collected samples.
*
*/
@Override
public final void reset(Void ctx, TcoResetRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(4),
request,
Empty.getDefaultInstance(),
observer);
}
/**
*
* Add intervals for the time of flight calculation.
*
* Each ``[ertStart, ertStop)`` interval contains a polynomial function used to compute the time of flight for the given ``ert``.
* The intervals can overlap and are sorted in descending order of the start time.
* The first (highest start time) interval where the requested ert fits, will be used for the calculation.
*
* The formula used for calculating the time of flight for a frame/packet received
* at ``ert`` in the ``[ertStart, ertStop)`` interval is:
*
* ``delta = ert - ertStart``
*
* ``tof = polCoef[0] + polCoef[1] * delta + polCoef[2] * delta^2 + ...``
*
* The result of the polynomial is the ``tof`` expressed in seconds.
*
*
*/
@Override
public final void addTimeOfFlightIntervals(Void ctx, AddTimeOfFlightIntervalsRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(5),
request,
Empty.getDefaultInstance(),
observer);
}
/**
*
* Delete intervals for the time of flight calculation.
*
* All the intervals with the start time
* falling in the requested [start, stop] interval will be removed.
*
*/
@Override
public final void deleteTimeOfFlightIntervals(Void ctx, DeleteTimeOfFlightIntervalsRequest request, Observer observer) {
handler.call(
getDescriptorForType().getMethods().get(6),
request,
Empty.getDefaultInstance(),
observer);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy