#ifndef ALLPARAM_H
#define ALLPARAM_H
-#ifdef __cplusplus
-extern "C" {
-#endif
#include <stdio.h>
-#ifdef __cplusplus
-}
-#endif
/* limitations */
#define PARAM_MAX_ARRAY_LEN 128
#define PARAM_MAX_VALUE_LEN 128
#define PARAM_MAX_NAME_LEN 128
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* class */
typedef struct ParamS {
char *basedir;
const char *Param_getErrStr(const Param *param);
+
+#ifdef __cplusplus
+}
+#endif
#endif /* !ALLPARAM_H */
shmtrans.c hadtuqueue.c \
psxshm.c \
hadtu.c
-include_HEADERS = worker.h subevt.h shmtrans.h hadtuqueue.h psxshm.h hadtu.h \
+include_HEADERS = worker.h evt.h subevt.h shmtrans.h hadtuqueue.h psxshm.h hadtu.h \
hardware.h
daq_xmanage_SOURCES = tcldaq.c tkAppInit.c \
psxshm.c \
hadtu.c
-include_HEADERS = worker.h subevt.h shmtrans.h hadtuqueue.h psxshm.h hadtu.h \
+include_HEADERS = worker.h evt.h subevt.h shmtrans.h hadtuqueue.h psxshm.h hadtu.h \
hardware.h
daq_xmanage_SOURCES = tcldaq.c tkAppInit.c \
-
#ifndef ANSITAPE_H
#define ANSITAPE_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
#define BLOCKSIZE 8192
typedef struct AnsiTapeS {
int writeAnsiTape(AnsiTape *, const char *, size_t);
int closeAnsiTape(AnsiTape *);
+#ifdef __cplusplus
+}
+#endif
#endif
#include <allParam.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct TheArgsS {
char progName[PARAM_MAX_VALUE_LEN];
unsigned long nrOfMsgs;
void Args_dump(TheArgs *my);
int Args_prefixCode(TheArgs *my);
+#ifdef __cplusplus
+}
+#endif
#endif
#define MEM_RESET 0x38
#define MAGIC 0x3c
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct CtuS {
volatile uint8_t *base;
uint16_t internalTrigNr;
return_controller((unsigned long) my->base, 0x10000UL);
}
+#ifdef __cplusplus
+}
+#endif
#endif
#define MAXDEBUGEVTS 20
#define MAXINPATH 100
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct TheDebugS {
unsigned long *evtsBroken[MAXINPATH];
unsigned long evtsBrokenS[MAXINPATH][MAXDEBUGEVTS];
void Debug_printBrokenTrigMismatch(TheArgs *theArgs, TheStats *theStats);
void Debug_printPopTrigMismatch(TheArgs *theArgs, TheStats *theStats, TheDebug * theDebug, int qi);
-
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef EVT_H
#define EVT_H
#include <time.h>
#include <stdint.h>
-
#include "hadtu.h"
#include "subevt.h"
#define EVT_MAXSIZE (1024 * 1024)
+#ifdef __cplusplus
+extern "C" {
+#endif
+
static const int evtBlockSize = 8 * 1024;
enum EvtId {
void *Evt_fget(FILE *file);
void *Evt_appendSubEvt(void *my, void *subEvt);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef GENID32_H
#define GENID32_H
#include <stdint.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
uint32_t genId32(void);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef HADTU_H
#define HADTU_H
#include <stddef.h>
#include <stdint.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
enum HadTu_Decoding {
HadTu_queueDecoding = 3 << 16 | 99
return (void *) ((char *) hadTu + paddedSize);
}
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef HADTUQUEUE_H
#define HADTUQUEUE_H
#include <stddef.h>
#include "hadtu.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct HadTuQueueS HadTuQueue;
typedef enum HadTuQueueProtE {
void *HadTuQueue_front(const HadTuQueue *my);
void HadTuQueue_pop(HadTuQueue *my);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef HARDWARE_H
#define HARDWARE_H
#include <syslog.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct HardwareS Hardware;
int readoutMain(int argc, char *argv[]);
return getCardsR;
}
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef HLDREAD_H
#define HLDREAD_H
#include "evt.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
int startAnalysis(int argc, char **argv);
int analyseEvt(void *evt);
int stopAnalysis(void);
+#ifdef __cplusplus
+}
+#endif
+
#endif
-
#ifndef LOGGER_H
#define LOGGER_H
#include "stats.h"
#include "worker.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
void storeLogInfo(TheArgs *theArgs, const char *msg);
void storeRunInfoStart(time_t t, TheArgs *myArgs);
void storeRunInfoStop(time_t t, TheArgs *myArgs, TheStats *myStats);
void storeInfoStart(const char *n, time_t t, TheArgs *my);
void storeInfoStop(const char *n, time_t t, Worker *w, TheArgs *my);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef NETTRANS_H
#define NETTRANS_H
#include "worker.h"
#include "hadtu.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef enum NetTransTypeE {
NetTransType_invalid,
NetTransType_udp
unsigned long NetTrans_multiRecv(NetTrans *my[], void *hadTu[], size_t size[], int nrOfMsgs);
void NetTrans_multiReceive(NetTrans *my[], fd_set *fdSet, int nrOfMsgs);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef PSXSHM_H
#define PSXSHM_H
#include <sys/types.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct PsxShmS {
int fd;
void *addr;
int PsxShm_close(PsxShm *my);
int PsxShm_unlink(const char *name);
+#ifdef __cplusplus
+}
+#endif
#endif
#define EVENT_NUM_OFFSET 100
+#ifdef __cplusplus
+extern "C" {
+#endif
+
int Res_openFile(TheArgs *theArgs, time_t res_time);
int Res_writeFile(void *evt, uint32_t runNr, uint32_t seqNr);
int Res_closeFile(TheArgs *theArgs);
int Res_smartThreshold(TheArgs *theArgs, TheStats *theStats);
int remove_file(char *path);
+#ifdef __cplusplus
+}
+#endif
#endif
#define _POSIX_PATH_MAX 255
#endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct ShmTransS {
char name[_POSIX_PATH_MAX];
PsxShm *shm;
void ShmTrans_free(ShmTrans *my);
void ShmTrans_freeWhole(ShmTrans *my);
+#ifdef __cplusplus
+}
+#endif
#endif
#define NEVTIDS 64UL /* must be 2^n */
#define ERRBITPTRNMAX 5
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct TheStatsS {
unsigned long *evtsDiscarded;
unsigned long *evtsComplete;
void Stats_buffFillLvls(TheArgs *theArgs, TheStats *my, float interval, ShmTrans **shmtr);
void Stats_dump(TheArgs *theArgs, TheStats *my, int interval);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef SUBEVT_H
#define SUBEVT_H
#include <stdint.h>
-
#include "hadtu.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
enum SubEvtId {
SubEvtId_invalid = 0,
SubEvtId_test1 = 1,
void deleteSubEvt(void *my);
void *SubEvt_appendData(void *my, const void *data, size_t size);
+#ifdef __cplusplus
+}
+#endif
#endif
-
#ifndef WORKER_H
#define WORKER_H
#define WORKER_MAX_NUM_STATS 850
#define WORKER_MAX_NAME_LEN 32
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct StatisticS {
char name[WORKER_MAX_NAME_LEN];
unsigned long value;
int Worker_getStatistic(const char *name, const char *stat, unsigned long int *value);
int Worker_setStatistic(const char *name, const char *stat, unsigned long int *value);
+#ifdef __cplusplus
+}
+#endif
#endif