larlight::event_fifo Class Reference

Event-wise data member class to hold a collection of ch-wise data members. More...

#include <fifo.hh>

Inheritance diagram for larlight::event_fifo:
larlight::event_base larlight::data_base

List of all members.

Public Member Functions

 event_fifo (DATA::DATA_TYPE type=DATA::FIFO)
 Default constructor ... provide an option to set the length of ch-wise data.
 event_fifo (const event_fifo &original)
 Default copy constructor needed to avoid memory leak in ROOT streamer.
 ~event_fifo ()
 Default destructor.
void set_event_number (UInt_t n)
 Setter for the evnet number.
void set_event_frame_number (UInt_t n)
 Setter for the event frame number.
void set_module_address (UChar_t n)
 Setter for the module address from which this event is read-out.
void set_module_id (UChar_t id)
 Setter for the module ID.
void set_checksum (UInt_t sum)
 Setter for the checksum.
void set_nwords (UInt_t n)
 Setter for the # words read out.
void set_fem_trig_frame_number (UInt_t n)
 Setter for the trigger frame id.
void set_fem_trig_sample_number (UInt_t n)
 Setter for the trigger timeslice.
UInt_t event_number () const
 Getter for the event number.
UInt_t event_frame_number () const
 Getter for the frame ID.
UChar_t module_address () const
 Getter for the module address.
UChar_t module_id () const
 Getter for the module ID.
UInt_t checksum () const
 Getter for the checksum.
UInt_t nwords () const
 Getter for the number of read words.
UInt_t fem_trig_frame_number () const
 Getter for the trigger frame number.
UInt_t fem_trig_sample_number_RAW () const
 Getter for the fem trigger sample number RAW.
UInt_t fem_trig_sample_number_2MHz () const
 Getter for the fem trigger sample number in 2 MHz.
UInt_t fem_trig_sample_number_16MHz () const
 Getter for the fem trigger sample number in 16 MHz.
UInt_t fem_trig_sample_number_64MHz () const
 Getter for the fem trigger sample number in 64 MHz.
virtual void clear_data ()
 A function to reset data member variables.
void set_run (UInt_t run)
 run number setter
void set_subrun (UInt_t run)
 sub-run number setter
void set_event_id (UInt_t id)
 event-id setter
UInt_t run () const
 run number getter
UInt_t subrun () const
 sub-run number getter
UInt_t event_id () const
 event-id getter
DATA::DATA_TYPE data_type () const
 data type getter
void add_association (DATA::DATA_TYPE type, const std::vector< unsigned short > ass)
 Adder for a set of association.
size_t size_association (DATA::DATA_TYPE type) const
 Getter for # of associations.
const std::vector< unsigned short > association (DATA::DATA_TYPE type, size_t index=0) const
 Getter of an association.

Protected Member Functions

virtual void init_vars ()

Protected Attributes

UInt_t _event_number
 Actual implementation function of resetting variables.
UInt_t _event_frame_number
 event frame ID number
UChar_t _module_address
 module address number
UChar_t _module_id
 module ID number
UInt_t _fem_trig_frame_number
 trigger frame id
UInt_t _fem_trig_sample_number
 trigger time slice
UInt_t _checksum
 checksum of readout events
UInt_t _nwords
 # of event words readout
UInt_t fRunNumber
 Run number.
UInt_t fSubRunNumber
 Sub-Run number.
UInt_t fEventID
 Event ID.
DATA::DATA_TYPE _type
 DATA_TYPE.
std::map
< larlight::DATA::DATA_TYPE,
std::vector< std::vector
< unsigned short > > > 
_ass
 Association storage ... allow multiple set of associations.

Detailed Description

Event-wise data member class to hold a collection of ch-wise data members.

Definition at line 132 of file fifo.hh.


Constructor & Destructor Documentation

larlight::event_fifo::event_fifo ( DATA::DATA_TYPE  type = DATA::FIFO  ) 

Default constructor ... provide an option to set the length of ch-wise data.

Definition at line 50 of file fifo.cc.

References larlight::data_base::_type, clear_data(), larlight::DATA::DATA_TREE_NAME, larlight::MSG::ERROR, larlight::DATA::FIFO, larlight::DATA::PMTFIFO, larlight::Message::send(), and larlight::DATA::TPCFIFO.

