From 5a4e7dd5b12672afe8648b2b8d0216c8106ac5e2 Mon Sep 17 00:00:00 2001 From: zimoch Date: Tue, 19 Dec 2006 16:43:21 +0000 Subject: [PATCH] wrapper for dbl to file --- dumpRecords.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 dumpRecords.c diff --git a/dumpRecords.c b/dumpRecords.c new file mode 100644 index 0000000..a043c23 --- /dev/null +++ b/dumpRecords.c @@ -0,0 +1,43 @@ +/* dumpRecords is a wrapper function for dbl + it is required because of the changed syntax of dbl in R3.14. + */ + +#include +#include + +#ifdef BASE_VERSION +/* This is R3.13 */ +long dbl(char *precordTypename, char *filename, char *fields); + +int dumpRecords(char* file, char* fields) +{ + return dbl(0L, file, fields); +} + +#else +/* This is R3.14 */ +#include +#include +#include + +int dumpRecords(char* file, char* fields) +{ + FILE* oldStdout; + FILE* newStdout; + + newStdout = fopen(file, "w"); + if (!newStdout) + { + fprintf (stderr, "Can't open %s for writing: %s\n", + file, strerror(errno)); + return errno; + } + oldStdout = epicsGetThreadStdout(); + epicsSetThreadStdout(newStdout); + dbl(0L, fields); + fclose(newStdout); + epicsSetThreadStdout(oldStdout); + return OK; +} + +#endif