26#define CTX(c) ((c) ? (c) : g_mrtk_ctx)
51 if (strlen(file) <
sizeof(rpath)) {
101 va_start(ap, format);
114 for (i = 0; i < n; i++) {
115 for (j = 0; j < m; j++) {
116 fprintf(c->
trace_fp,
" %*.*f", p, q, A[i + j * n]);
124 char str[64],
id[16];
131 for (i = 0; i < n; i++) {
135 " (%2d) %s %-3s rcv%d %13.3f %13.3f %13.3f %13.3f"
136 " %d %d %d %d %3.1f %3.1f\n",
137 i + 1, str,
id, obs[i].
rcv, obs[i].
L[0], obs[i].
L[1], obs[i].
P[0], obs[i].
P[1], obs[i].
LLI[0],
144 char s1[64], s2[64],
id[16];
151 for (i = 0; i < nav->
n; i++) {
155 fprintf(c->
trace_fp,
"(%3d) %-3s : %s %s %3d %3d %02x\n", i + 1,
id, s1, s2, nav->
eph[i].
iode, nav->
eph[i].
iodc,
168 char s1[64], s2[64],
id[16];
175 for (i = 0; i < nav->
ng; i++) {
179 fprintf(c->
trace_fp,
"(%3d) %-3s : %s %s %2d %2d %8.3f\n", i + 1,
id, s1, s2, nav->
geph[i].
frq,
186 char s1[64], s2[64],
id[16];
193 for (i = 0; i < nav->
ns; i++) {
197 fprintf(c->
trace_fp,
"(%3d) %-3s : %s %s %2d %2d\n", i + 1,
id, s1, s2, nav->
seph[i].
svh, nav->
seph[i].
sva);
210 for (i = 0; i < nav->
ne; i++) {
212 for (j = 0; j <
MAXSAT; j++) {
215 "%-3s %d %-3s %13.3f %13.3f %13.3f %13.3f"
216 " %6.3f %6.3f %6.3f %6.3f\n",
233 for (i = 0; i < nav->
nc; i++) {
235 for (j = 0; j <
MAXSAT; j++) {
251 for (i = 0; i < n; i++) {
252 fprintf(c->
trace_fp,
"%02X%s", *p++, i % 8 == 7 ?
" " :
"");
267extern void trace(
mrtk_ctx_t* ctx,
int level,
const char* format, ...) {
277extern void tracemat(
mrtk_ctx_t* ctx,
int level,
const double* A,
int n,
int m,
int p,
int q) {
void satno2id(int sat, char *id)
MRTKLIB Navigation Module — Navigation data types and satellite/nav utility functions.
MRTKLIB Observation Module — Observation data types and utility functions.
int reppath(const char *path, char *rpath, gtime_t time, const char *rov, const char *base)
Replace keywords in file path with date, time, rover and base station id.
MRTKLIB System Module — OS/filesystem utility functions.
void time2str(gtime_t t, char *s, int n)
Convert gtime_t struct to string.
gtime_t utc2gpst(gtime_t t)
Convert UTC to GPS time considering leap seconds.
gtime_t timeget(void)
Get current time in UTC.
uint32_t tickget(void)
Get current tick in milliseconds.
MRTKLIB Time Module — GNSS time types and conversion functions.
void tracegnav(mrtk_ctx_t *ctx, int level, const nav_t *nav)
Output trace GLONASS navigation data.
#define CTX(c)
Resolve context: use explicit ctx if non-NULL, else fall back to global.
void traceopen(mrtk_ctx_t *ctx, const char *file)
Open trace output (initializes tick counter for tracet).
void tracenav(mrtk_ctx_t *ctx, int level, const nav_t *nav)
Output trace navigation data (GPS ephemeris).
void tracehnav(mrtk_ctx_t *ctx, int level, const nav_t *nav)
Output trace SBAS navigation data.
void traceobs(mrtk_ctx_t *ctx, int level, const obsd_t *obs, int n)
Output trace observation data.
void tracelevel(mrtk_ctx_t *ctx, int level)
Set trace level.
void tracepclk(mrtk_ctx_t *ctx, int level, const nav_t *nav)
Output trace precise clock data.
void traceclose(mrtk_ctx_t *ctx)
Close trace output.
void traceb(mrtk_ctx_t *ctx, int level, const uint8_t *p, int n)
Output trace binary data.
void tracemat(mrtk_ctx_t *ctx, int level, const double *A, int n, int m, int p, int q)
Output trace matrix.
void tracet(mrtk_ctx_t *ctx, int level, const char *format,...)
Output trace message with elapsed time.
void tracepeph(mrtk_ctx_t *ctx, int level, const nav_t *nav)
Output trace precise ephemeris data.
void trace(mrtk_ctx_t *ctx, int level, const char *format,...)
Output trace message.
MRTKLIB Trace Module — debug trace and logging functions.
Runtime context for MRTKLIB processing.