DOKK / manpages / debian 11 / libmseed-doc / mst_printgaplist.3.en
MST_PRINT(3) Library Functions Manual MST_PRINT(3)

mst_print - Printing of MSTrace information.

#include <libmseed.h>
void   mst_printtracelist ( MSTraceGroup *mstg, flag timeformat,
                            flag details, flag gaps );
void   mst_printsynclist ( MSTraceGroup *mstg, char *dccid,
                           flag subsecond );
void   mst_printgaplist ( MSTraceGroup *mstg, flag timeformat,
                          double *mingap, double *maxgap );

mst_printtracelist prints a formatted list of the MSTrace segments in the given MSTraceGroup. If the details flag is greater than 0 the sample rate and sample count are printed for each trace. If the gaps flag is greater than zero the time gap from the previous MSTrace (if the source name matches) is printed. All output is printed using ms_log(3) at level 0.

mst_printsynclist prints a formatted list of the MSTrace segments in the given MSTraceGroup similar to mst_printtracelist but the format is a SYNC listing. If a dccid string is supplied it will be used along with the current system date to create the SYNC header line. If the subsecond flag is true (non-zero) the time values in the SYNC lines will include full libmseed precision, otherwise they will be truncted to integer second values.

mst_printgaplist prints a formatted list of the gaps between MSTrace segments in the given MSTraceGroup. If mingap or maxgap is not NULL their values will be enforced and only gaps/overlaps matching their implied criteria will be printed.

The timeformat argument for both mst_printtracelist and mst_printgaplist controls the format of the resulting time strings. Possible formats are:

0 : SEED time format (2005,146,00:00:00.000000)
1 : ISO time format (2005-05-26T00:00:00.000000)
2 : Epoch time, seconds since the epoch (1117065600.00000000)

Both mst_printtracelist and mst_printgaplist represent time overlaps as negative gaps. For a single sample overlap the value of the gap is calculated as zero, this will be printed as "-0" or negative zero to indicate an overlap.

The existence of gaps and overlaps is implicit in the structure of the MSTraceGroup, no special processing is done to detect gaps and overlaps in these routines.

The value of a gap is calculated as the difference between the time of the last sample before the gap and the time of the first sample after the gap. No sample 'coverage' time is included.

The value of an overlap is calculated as the time between two samples which represent the maximum amount of timeseries overlap.

When the MSTraces in the MSTraceGroup include a small segment that is completely overlapped by another larger segment the gap/overlap value will not be correct for either the smaller segment or the segment following it.

ms_intro(3)

Chad Trabant
IRIS Data Management Center
2008/11/21 Libmseed API