From 93da580b2a2230eecc6eab91e08d9bede7bbae5e Mon Sep 17 00:00:00 2001 From: hadaq Date: Sun, 5 Jul 2009 23:23:40 +0000 Subject: [PATCH] pulser.c not needed any more, moved to trbrich . --- libtrbnet/pulser.c | 172 --------------------------------------------- 1 file changed, 172 deletions(-) delete mode 100644 libtrbnet/pulser.c diff --git a/libtrbnet/pulser.c b/libtrbnet/pulser.c deleted file mode 100644 index 3457ab8..0000000 --- a/libtrbnet/pulser.c +++ /dev/null @@ -1,172 +0,0 @@ -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#define bufferSize 16385 - -/* ------ MAIN ---------------------------------------------------------- */ - -static FILE *hldFile = NULL; -static unsigned int evtCounter = 0; - -static void atexit0() -{ - if (hldFile != NULL) { - fclose(hldFile); - } - - fprintf(stderr, "%d Triggers were send\n", evtCounter); -} - -static void sigHandler(int sig) -{ - if (sig == SIGTERM) fprintf(stderr, "caught SIGTERM\n"); - if (sig == SIGINT) fprintf(stderr, "caught SIGINT\n"); - - exit(128 + sig); -} - -void usage(const char *progName) -{ - printf("Usage: %s [-h] [-d level] [-f outFileName] [-n numEvents] " - "[-t triggerType] [-i input]\n", - progName); - printf("Options:\n"); - printf(" -h give this help\n"); - printf(" -d turn on Debugging Information\n"); - printf(" -f write to outFileName\n"); - printf(" -n process numEvents triggers\n"); - printf(" -t send triggerType (default 0)\n"); - printf(" -i use triggerInput input(default 0)\n"); -} - -int main(int argc, char ** argv) -{ - char hldFileName[256] = "pulser.hld"; - uint16_t trgNumber = 0; - uint8_t triggerType = 0; - uint8_t input = 0; - unsigned int numEvts = UINT_MAX; - uint32_t buffer[bufferSize]; - sigset_t blockSet; - int size; - int writeToStdout = 0; - int i; - - trb_debug = 0; - - /* Parse Arguments */ - while ((i = getopt(argc, argv, "+hd:f:n:t:i:")) != -1) { - switch (i) { - case '?': - usage(basename(argv[0])); - exit(EXIT_FAILURE); - case 'h': - usage(basename(argv[0])); - exit(EXIT_SUCCESS); - case 'd': - trb_debug = strtoul(optarg, NULL, 0); - break; - case 'f': - strncpy(hldFileName, optarg, 256); - break; - case 'n': - numEvts = strtoul(optarg, NULL, 0); - break; - case 't': - triggerType = (uint8_t)strtoul(optarg, NULL, 0); - break; - case 'i': - input = (uint8_t)strtoul(optarg, NULL, 0); - break; - default: - break; - } - } - - /* open port */ - init_ports(); - - /* Open HLD-File */ - if (strncmp(hldFileName, "stdout", 256) != 0) { - hldFile = fopen(hldFileName, "w"); - if (hldFile == NULL) { - perror("File Open"); - } - } else { - writeToStdout = 1; - } - - /* Set Signalhandler */ - atexit(atexit0); - signal(SIGINT, sigHandler); - signal(SIGTERM, sigHandler); - - /* Set signal mask for blocking */ - sigemptyset(&blockSet); - sigaddset(&blockSet, SIGINT); - sigaddset(&blockSet, SIGTERM); - - /* Loop Triggers */ - while(evtCounter < numEvts) { - unsigned int len; - - /* Block signals */ - sigprocmask(SIG_BLOCK, &blockSet, NULL); - - /* Send Trigger and get Data */ - if (trb_send_trigger_rich(input, triggerType, 0xcc, 0xdd, 0xaabb) == -1) { - trb_error("Error send_trigger"); - exit(EXIT_FAILURE); - } - - size = trb_ipu_data_read(triggerType, 0xcc, 0xdd, 0xaabb, - buffer, bufferSize); - if (size == -1) { - fprintf(stderr, "Error IPU Read\n"); - exit(EXIT_FAILURE); - } - - /* There must be a DHDR --> size must be at least >= 2 */ - if (size < 2) { - fprintf(stderr, "DHRD error, size=%d\n", size); - exit(EXIT_FAILURE); - } - len = ((buffer[1] >> 16) & 0xffff) + 2; - if (len >= size) { - fprintf(stderr, "DHRD len error, len=%d size=%d\n", len, size); - exit(EXIT_FAILURE); - } - /*fprintf(stderr, "number padding zeros: %d\n", size - len);*/ - if (writeToStdout == 1) { - fprintf(stdout, "Trigger# %d\n", trgNumber); - for (i = 0; i < len; i++) { - fprintf(stdout, "0x%08x\n", buffer[i]); - } - } else { - if (fwrite((void*)buffer, 4, len, hldFile) != len) { - perror("Writing to File failed"); - exit(EXIT_FAILURE); - } - } - - /* Unblock signals */ - sigprocmask(SIG_UNBLOCK, &blockSet, NULL); - - trgNumber++; - evtCounter++; - if (evtCounter % 100 == 0) { - fprintf(stderr, "%d triggers send\n", trgNumber); - } - } - - exit(EXIT_SUCCESS); -} -- 2.43.0