util-linux/term-utils/script-playutils.h

51 lines
1.8 KiB
C

#ifndef UTIL_LINUX_SCRIPT_PLAYUTILS_H
#define UTIL_LINUX_SCRIPT_PLAYUTILS_H
#include "c.h"
#include "debug.h"
#define SCRIPTREPLAY_DEBUG_INIT (1 << 1)
#define SCRIPTREPLAY_DEBUG_TIMING (1 << 2)
#define SCRIPTREPLAY_DEBUG_LOG (1 << 3)
#define SCRIPTREPLAY_DEBUG_MISC (1 << 4)
#define SCRIPTREPLAY_DEBUG_ALL 0xFFFF
UL_DEBUG_DECLARE_MASK(scriptreplay);
#define DBG(m, x) __UL_DBG(scriptreplay, SCRIPTREPLAY_DEBUG_, m, x)
#define ON_DBG(m, x) __UL_DBG_CALL(scriptreplay, SCRIPTREPLAY_DEBUG_, m, x)
/* CR to '\n' mode */
enum {
REPLAY_CRMODE_AUTO = 0,
REPLAY_CRMODE_NEVER,
REPLAY_CRMODE_ALWAYS
};
struct replay_setup;
struct replay_step;
void replay_init_debug(void);
struct replay_setup *replay_new_setup(void);
void replay_free_setup(struct replay_setup *stp);
int replay_set_default_type(struct replay_setup *stp, char type);
int replay_set_crmode(struct replay_setup *stp, int mode);
int replay_set_timing_file(struct replay_setup *stp, const char *filename);
const char *replay_get_timing_file(struct replay_setup *setup);
int replay_get_timing_line(struct replay_setup *setup);
int replay_associate_log(struct replay_setup *stp, const char *streams, const char *filename);
int replay_set_delay_min(struct replay_setup *stp, const struct timeval *tv);
int replay_set_delay_max(struct replay_setup *stp, const struct timeval *tv);
int replay_set_delay_div(struct replay_setup *stp, const double divi);
struct timeval *replay_step_get_delay(struct replay_step *step);
const char *replay_step_get_filename(struct replay_step *step);
int replay_step_is_empty(struct replay_step *step);
int replay_get_next_step(struct replay_setup *stp, char *streams, struct replay_step **xstep);
int replay_emit_step_data(struct replay_setup *stp, struct replay_step *step, int fd);
#endif /* UTIL_LINUX_SCRIPT_PLAYUTILS_H */