00050                                            : std::vector<larlight::fifo>(), 
00051                          event_base(type)
00052   //***************************************************************************
00053   { 
00054     if(_type!=DATA::FIFO &&
00055        _type!=DATA::PMTFIFO &&
00056        _type!=DATA::TPCFIFO) {
00057       
00058       Message::send(MSG::ERROR,__FUNCTION__,
00059             Form("Provided data type (%s) not supported! Reset to default.",DATA::DATA_TREE_NAME[_type].c_str()));
00060       _type=DATA::FIFO;
00061     }    
00062     clear_data();
00063   }

larlight::event_fifo::event_fifo ( const event_fifo original  )  [inline]

Default copy constructor needed to avoid memory leak in ROOT streamer.

Definition at line 140 of file fifo.hh.

00141       : std::vector<larlight::fifo>(original),
00142     event_base(original),
00143     _event_number(original._event_number),
00144     _event_frame_number(original._event_frame_number),
00145     _module_address(original._module_address),
00146     _module_id(original._module_id),
00147     _fem_trig_frame_number(original._fem_trig_frame_number),
00148     _fem_trig_sample_number(original._fem_trig_sample_number),
00149     _checksum(original._checksum),
00150     _nwords(original._nwords)
00151     {}

larlight::event_fifo::~event_fifo (  )  [inline]

Default destructor.

Definition at line 154 of file fifo.hh.

00154 {}


Member Function Documentation

void larlight::data_base::add_association ( DATA::DATA_TYPE  type,
const std::vector< unsigned short >  ass 
) [inherited]

Adder for a set of association.

Definition at line 9 of file data_base.cc.

References larlight::data_base::_ass.

00011   {
00012 
00013     if( _ass.find(type) == _ass.end() )
00014       
00015       _ass[type]=std::vector<std::vector<unsigned short> >();
00016     
00017     _ass[type].push_back(ass);
00018     
00019     
00020   }

const std::vector< unsigned short > larlight::data_base::association ( DATA::DATA_TYPE  type,
size_t  index = 0 
) const [inherited]

Getter of an association.

Definition at line 35 of file data_base.cc.

References larlight::DATA::DATA_TREE_NAME, larlight::MSG::ERROR, and larlight::Message::send().

00037   {
00038     
00039     size_t ass_length = size_association(type);
00040     
00041     if( !(ass_length) ) {
00042       
00043       Message::send(MSG::ERROR,__FUNCTION__,
00044             Form("There is no association to %s",DATA::DATA_TREE_NAME[type].c_str()));
00045       
00046       return std::vector<unsigned short>();
00047       
00048     }
00049     
00050     if( ass_length <= index ) {
00051       
00052       Message::send(MSG::ERROR,__FUNCTION__,
00053             Form("There are only %zu associations. No association @ index=%zu",ass_length,index));
00054       
00055       return std::vector<unsigned short>();
00056       
00057     }
00058     
00059     return ((_ass.find(type))->second).at(index);
00060   }

UInt_t larlight::event_fifo::checksum (  )  const [inline]

Getter for the checksum.

Definition at line 193 of file fifo.hh.

References _checksum.

00193 {return _checksum;} 

void larlight::event_fifo::clear_data (  )  [virtual]

A function to reset data member variables.

Reimplemented from larlight::event_base.

Definition at line 66 of file fifo.cc.

References init_vars().

Referenced by event_fifo().

00066                              {
00067   //***************************************************************************
00068     event_base::clear_data();
00069     clear();
00070     init_vars();
00071   }

DATA::DATA_TYPE larlight::event_base::data_type (  )  const [inline, inherited]

data type getter

Reimplemented from larlight::data_base.

Definition at line 112 of file data_base.hh.

References larlight::data_base::_type.

00112 {return _type; }

UInt_t larlight::event_fifo::event_frame_number (  )  const [inline]

Getter for the frame ID.

Definition at line 184 of file fifo.hh.

References _event_frame_number.

00184 {return _event_frame_number;}

UInt_t larlight::event_base::event_id (  )  const [inline, inherited]

event-id getter

Definition at line 110 of file data_base.hh.

References larlight::event_base::fEventID.

Referenced by main(), and larlight::storage_manager::read_event().

00110 { return fEventID;      }

UInt_t larlight::event_fifo::event_number (  )  const [inline]

Getter for the event number.

Definition at line 181 of file fifo.hh.

References _event_number.

00181 { return _event_number;}

UInt_t larlight::event_fifo::fem_trig_frame_number (  )  const [inline]

