#ifndef _EVDP_H_
#define _EVDP_H_
/*KEEP,event,T=C++.*/
#include "event.h"
/*KEND.*/
#define swap_4(x) swap_long((int32_t *) x)
#define swap_2(x) swap_short((short *) x)
struct LOG_header {
uint32_t bc,exp,run,evt,dtm;
};
typedef struct LOG_header LOG_header;
struct EVT_header {
uint32_t bc;
unsigned short recid,sp;
uint32_t slt,cm,em;
};
typedef struct EVT_header EVT_header;
struct EVT_trailer {
uint32_t slt;
};
typedef struct EVT_trailer EVT_trailer;
struct FED_record {
unsigned short bc,fedid,recid,bxn;
unsigned char data[128];
};
typedef struct FED_record FED_record;
struct SLB_header {
uint32_t bc;
unsigned short recid,fltev,compid,slbn;
uint32_t dest;
};
typedef struct SLB_header SLB_header;
struct SLB_trailer {
unsigned short recid,fltev;
};
typedef struct SLB_trailer SLB_trailer;
extern EVT_DATA evdata;
extern LOG_header logh;
#ifdef __cplusplus
extern "C" {
#endif
int is_little_endian();
void swap_short(short *);
void swap_long(int32_t *);
int open_data_file(char *);
int close_data_file();
int reopen_data_file();
int reclose_data_file();
int goto_event(int);
int get_nextev(FED_record *, unsigned short, int);
int dump_cmp(FILE *, unsigned short);
#ifdef __cplusplus
}
#endif
#endif /* _EVDP_H_ */