mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-12-03 08:01:25 +08:00
60 lines
1.2 KiB
C
60 lines
1.2 KiB
C
/*********************************************************************
|
|
* Copyright 2018, UCAR/Unidata
|
|
* See netcdf/COPYRIGHT file for copying and redistribution conditions.
|
|
*********************************************************************/
|
|
#include "config.h"
|
|
#include <stdarg.h>
|
|
#include <stdio.h>
|
|
|
|
#include "dapincludes.h"
|
|
#include "nclog.h"
|
|
|
|
int ncdap3debug = 0;
|
|
|
|
#ifdef CATCHERROR
|
|
/* Place breakpoint here to catch errors close to where they occur*/
|
|
int
|
|
dapbreakpoint(int err)
|
|
{
|
|
return err;
|
|
}
|
|
|
|
int
|
|
dapthrow(int err, int lineno, const char* filename)
|
|
{
|
|
if(err == 0) return err;
|
|
fprintf(stderr,"$dapthrow: err=%d line=%d file=%s\n",err,lineno,filename); fflush(stderr);
|
|
return dapbreakpoint(err);
|
|
}
|
|
#endif
|
|
|
|
int
|
|
dappanic(const char* fmt, ...)
|
|
{
|
|
va_list args;
|
|
if(fmt != NULL) {
|
|
va_start(args, fmt);
|
|
vfprintf(stderr, fmt, args);
|
|
fprintf(stderr, "\n" );
|
|
va_end( args );
|
|
} else {
|
|
fprintf(stderr, "panic" );
|
|
}
|
|
fprintf(stderr, "\n" );
|
|
fflush(stderr);
|
|
return 0;
|
|
}
|
|
|
|
/*
|
|
Provide a way to print the oc full name for
|
|
an ocnode
|
|
*/
|
|
|
|
char*
|
|
ocfqn(OCddsnode node)
|
|
{
|
|
OClink conn;
|
|
oc_get_connection(node,&conn);
|
|
return makeocpathstring(conn,node,".");
|
|
}
|