AlcapDAQ
1
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include <time.h>
#include "midas.h"
#include "crate.h"
#include "vme.h"
#include "odb_wrapper.h"
#include "diag.h"
Go to the source code of this file.
Data Structures | |
struct | caenV767 |
Macros | |
#define | CAENV767_MAX_DMA_SIZE 256 |
#define | CAENV767_MAX_SIZE (32*1024*4) |
#define | ACTIVE_READOUT_MAX_PER_POLL (2*1024) |
#define | CAENV767_NUM_CHANNELS 128 |
#define | MAX_CAENV767 4 |
#define | CAENV767_OUTBUF 0x00 |
#define | CAENV767_CTR1 0x10 |
#define | CAENV767_STR2 0x48 |
#define | CAENV767_EVT_COUNT 0x4C |
#define | CAENV767_OPHAND 0x50 |
#define | CAENV767_OPCODE 0x52 |
#define | CAENV767_CLEAR 0x54 |
#define | CAENV767_NOT_VALID 0x00600000 |
#define | CAENV767_GLOBAL_TDC_ERROR 0x0008 |
Functions | |
INT | caenV767_bor () |
INT | caenV767_eor () |
INT | caenV767_poll_live () |
INT | caenV767_read (char *pevent) |
void | caenV767_opcode_write (struct caenV767 *caen, short code) |
short | caenV767_opcode_read (struct caenV767 *caen) |
INT | caenV767_bor1 (struct caenV767 *caen) |
INT | caenV767_eor1 (struct caenV767 *caen) |
INT | caenV767_fifo_read (struct caenV767 *caen, unsigned char *buffer, int max_size, bool in_active_readout) |
INT | caenV767_poll1 (struct caenV767 *caen) |
INT | caenV767_read1 (struct caenV767 *caen, char *pevent) |
Variables | |
struct readout_module | caenV767_module |
struct timeval | block_start_time |
struct caenV767 | caenV767 [MAX_CAENV767] |
#define ACTIVE_READOUT_MAX_PER_POLL (2*1024) |
Definition at line 35 of file caenV767.cpp.
Referenced by caenV767_poll1().
#define CAENV767_CLEAR 0x54 |
Definition at line 65 of file caenV767.cpp.
Referenced by caenV767_bor1(), and caenV767_read1().
#define CAENV767_CTR1 0x10 |
Definition at line 60 of file caenV767.cpp.
Referenced by caenV767_bor1().
#define CAENV767_EVT_COUNT 0x4C |
Definition at line 62 of file caenV767.cpp.
#define CAENV767_GLOBAL_TDC_ERROR 0x0008 |
Definition at line 71 of file caenV767.cpp.
Referenced by caenV767_read1().
#define CAENV767_MAX_DMA_SIZE 256 |
Definition at line 33 of file caenV767.cpp.
Referenced by caenV767_bor1().
#define CAENV767_MAX_SIZE (32*1024*4) |
Definition at line 34 of file caenV767.cpp.
Referenced by caenV767_read1().
#define CAENV767_NOT_VALID 0x00600000 |
Definition at line 68 of file caenV767.cpp.
Referenced by caenV767_fifo_read(), and caenV767_read1().
#define CAENV767_NUM_CHANNELS 128 |
Definition at line 36 of file caenV767.cpp.
Referenced by caenV767_bor1().
#define CAENV767_OPCODE 0x52 |
Definition at line 64 of file caenV767.cpp.
Referenced by caenV767_opcode_read(), and caenV767_opcode_write().
#define CAENV767_OPHAND 0x50 |
Definition at line 63 of file caenV767.cpp.
Referenced by caenV767_opcode_read(), and caenV767_opcode_write().
#define CAENV767_OUTBUF 0x00 |
Definition at line 59 of file caenV767.cpp.
Referenced by caenV767_fifo_read().
#define CAENV767_STR2 0x48 |
Definition at line 61 of file caenV767.cpp.
Referenced by caenV767_read1().
#define MAX_CAENV767 4 |
Definition at line 55 of file caenV767.cpp.
Referenced by caenV767_bor().
INT caenV767_bor | ( | ) |
Definition at line 219 of file caenV767.cpp.
References bank_name, caenV767_bor1(), crate_number, diag_print(), enabled, caenV767::enabled, MAX_CAENV767, odb_find_key(), odb_get_bool(), sprintf(), and SUCCESS.
INT caenV767_bor1 | ( | struct caenV767 * | caen) |
Definition at line 128 of file caenV767.cpp.
References caenV767::active_readout_buffer, caenV767::active_readout_buffer_size, caenV767::active_readout_size, CAENV767_CLEAR, CAENV767_CTR1, CAENV767_MAX_DMA_SIZE, CAENV767_NUM_CHANNELS, caenV767_opcode_write(), channel, crate_number, diag_print(), caenV767::do_active_readout, caenV767::half_full_level, handle, odb_get_bool(), odb_get_boolarray(), odb_get_dword(), odb_get_int(), caenV767::odb_name, caenV767::record_trailing_edges, SUCCESS, caenV767::vme_base, caenV767::vme_handle, vme_open(), vme_write_d16(), VMEMAP_ASPACE_A32, VMEMAP_DWIDTH_32, VMEMAP_PRGDATAAM_DATA, and VMEMAP_SUPUSERAM_SUPER.
INT caenV767_eor | ( | ) |
INT caenV767_eor1 | ( | struct caenV767 * | caen) |
Definition at line 253 of file caenV767.cpp.
References caenV767::active_readout_buffer, SUCCESS, vme_close(), and caenV767::vme_handle.
INT caenV767_fifo_read | ( | struct caenV767 * | caen, |
unsigned char * | buffer, | ||
int | max_size, | ||
bool | in_active_readout | ||
) |
Definition at line 283 of file caenV767.cpp.
References CAENV767_NOT_VALID, CAENV767_OUTBUF, i, size, status, caenV767::vme_base, vme_dma_read(), caenV767::vme_handle, and vme_read_d32().
short caenV767_opcode_read | ( | struct caenV767 * | caen) |
Definition at line 107 of file caenV767.cpp.
References CAENV767_OPCODE, CAENV767_OPHAND, caenV767::vme_base, caenV767::vme_handle, and vme_read_d16().
void caenV767_opcode_write | ( | struct caenV767 * | caen, |
short | code | ||
) |
Definition at line 91 of file caenV767.cpp.
References CAENV767_OPCODE, CAENV767_OPHAND, caenV767::vme_base, caenV767::vme_handle, vme_read_d16(), and vme_write_d16().
INT caenV767_poll1 | ( | struct caenV767 * | caen) |
Definition at line 318 of file caenV767.cpp.
References caenV767::active_readout_buffer, caenV767::active_readout_buffer_size, ACTIVE_READOUT_MAX_PER_POLL, caenV767::active_readout_size, block_start_time, caenV767::bytes_per_second, caenV767_fifo_read(), diag_print(), caenV767::do_active_readout, FE_NEED_STOP, MIN, caenV767::odb_name, size, status, SUCCESS, and TRUE.
INT caenV767_poll_live | ( | ) |
INT caenV767_read | ( | char * | pevent) |
INT caenV767_read1 | ( | struct caenV767 * | caen, |
char * | pevent | ||
) |
Definition at line 401 of file caenV767.cpp.
References caenV767::active_readout_buffer, caenV767::active_readout_size, caenV767::bank_name, block_start_time, caenV767::bytes_per_second, CAENV767_CLEAR, caenV767_fifo_read(), CAENV767_GLOBAL_TDC_ERROR, CAENV767_MAX_SIZE, CAENV767_NOT_VALID, CAENV767_STR2, diag_print(), FALSE, caenV767::odb_name, status, SUCCESS, caenV767::vme_base, caenV767::vme_handle, vme_read_d16(), and vme_write_d16().
struct timeval block_start_time |
Definition at line 53 of file caenV767.cpp.
struct caenV767 caenV767[MAX_CAENV767] |
Definition at line 56 of file caenV767.cpp.
struct readout_module caenV767_module |
Definition at line 20 of file caenV767.cpp.