#include <DataFormats/daq_common_header.hh>
#include <DataFormats/infoword.hh>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <cstring>
#include <sys/ioctl.h>
#include <signal.h>
#include <unistd.h>
#include <vector>
#include <cassert>
Go to the source code of this file.
|
static const unsigned int | ttdc = 1414808643 |
|
static const unsigned int | taes = 1413563731 |
|
static int | terminal_width |
|
void sig_term_change |
( |
int |
| ) |
|
Definition at line 23 of file daq_parser.cpp.
25 static bool const is_a_tty = isatty(1);
32 ioctl(1, TIOCGWINSZ, &sz);
static int terminal_width
struct __attribute__ |
( |
(packed) |
| ) |
|
std::ostream& operator<< |
( |
std::ostream & |
stream, |
|
|
const hit_t & |
hit |
|
) |
| |
|
inline |
Definition at line 44 of file daq_parser.cpp.
46 return stream <<
"C: "
47 << std::setfill(
' ') << std::setw(2)
48 << (
unsigned int) hit.channel
51 << std::setfill(
' ') << std::setw(6)
52 << ntohl(hit.timestamp)
55 << std::setfill(
' ') << std::setw(6)
56 << (
unsigned int) hit.ToT;
void print_acoustic_data |
( |
const char *const |
buffer, |
|
|
ssize_t |
buffer_size |
|
) |
| |
Definition at line 59 of file daq_parser.cpp.
63 std::cout <<
"InfoWord: yes\n"
64 << *
static_cast<const InfoWord* const
>(
static_cast<const void* const
>(
70 std::cout <<
"InfoWord: no\n";
bool is_infoword(const void *const data)
void print_summary |
( |
hit_t const *const |
hits, |
|
|
std::size_t |
nhits |
|
) |
| |
Definition at line 74 of file daq_parser.cpp.
78 for (
unsigned i = 0;
i < nhits; ++
i) {
79 if (hits[
i].channel < 0 || hits[
i].channel > 30) {
82 ++summary[hits[
i].channel];
88 for (
unsigned i = 0;
i < summary.size(); ++
i) {
89 std::cout <<
"CH" << std::setfill(
'0') << std::setw(2) <<
i
90 <<
": " << std::setfill(
' ') << std::setw(4) << summary[
i] <<
' ';
92 if ((
i + 1) % n == 0) {
100 std::cout <<
"wrong channels: " << wrong <<
'\n';
static int terminal_width
void print_optical_data |
( |
const char *const |
buffer, |
|
|
ssize_t |
buffer_size |
|
) |
| |
Definition at line 104 of file daq_parser.cpp.
108 std::cout <<
"Number of hits: " << nhits <<
'\n';
110 const hit_t*
const hits =
static_cast<const hit_t* const
>(
111 static_cast<const void* const
>(buffer)
115 const int printing = 20 > nhits ? nhits : 20;
118 for (
int i = 0;
i < printing; ++
i)
121 << std::setfill(
'0') << std::setw(2)
126 if ((
i + 1) % n == 0)
static int terminal_width
void print_summary(hit_t const *const hits, std::size_t nhits)
static const size_t buffer_size
void parseData |
( |
std::istream & |
stream | ) |
|
Definition at line 141 of file daq_parser.cpp.
149 stream.read((
char*) &header,
sizeof(header));
151 if (stream.gcount() !=
sizeof(header))
156 std::cout <<
"Counter: " << ++count <<
'\n';
159 assert(header.
FrameLength -
sizeof(header) >= 0 &&
"Wrong frame length.");
161 std::size_t
const payload_size = header.
FrameLength -
sizeof(header);
163 if (payload.capacity() < payload_size)
165 payload.resize(payload_size);
168 stream.read((
char*) payload.data(), payload_size);
170 if (static_cast<std::size_t>(stream.gcount()) != payload_size)
180 std::cout <<
"Unknown data type\n";
183 std::cout << ' ' << std::string((terminal_width > 3 ?
terminal_width - 2 : 1),
'=') <<
" \n";
static int terminal_width
then usage $script< input file >[option] nPossible options count
void print_optical_data(const char *const buffer, ssize_t buffer_size, int max_col)
static const unsigned int ttdc
void print_acoustic_data(const char *const buffer, ssize_t buffer_size, int max_col)
static const unsigned int taes
int main |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
Definition at line 187 of file daq_parser.cpp.
191 if (strcmp(argv[1],
"-h") == 0)
193 std::cout <<
"Usage: " << argv[0] <<
" [-h] [filename]\n"
195 <<
"-h shows this help\n"
196 <<
"filename: if specified reads from file, otherwise stdin is used\n";
213 std::ifstream input_file(argv[1], std::ios::binary);
void parseData(std::istream &stream)
void sig_term_change(int)
const unsigned int ttdc = 1414808643 |
|
static |
const unsigned int taes = 1413563731 |
|
static |