#include <bin_word_search.hh>
Inheritance diagram for bin_word_search:

Public Types | |
| INT | |
| SHORT | |
| enum | WORD_BYTES { INT, SHORT } |
Public Member Functions | |
| bin_word_search () | |
| ~bin_word_search () | |
| void | set_target_word (PMT::word_t word) |
| void | set_filename (std::string name) |
| void | set_continue_mode (bool mode) |
| void | set_format (FORMAT::INPUT_FILE fmt) |
| void | set_nwords (size_t n) |
| void | set_word_bytes (WORD_BYTES bytes) |
| bool | run () |
| void | print_words (std::deque< PMT::word_t > *words) |
| void | set_verbosity (MSG::Level level) |
| Setter for the verbosity level. | |
| MSG::Level | get_verbosity () const |
| Getter for the verbosity level. | |
| const std::string | class_name () const |
| Getter for the class name. | |
Protected Attributes | |
| char | _buf [200] |
| char buffer for message manipulation | |
| bool | _verbosity [MSG::MSG_TYPE_MAX] |
| holder for enabled message levels | |
| MSG::Level | _verbosity_level |
| holder for specified verbosity level | |
| std::string | _name |
| class name holder | |
Private Attributes | |
| bin_io_handler | _fin |
| PMT::word_t | _target |
| bool | _continue_mode |
| size_t | _nwords |
| WORD_BYTES | _bytes |
Definition at line 9 of file bin_word_search.hh.
| bin_word_search::bin_word_search | ( | ) |
Definition at line 6 of file bin_word_search.cc.
References _bytes, _continue_mode, _nwords, _target, PMT::INVALID_WORD, and SHORT.
00006 { 00007 00008 _continue_mode = false; 00009 _target = PMT::INVALID_WORD; 00010 _nwords=20; 00011 _bytes = SHORT; 00012 }
| bin_word_search::~bin_word_search | ( | ) | [inline] |
| const std::string decoder_base::class_name | ( | ) | const [inline, inherited] |
Getter for the class name.
Definition at line 46 of file decoder_base.hh.
References decoder_base::_name.
00046 {return _name;};
| MSG::Level decoder_base::get_verbosity | ( | ) | const [inline, inherited] |
Getter for the verbosity level.
Definition at line 43 of file decoder_base.hh.
References decoder_base::_verbosity_level.
00043 {return _verbosity_level;};
| void bin_word_search::print_words | ( | std::deque< PMT::word_t > * | words | ) |
Definition at line 96 of file bin_word_search.cc.
References _bytes, _target, and INT.
Referenced by run().
00096 { 00097 00098 int output_word_counter = 0; 00099 std::string msg; 00100 for(std::deque<PMT::word_t>::const_iterator iter(words->begin()); 00101 iter != words->end(); 00102 ++iter){ 00103 00104 if((*iter) == _target) 00105 msg += "\033[95m"; 00106 00107 if(_bytes == INT) msg += Form("%08x ",(*iter)); 00108 else msg += Form("%04x ",(*iter)); 00109 00110 if((*iter) == _target) 00111 msg += "\033[0m"; 00112 00113 output_word_counter++; 00114 00115 if(output_word_counter%8 == 0) 00116 msg+="\n"; 00117 } 00118 00119 std::cout<<msg.c_str()<<std::endl<<std::endl; 00120 00121 }
| bool bin_word_search::run | ( | ) |
Definition at line 14 of file bin_word_search.cc.
References _bytes, _continue_mode, _fin, _nwords, _target, bin_io_handler::eof(), MSG::ERROR, INT, bin_io_handler::is_open(), bin_io_handler::open(), print_words(), bin_io_handler::read_word(), and decoder_base::set_verbosity().
00014 { 00015 00016 _fin.set_verbosity(MSG::ERROR); 00017 _fin.open(); 00018 00019 if(!_fin.is_open()) return false; 00020 00021 PMT::word_t word1,word2; 00022 00023 const size_t max_nwords = _nwords*2+1; 00024 00025 std::deque<PMT::word_t> words(max_nwords); 00026 00027 size_t total_word_counter = 0; 00028 size_t after_word_counter = 0; 00029 00030 while(1){ 00031 00032 word1 = _fin.read_word(); 00033 00034 if(_fin.eof()) break; 00035 00036 if(total_word_counter >= max_nwords) 00037 words.pop_front(); 00038 00039 if(_bytes == INT){ 00040 00041 words.push_back(word1); 00042 00043 total_word_counter++; 00044 00045 if(word1 == _target || after_word_counter>0) 00046 after_word_counter++; 00047 00048 if(after_word_counter == (_nwords+1)) { 00049 if(!_continue_mode) break; 00050 else{ 00051 print_words(&words); 00052 after_word_counter = 0; 00053 } 00054 } 00055 } 00056 else { 00057 00058 word2 = (word1>>16); 00059 word1 = (word1 & 0xffff); 00060 00061 words.push_back(word1); 00062 total_word_counter++; 00063 00064 if(word1 == _target || after_word_counter>0) 00065 after_word_counter++; 00066 00067 if(after_word_counter == (_nwords+1)) { 00068 if(!_continue_mode) break; 00069 else{ 00070 print_words(&words); 00071 after_word_counter = 0; 00072 } 00073 } 00074 00075 words.push_back(word2); 00076 total_word_counter++; 00077 if(word2 == _target || after_word_counter>0) 00078 after_word_counter++; 00079 00080 if(after_word_counter == (_nwords+1)) { 00081 if(!_continue_mode) break; 00082 else{ 00083 print_words(&words); 00084 after_word_counter = 0; 00085 } 00086 } 00087 } 00088 00089 } 00090 00091 if(after_word_counter) print_words(&words); 00092 00093 return true; 00094 }
| void bin_word_search::set_continue_mode | ( | bool | mode | ) | [inline] |
Definition at line 21 of file bin_word_search.hh.
References _continue_mode.
00021 {_continue_mode=mode;};
| void bin_word_search::set_filename | ( | std::string | name | ) | [inline] |
Definition at line 19 of file bin_word_search.hh.
References _fin, and bin_io_handler::set_filename().
00019 {_fin.set_filename(name);};
| void bin_word_search::set_format | ( | FORMAT::INPUT_FILE | fmt | ) | [inline] |
Definition at line 23 of file bin_word_search.hh.
References _fin, and bin_io_handler::set_format().
00023 {_fin.set_format(fmt);};
| void bin_word_search::set_nwords | ( | size_t | n | ) | [inline] |
| void bin_word_search::set_target_word | ( | PMT::word_t | word | ) | [inline] |
| void decoder_base::set_verbosity | ( | MSG::Level | level | ) | [inherited] |
Setter for the verbosity level.
Reimplemented in ana_processor.
Definition at line 11 of file decoder_base.cc.
References decoder_base::_verbosity, decoder_base::_verbosity_level, MSG::DEBUG, MSG::ERROR, MSG::INFO, MSG::MSG_TYPE_MAX, MSG::NORMAL, and MSG::WARNING.
Referenced by algo_slow_readout_decoder::algo_slow_readout_decoder(), compare_content(), decoder_base::decoder_base(), decoder_manager::decoder_manager(), decoder_manager::initialize(), main(), xmit_event_search::run(), run(), and ana_processor::set_verbosity().
00011 { 00012 00013 _verbosity_level=level; 00014 00015 for(size_t i=(size_t)(MSG::DEBUG); i<(size_t)(MSG::MSG_TYPE_MAX); ++i) 00016 _verbosity[i]=false; 00017 00018 switch(level){ 00019 case MSG::DEBUG: 00020 _verbosity[MSG::DEBUG]=true; 00021 case MSG::INFO: 00022 _verbosity[MSG::INFO]=true; 00023 case MSG::NORMAL: 00024 _verbosity[MSG::NORMAL]=true; 00025 case MSG::WARNING: 00026 _verbosity[MSG::WARNING]=true; 00027 case MSG::ERROR: 00028 _verbosity[MSG::ERROR]=true; 00029 case MSG::MSG_TYPE_MAX: 00030 break; 00031 } 00032 00033 }
| void bin_word_search::set_word_bytes | ( | WORD_BYTES | bytes | ) | [inline] |
char decoder_base::_buf[200] [protected, inherited] |
char buffer for message manipulation
Definition at line 46 of file decoder_base.hh.
Referenced by reco_wf::analyze(), pulse_viewer::analyze(), algo_slow_readout_decoder::check_event_quality(), storage_manager::close(), bin_io_handler::close(), decoder_manager::decode(), algo_slow_readout_decoder::decode_ch_word(), algo_pmt_xmit::decode_ch_word(), algo_slow_readout_decoder::decode_event_header(), pulse_viewer::get_waveform(), ana_processor::initialize(), pulse_viewer::next_pulse(), storage_manager::open(), bin_io_handler::open(), storage_manager::prepare_tree(), pulse_viewer::previous_pulse(), algo_slow_readout_decoder::print_adc_values(), algo_tpc_xmit::process_ch_word(), algo_slow_readout_decoder::process_ch_word(), algo_pmt_xmit::process_ch_word(), algo_fem_decoder_base::process_fem_header(), algo_xmit_decoder::process_header(), algo_slow_readout_decoder::process_header(), algo_slow_readout_decoder::process_word(), bin_io_handler::read_multi_word(), bin_io_handler::read_word(), and ana_processor::run().
WORD_BYTES bin_word_search::_bytes [private] |
Definition at line 39 of file bin_word_search.hh.
Referenced by bin_word_search(), print_words(), run(), and set_word_bytes().
bool bin_word_search::_continue_mode [private] |
Definition at line 37 of file bin_word_search.hh.
Referenced by bin_word_search(), run(), and set_continue_mode().
bin_io_handler bin_word_search::_fin [private] |
Definition at line 35 of file bin_word_search.hh.
Referenced by run(), set_filename(), and set_format().
std::string decoder_base::_name [protected, inherited] |
class name holder
Definition at line 53 of file decoder_base.hh.
Referenced by algo_base::algo_base(), algo_fem_decoder_base::algo_fem_decoder_base(), algo_fixed_window::algo_fixed_window(), algo_slow_readout_decoder::algo_slow_readout_decoder(), algo_threshold::algo_threshold(), algo_tpc_huffman::algo_tpc_huffman(), algo_trig_decoder::algo_trig_decoder(), ana_base::ana_base(), ana_processor::ana_processor(), beamgate_debugger::beamgate_debugger(), bin_io_handler::bin_io_handler(), decoder_base::class_name(), led_pulse_analyzer::led_pulse_analyzer(), led_pulse_selector::led_pulse_selector(), pmt_slow_encoder::pmt_slow_encoder(), pmtbaseline::pmtbaseline(), pmtbaseline_ana::pmtbaseline_ana(), preco_algo_base::preco_algo_base(), pulse_analyzer::pulse_analyzer(), pulse_reco::pulse_reco(), pulse_selector_base::pulse_selector_base(), pulse_selector_simple::pulse_selector_simple(), pulse_viewer::pulse_viewer(), reco_wf::reco_wf(), storage_manager::storage_manager(), and waveform_sampler::waveform_sampler().
size_t bin_word_search::_nwords [private] |
Definition at line 38 of file bin_word_search.hh.
Referenced by bin_word_search(), run(), and set_nwords().
PMT::word_t bin_word_search::_target [private] |
Definition at line 36 of file bin_word_search.hh.
Referenced by bin_word_search(), print_words(), run(), and set_target_word().
bool decoder_base::_verbosity[MSG::MSG_TYPE_MAX] [protected, inherited] |
holder for enabled message levels
Definition at line 51 of file decoder_base.hh.
Referenced by reco_wf::analyze(), algo_slow_readout_decoder::check_event_quality(), storage_manager::close(), decoder_manager::decode(), algo_slow_readout_decoder::decode_ch_word(), algo_pmt_xmit::decode_ch_word(), algo_slow_readout_decoder::decode_event_header(), algo_fem_decoder_base::decode_fem_header(), algo_trig_decoder::decode_trigger_words(), decoder_manager::finalize(), beamgate_debugger::finalize(), ana_processor::finalize(), decoder_manager::initialize(), beamgate_debugger::initialize(), ana_processor::initialize(), storage_manager::open(), beamgate_debugger::prepare_histo(), storage_manager::prepare_tree(), algo_tpc_xmit::process_ch_word(), algo_tpc_huffman::process_ch_word(), algo_slow_readout_decoder::process_ch_word(), algo_pmt_xmit::process_ch_word(), algo_tpc_xmit::process_event_last_word(), algo_pmt_xmit::process_event_last_word(), algo_fem_decoder_base::process_fem_header(), algo_pmt_xmit::process_fem_last_word(), algo_xmit_decoder::process_header(), algo_slow_readout_decoder::process_header(), algo_fem_decoder_base::process_word(), bin_io_handler::read_multi_word(), storage_manager::reset(), beamgate_debugger::reset(), ana_processor::reset(), decoder_manager::run(), ana_processor::run(), decoder_base::set_verbosity(), algo_tpc_xmit::store_event(), and algo_pmt_xmit::store_event().
MSG::Level decoder_base::_verbosity_level [protected, inherited] |
holder for specified verbosity level
Definition at line 52 of file decoder_base.hh.
Referenced by pulse_viewer::analyze(), decoder_base::get_verbosity(), pulse_viewer::initialize(), decoder_manager::initialize(), ana_processor::initialize(), bin_io_handler::read_multi_word(), bin_io_handler::read_word(), and decoder_base::set_verbosity().
1.4.7