Getter for the trigger frame number.

Definition at line 199 of file fifo.hh.

References _fem_trig_frame_number.

00199 {return _fem_trig_frame_number;}

UInt_t larlight::event_fifo::fem_trig_sample_number_16MHz (  )  const [inline]

Getter for the fem trigger sample number in 16 MHz.

Definition at line 208 of file fifo.hh.

References _fem_trig_sample_number.

00208 {return _fem_trig_sample_number*8;}

UInt_t larlight::event_fifo::fem_trig_sample_number_2MHz (  )  const [inline]

Getter for the fem trigger sample number in 2 MHz.

Definition at line 205 of file fifo.hh.

References _fem_trig_sample_number.

00205 {return _fem_trig_sample_number;}    

UInt_t larlight::event_fifo::fem_trig_sample_number_64MHz (  )  const [inline]

Getter for the fem trigger sample number in 64 MHz.

Definition at line 211 of file fifo.hh.

References _fem_trig_sample_number.

00211 {return _fem_trig_sample_number*32;}

UInt_t larlight::event_fifo::fem_trig_sample_number_RAW (  )  const [inline]

Getter for the fem trigger sample number RAW.

Definition at line 202 of file fifo.hh.

References _fem_trig_sample_number.

00202 {return _fem_trig_sample_number;}

void larlight::event_fifo::init_vars (  )  [protected, virtual]
UChar_t larlight::event_fifo::module_address (  )  const [inline]

Getter for the module address.

Definition at line 187 of file fifo.hh.

References _module_address.

00187 {return _module_address;}

UChar_t larlight::event_fifo::module_id (  )  const [inline]

Getter for the module ID.

Definition at line 190 of file fifo.hh.

References _module_id.

00190 {return _module_id;}

UInt_t larlight::event_fifo::nwords (  )  const [inline]

Getter for the number of read words.

Definition at line 196 of file fifo.hh.

References _nwords.

00196 {return _nwords;}

UInt_t larlight::event_base::run (  )  const [inline, inherited]

run number getter

Definition at line 106 of file data_base.hh.

References larlight::event_base::fRunNumber.

00106 { return fRunNumber;    }

void larlight::event_fifo::set_checksum ( UInt_t  sum  )  [inline]

Setter for the checksum.

Definition at line 169 of file fifo.hh.

References _checksum.

00169 {_checksum=sum;}

void larlight::event_fifo::set_event_frame_number ( UInt_t  n  )  [inline]

Setter for the event frame number.

Definition at line 160 of file fifo.hh.

References _event_frame_number.

void larlight::event_base::set_event_id ( UInt_t  id  )  [inline, inherited]

event-id setter

Definition at line 103 of file data_base.hh.

References larlight::event_base::fEventID.

Referenced by main().

00103 { fEventID      = id;  }

void larlight::event_fifo::set_event_number ( UInt_t  n  )  [inline]

Setter for the evnet number.

Definition at line 157 of file fifo.hh.

References _event_number.

00157 { _event_number = n; }

void larlight::event_fifo::set_fem_trig_frame_number ( UInt_t  n  )  [inline]

Setter for the trigger frame id.

Definition at line 175 of file fifo.hh.

References _fem_trig_frame_number.

void larlight::event_fifo::set_fem_trig_sample_number ( UInt_t  n  )  [inline]

Setter for the trigger timeslice.

Definition at line 178 of file fifo.hh.

References _fem_trig_sample_number.

void larlight::event_fifo::set_module_address ( UChar_t  n  )  [inline]

Setter for the module address from which this event is read-out.

Definition at line 163 of file fifo.hh.

References _module_address.

00163 {_module_address=n;}

void larlight::event_fifo::set_module_id ( UChar_t  id  )  [inline]

Setter for the module ID.

Definition at line 166 of file fifo.hh.

References _module_id.

00166 {_module_id=id;}

void larlight::event_fifo::set_nwords ( UInt_t  n  )  [inline]

Setter for the # words read out.

Definition at line 172 of file fifo.hh.

References _nwords.

00172 {_nwords=n;}

void larlight::event_base::set_run ( UInt_t  run  )  [inline, inherited]

run number setter

Definition at line 99 of file data_base.hh.

References larlight::event_base::fRunNumber.

Referenced by main().

00099 { fRunNumber    = run; }

void larlight::event_base::set_subrun ( UInt_t  run  )  [inline, inherited]

