GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
THILDataParserException.cxx
Go to the documentation of this file.
2#include "THILDataParser.h"
3
5 : fParserState(state), fFailedWord(failedWord)
6{
7 /// default constructor for THILDataParserException, stores the data parser state and the word the parser failed on
8 /// and creates a message based on them that can be accessed via THILDataParserException::what()
9 std::ostringstream stream;
10 stream << "THILDataParser failed on " << fFailedWord << ". word: ";
11 switch(fParserState) {
13 stream << "state is good, no idea what went wrong!" << std::endl;
14 break;
16 stream << "odd used data length" << std::endl;
17 break;
19 stream << "wrong buffer type, should have been 0x0200" << std::endl;
20 break;
22 stream << "event length is zero" << std::endl;
23 break;
25 stream << "odd event length" << std::endl;
26 break;
28 stream << "wrong event length" << std::endl;
29 break;
31 stream << "wrong pattern for time in microseconds" << std::endl;
32 break;
34 stream << "wrong pattern for hitpattern of germanium" << std::endl;
35 break;
37 stream << "wrong pattern for energy of germanium" << std::endl;
38 break;
40 stream << "wrong pattern for time of germanium" << std::endl;
41 break;
43 stream << "wrong pattern for hitpattern of Si 1" << std::endl;
44 break;
46 stream << "wrong pattern for energy of Si 1" << std::endl;
47 break;
49 stream << "wrong pattern for hitpattern of Si 2" << std::endl;
50 break;
52 stream << "wrong pattern for energy of Si 2" << std::endl;
53 break;
55 stream << "wrong pattern for hitpattern of Si 3" << std::endl;
56 break;
58 stream << "wrong pattern for energy of Si 3" << std::endl;
59 break;
61 stream << "wrong event ID" << std::endl;
62 break;
63 default: break;
64 };
65
66 fMessage = stream.str();
67}
68
70{
71 /// default destructor
72}
73
74const char* THILDataParserException::what() const noexcept
75{
76 /// return message string built in default constructor
77 return fMessage.c_str();
78}
THILDataParser::EDataParserState fParserState
THILDataParserException(THILDataParser::EDataParserState state, int failedWord)
const char * what() const noexcept override