00001 #ifndef TRIGGER_CC 00002 #define TRIGGER_CC 00003 00004 #include "trigger.hh" 00005 00006 namespace larlight { 00007 00008 trigger::trigger(DATA::DATA_TYPE type) : event_base(type) 00009 { 00010 if(_type!=DATA::Trigger) { 00011 00012 Message::send(MSG::ERROR,__FUNCTION__, 00013 Form("Provided data type (%s) not supported! Reset to default.",DATA::DATA_TREE_NAME[_type].c_str())); 00014 00015 _type=DATA::Trigger; 00016 } 00017 00018 clear_data(); 00019 } 00020 00021 void trigger::clear_data(){ 00022 00023 event_base::clear_data(); 00024 init_vars(); 00025 00026 } 00027 00028 trigger::trigger(const trigger &original) : 00029 event_base(original), 00030 _trig_sample_number(original._trig_sample_number), 00031 _trig_frame_number(original._trig_frame_number), 00032 _trig_number(original._trig_number), 00033 _pmt_data(original._pmt_data), 00034 _trig_pc(original._trig_pc), 00035 _trig_ext(original._trig_ext), 00036 _active(original._active), 00037 _gate1_in(original._gate1_in), 00038 _gate2_in(original._gate2_in), 00039 _veto_in(original._veto_in), 00040 _calib(original._calib), 00041 _remainder_64MHz(original._remainder_64MHz), 00042 _remainder_16MHz(original._remainder_16MHz) 00043 {}; 00044 00045 void trigger::init_vars(){ 00046 00047 _trig_sample_number = 0xffff; 00048 _trig_frame_number = FEM::INVALID_WORD; 00049 _trig_number = FEM::INVALID_WORD; 00050 _pmt_data = 0xffff; 00051 _trig_pc = false; 00052 _trig_ext = false; 00053 _active = false; 00054 _gate1_in = false; 00055 _gate2_in = false; 00056 _veto_in = false; 00057 _calib = false; 00058 _remainder_16MHz = 0xffff; 00059 _remainder_64MHz = 0xffff; 00060 } 00061 00062 } 00063 #endif