38 #ifndef SION_SION_DEBUG_H
39 #define SION_SION_DEBUG_H
43 #include "sion_printts.h"
45 #define _SION_DEFAULT_RANK -1
54 #define ONLY_DEBUG(A) A
55 #define DPRINTF(A) sion_dprintf A
56 #define DPRINTFP(A) sion_dprintfp A
57 #define DPRINTFTS(rank, desc) \
58 sion_dprintfp(128, "TIMING", rank, " step=%-40s timestamp=%18.8f\n", \
59 desc, _sion_get_time())
60 #define DPRINTFTS2(rank, desc) \
61 sion_dprintfp(256, "TIMING", rank, " step=%-40s timestamp=%18.8f\n", \
62 desc, _sion_get_time())
67 #define DPRINTFTS(A, B)
68 #define DPRINTFTS2(A, B)
81 int _sion_debug_init(
void);
87 int sion_dprintf(
int mask,
const char *format, ...);
93 int sion_dprintfp(
int mask,
const char *callfunction,
int rank,
const char *format, ...);
94 int sion_isdebug(
void);
102 void sion_debug_on(
int mask,
const char *filename);
103 void sion_debug_off(
void);
108 FILE *sion_get_dfile(
void);
113 void sion_dclose(
void);
115 void _sion_debug_set_lock_cb(
void (*set_lock)(
void),
void (*unset_lock)(
void));
117 int _sion_debug_set_query_thread_num_function(
int (*get_thread_num)(
void));