115 JParser<> zap(
"Program to compare toashort data.");
117 zap[
'f'] =
make_field(inputFile,
"two outputs of JConvertDB -q toashort");
118 zap[
'n'] =
make_field(numberOfEvents) = JLimit::max();
123 catch(
const exception &error) {
124 FATAL(error.what() << endl);
127 if (inputFile.size() != 2
u) {
128 FATAL(
"Wrong number of input files " << inputFile.size() << endl);
131 const size_t width = max(inputFile[0].size(), inputFile[1].size());
135 for (
int i = 0; i != 2; ++i) {
138 buffer[i].push_back(*
in.next());
141 sort(buffer[i].begin(), buffer[i].end(),
compare);
144 int count[] = { 0, 0 };
147 p0 = buffer[0].begin(),
148 p1 = buffer[1].begin(); p0 != buffer[0].end() &&
p1 != buffer[1].end(); ) {
150 for ( ; p0 != buffer[0].end() &&
p1 != buffer[1].end() &&
compare(*p0,*
p1); ++p0, ++count[1]) {
151 DEBUG(
">> " << setw(width) << left << inputFile[0] << right <<
' ' << *p0 << endl);
154 for ( ; p0 != buffer[0].end() &&
p1 != buffer[1].end() &&
compare(*
p1,*p0); ++
p1, ++count[1]) {
155 DEBUG(
"<< " << setw(width) << left << inputFile[1] << right <<
' ' << *
p1 << endl);
162 DEBUG(setw(width) << left << inputFile[0] << right <<
' ' << *p0 <<
" \\" << endl);
163 DEBUG(setw(width) << left << inputFile[1] << right <<
' ' << *
p1 <<
" / " << endl);
170 STATUS(
"Number of differences / events: " << count[1] <<
" / " << count[0] << endl);
172 if (buffer[0].size() != buffer[1].size()) {
173 FATAL(
"Different size " << buffer[0].size() <<
' ' << buffer[1].size() << endl);
177 FATAL(
"Number of differences " << count[1] << endl);
Utility class to parse command line options.
Auxiliary class for defining the range of iterations of objects.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
static struct JACOUSTICS::@4 compare
Auxiliary data structure to sort transmissions.
Object reading from a list of files.
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
#define DEBUG(A)
Message macros.