sub-run number setter

Definition at line 101 of file data_base.hh.

References larlight::event_base::fSubRunNumber.

Referenced by main().

00101 { fSubRunNumber = run; }

size_t larlight::data_base::size_association ( DATA::DATA_TYPE  type  )  const [inherited]

Getter for # of associations.

Definition at line 23 of file data_base.cc.

Referenced by larlight::cluster::get_hit_type().

00025   {
00026     
00027     if( _ass.find(type) == _ass.end() ) return 0;
00028     
00029     return ((_ass.find(type))->second).size();
00030     //return _ass[type].size();
00031     
00032   }

UInt_t larlight::event_base::subrun (  )  const [inline, inherited]

sub-run number getter

Definition at line 108 of file data_base.hh.

References larlight::event_base::fSubRunNumber.

00108 { return fSubRunNumber; }


Member Data Documentation

std::map<larlight::DATA::DATA_TYPE,std::vector<std::vector<unsigned short> > > larlight::data_base::_ass [protected, inherited]

Association storage ... allow multiple set of associations.

Definition at line 65 of file data_base.hh.

Referenced by larlight::data_base::add_association(), and larlight::data_base::clear_data().

UInt_t larlight::event_fifo::_checksum [protected]

checksum of readout events

Definition at line 229 of file fifo.hh.

Referenced by checksum(), init_vars(), and set_checksum().

event frame ID number

Definition at line 222 of file fifo.hh.

Referenced by event_frame_number(), init_vars(), and set_event_frame_number().

Actual implementation function of resetting variables.

event number counter

Definition at line 221 of file fifo.hh.

Referenced by event_number(), and set_event_number().

trigger frame id

Definition at line 226 of file fifo.hh.

Referenced by fem_trig_frame_number(), init_vars(), and set_fem_trig_frame_number().

module address number

Definition at line 223 of file fifo.hh.

Referenced by init_vars(), module_address(), and set_module_address().

UChar_t larlight::event_fifo::_module_id [protected]

module ID number

Definition at line 224 of file fifo.hh.

Referenced by init_vars(), module_id(), and set_module_id().

UInt_t larlight::event_fifo::_nwords [protected]

# of event words readout

Definition at line 230 of file fifo.hh.

Referenced by init_vars(), nwords(), and set_nwords().

DATA_TYPE.

Definition at line 62 of file data_base.hh.

Referenced by larlight::calorimetry::calorimetry(), larlight::cluster::cluster(), larlight::data_base::data_base(), larlight::event_base::data_type(), larlight::data_base::data_type(), larlight::endpoint2d::endpoint2d(), larlight::event_calorimetry::event_calorimetry(), larlight::event_cluster::event_cluster(), larlight::event_endpoint2d::event_endpoint2d(), event_fifo(), larlight::event_hit::event_hit(), larlight::event_mcpart::event_mcpart(), larlight::event_mcshower::event_mcshower(), larlight::event_mctruth::event_mctruth(), larlight::event_pulse::event_pulse(), larlight::event_shower::event_shower(), larlight::event_simch::event_simch(), larlight::event_sps::event_sps(), larlight::event_track::event_track(), larlight::event_user::event_user(), larlight::event_vertex::event_vertex(), larlight::event_wire::event_wire(), larlight::fifo::fifo(), larlight::hit::hit(), larlight::mcnu::mcnu(), larlight::mcpart::mcpart(), larlight::mcshower::mcshower(), larlight::mctrajectory::mctrajectory(), larlight::mctruth::mctruth(), larlight::pmtfifo::pmtfifo(), larlight::pulse::pulse(), larlight::fifo::readout_sample_number_16MHz(), larlight::fifo::readout_sample_number_2MHz(), larlight::fifo::readout_sample_number_64MHz(), larlight::shower::shower(), larlight::simch::simch(), larlight::spacepoint::spacepoint(), larlight::tpcfifo::tpcfifo(), larlight::track::track(), larlight::trigger::trigger(), larlight::user_info::user_info(), larlight::vertex::vertex(), and larlight::wire::wire().

UInt_t larlight::event_base::fEventID [protected, inherited]
UInt_t larlight::event_base::fRunNumber [protected, inherited]
UInt_t larlight::event_base::fSubRunNumber [protected, inherited]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Enumerations Enumerator

Generated on 3 Jun 2014 for MyProject by  doxygen 1.6.1