Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MicromegasRawDataEvaluation Class Reference

micromegas raw data decoder More...

#include <coresoftware/blob/master/offline/packages/micromegas/MicromegasRawDataEvaluation.h>

+ Inheritance diagram for MicromegasRawDataEvaluation:
+ Collaboration diagram for MicromegasRawDataEvaluation:

Classes

class  Container
 
class  Sample
 
class  Waveform
 

Public Member Functions

 MicromegasRawDataEvaluation (const std::string &name="MicromegasRawDataEvaluation")
 constructor
 
int Init (PHCompositeNode *) override
 global initialization
 
int InitRun (PHCompositeNode *) override
 run initialization
 
int process_event (PHCompositeNode *) override
 event processing
 
int End (PHCompositeNode *) override
 end of processing
 
void set_calibration_file (const std::string &value)
 calibration file
 
void set_n_sigma (double value)
 set number of RMS sigma used to defined static threshold on a given channel
 
void set_min_adc (double value)
 set minimum ADC value, disregarding pedestal and RMS.
 
void set_sample_min (int value)
 set min sample for noise estimation
 
void set_sample_max (int value)
 set min sample for noise estimation
 
void set_evaluation_outputfile (const std::string &outputfile)
 output file name for evaluation histograms
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
void Print (const std::string &="ALL") const override
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Private Types

using bco_matching_pair_t = std::pair< unsigned int, uint64_t >
 map fee bco to lvl1 bco
 
using fee_bco_matching_map_t = std::map< unsigned short, bco_matching_pair_t >
 map fee_id to bco maps
 
using bco_map_t = std::map< uint64_t, unsigned int >
 map waveforms to bco
 

Private Attributes

std::string m_calibration_filename = "TPOT_Pedestal_000.root"
 calibration filename
 
MicromegasCalibrationData m_calibration_data
 calibration data
 
MicromegasMapping m_mapping
 mapping
 
double m_n_sigma = 5
 number of RMS sigma used to define threshold
 
double m_min_adc = 50
 minimum ADC value, disregarding pedestal and RMS.
 
int m_sample_min = 0
 min sample for signal
 
int m_sample_max = 100
 max sample for signal
 
std::string m_evaluation_filename = "MicromegasRawDataEvaluation.root"
 evaluation output filename
 
std::unique_ptr< TFile > m_evaluation_file
 
TTree * m_evaluation_tree = nullptr
 tree
 
Containerm_container = nullptr
 main branch
 
fee_bco_matching_map_t m_fee_bco_matching_map
 
bco_map_t m_bco_map
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = std::numeric_limits<int>::max() - 10
}
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

micromegas raw data decoder

Definition at line 29 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 29 of file MicromegasRawDataEvaluation.h

Member Typedef Documentation

using MicromegasRawDataEvaluation::bco_map_t = std::map<uint64_t,unsigned int>
private

map waveforms to bco

this is used to count how many waveforms are found for a given lvl1 bco

Definition at line 230 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 230 of file MicromegasRawDataEvaluation.h

using MicromegasRawDataEvaluation::bco_matching_pair_t = std::pair<unsigned int, uint64_t>
private

map fee bco to lvl1 bco

Definition at line 222 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 222 of file MicromegasRawDataEvaluation.h

map fee_id to bco maps

Definition at line 225 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 225 of file MicromegasRawDataEvaluation.h

Constructor & Destructor Documentation

MicromegasRawDataEvaluation::MicromegasRawDataEvaluation ( const std::string &  name = "MicromegasRawDataEvaluation")

constructor

Definition at line 85 of file MicromegasRawDataEvaluation.cc.

View newest version in sPHENIX GitHub at line 85 of file MicromegasRawDataEvaluation.cc

Member Function Documentation

int MicromegasRawDataEvaluation::End ( PHCompositeNode )
overridevirtual

end of processing

Reimplemented from SubsysReco.

Definition at line 329 of file MicromegasRawDataEvaluation.cc.

View newest version in sPHENIX GitHub at line 329 of file MicromegasRawDataEvaluation.cc

References test_fpe::count, Fun4AllReturnCodes::EVENT_OK, m_bco_map, m_evaluation_file, m_evaluation_tree, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

int MicromegasRawDataEvaluation::Init ( PHCompositeNode )
overridevirtual

global initialization

Reimplemented from SubsysReco.

Definition at line 90 of file MicromegasRawDataEvaluation.cc.

View newest version in sPHENIX GitHub at line 90 of file MicromegasRawDataEvaluation.cc

References Fun4AllReturnCodes::EVENT_OK, m_calibration_data, m_calibration_filename, m_container, m_evaluation_file, m_evaluation_filename, m_evaluation_tree, and MicromegasCalibrationData::read().

+ Here is the call graph for this function:

int MicromegasRawDataEvaluation::InitRun ( PHCompositeNode )
overridevirtual

run initialization

Reimplemented from SubsysReco.

Definition at line 103 of file MicromegasRawDataEvaluation.cc.

View newest version in sPHENIX GitHub at line 103 of file MicromegasRawDataEvaluation.cc

References Fun4AllReturnCodes::EVENT_OK.

int MicromegasRawDataEvaluation::process_event ( PHCompositeNode topNode)
overridevirtual

event processing

Reimplemented from SubsysReco.

Definition at line 107 of file MicromegasRawDataEvaluation.cc.

View newest version in sPHENIX GitHub at line 107 of file MicromegasRawDataEvaluation.cc

References MicromegasRawDataEvaluation::Sample::adc, MicromegasRawDataEvaluation::Waveform::adc_max, assert, MicromegasRawDataEvaluation::Sample::channel, MicromegasRawDataEvaluation::Sample::checksum, MicromegasRawDataEvaluation::Sample::checksum_error, Fun4AllReturnCodes::DISCARDEVENT, event, Fun4AllReturnCodes::EVENT_OK, MicromegasRawDataEvaluation::Sample::fee_bco, MicromegasRawDataEvaluation::Sample::fee_id, MicromegasMapping::get_hitsetkey(), MicromegasCalibrationData::get_pedestal(), MicromegasMapping::get_physical_strip(), MicromegasCalibrationData::get_rms(), TrkrDefs::getLayer(), MicromegasDefs::getTileId(), MicromegasRawDataEvaluation::Waveform::is_signal, MicromegasRawDataEvaluation::Sample::layer, MicromegasRawDataEvaluation::Sample::lvl1_bco, MicromegasRawDataEvaluation::Waveform::lvl1_bco, MicromegasRawDataEvaluation::Container::lvl1_bco_list, MicromegasRawDataEvaluation::Container::lvl1_count_list, m_bco_map, m_calibration_data, m_container, m_evaluation_tree, m_fee_bco_matching_map, m_mapping, m_min_adc, m_n_sigma, MicromegasDefs::m_packet_ids, m_sample_max, m_sample_min, testing::internal::move(), MicromegasRawDataEvaluation::Container::n_tagger, MicromegasRawDataEvaluation::Container::n_waveform, MicromegasRawDataEvaluation::Sample::packet_id, pedestal(), MicromegasRawDataEvaluation::Sample::pedestal, MicromegasRawDataEvaluation::Container::Reset(), MicromegasRawDataEvaluation::Sample::rms, rms(), MicromegasRawDataEvaluation::Sample::sampa_address, MicromegasRawDataEvaluation::Sample::sampa_channel, MicromegasRawDataEvaluation::Sample::sample, MicromegasRawDataEvaluation::Waveform::sample_max, MicromegasRawDataEvaluation::Container::samples, MicromegasRawDataEvaluation::Sample::strip, t, MicromegasRawDataEvaluation::Sample::tile, Fun4AllBase::Verbosity(), and MicromegasRawDataEvaluation::Container::waveforms.

+ Here is the call graph for this function:

void MicromegasRawDataEvaluation::set_calibration_file ( const std::string &  value)
inline

calibration file

Definition at line 49 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 49 of file MicromegasRawDataEvaluation.h

References m_calibration_filename, and value.

void MicromegasRawDataEvaluation::set_evaluation_outputfile ( const std::string &  outputfile)
inline

output file name for evaluation histograms

Definition at line 65 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 65 of file MicromegasRawDataEvaluation.h

References m_evaluation_filename.

void MicromegasRawDataEvaluation::set_min_adc ( double  value)
inline

set minimum ADC value, disregarding pedestal and RMS.

This removes faulty channels for which calibration has failed

Definition at line 56 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 56 of file MicromegasRawDataEvaluation.h

References m_min_adc, and value.

void MicromegasRawDataEvaluation::set_n_sigma ( double  value)
inline

set number of RMS sigma used to defined static threshold on a given channel

Definition at line 52 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 52 of file MicromegasRawDataEvaluation.h

References m_n_sigma, and value.

void MicromegasRawDataEvaluation::set_sample_max ( int  value)
inline

set min sample for noise estimation

Definition at line 62 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 62 of file MicromegasRawDataEvaluation.h

References m_sample_max, and value.

void MicromegasRawDataEvaluation::set_sample_min ( int  value)
inline

set min sample for noise estimation

Definition at line 59 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 59 of file MicromegasRawDataEvaluation.h

References m_sample_min, and value.

Member Data Documentation

bco_map_t MicromegasRawDataEvaluation::m_bco_map
private

Definition at line 231 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 231 of file MicromegasRawDataEvaluation.h

Referenced by End(), and process_event().

MicromegasCalibrationData MicromegasRawDataEvaluation::m_calibration_data
private

calibration data

Definition at line 193 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 193 of file MicromegasRawDataEvaluation.h

Referenced by Init(), and process_event().

std::string MicromegasRawDataEvaluation::m_calibration_filename = "TPOT_Pedestal_000.root"
private

calibration filename

Definition at line 190 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 190 of file MicromegasRawDataEvaluation.h

Referenced by Init(), and set_calibration_file().

Container* MicromegasRawDataEvaluation::m_container = nullptr
private

main branch

Definition at line 219 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 219 of file MicromegasRawDataEvaluation.h

Referenced by Init(), and process_event().

std::unique_ptr<TFile> MicromegasRawDataEvaluation::m_evaluation_file
private

Definition at line 213 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 213 of file MicromegasRawDataEvaluation.h

Referenced by End(), and Init().

std::string MicromegasRawDataEvaluation::m_evaluation_filename = "MicromegasRawDataEvaluation.root"
private

evaluation output filename

Definition at line 212 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 212 of file MicromegasRawDataEvaluation.h

Referenced by Init(), and set_evaluation_outputfile().

TTree* MicromegasRawDataEvaluation::m_evaluation_tree = nullptr
private

tree

Definition at line 216 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 216 of file MicromegasRawDataEvaluation.h

Referenced by End(), Init(), and process_event().

fee_bco_matching_map_t MicromegasRawDataEvaluation::m_fee_bco_matching_map
private

Definition at line 226 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 226 of file MicromegasRawDataEvaluation.h

Referenced by process_event().

MicromegasMapping MicromegasRawDataEvaluation::m_mapping
private

mapping

Definition at line 196 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 196 of file MicromegasRawDataEvaluation.h

Referenced by process_event().

double MicromegasRawDataEvaluation::m_min_adc = 50
private

minimum ADC value, disregarding pedestal and RMS.

Definition at line 203 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 203 of file MicromegasRawDataEvaluation.h

Referenced by process_event(), and set_min_adc().

double MicromegasRawDataEvaluation::m_n_sigma = 5
private

number of RMS sigma used to define threshold

Definition at line 199 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 199 of file MicromegasRawDataEvaluation.h

Referenced by process_event(), and set_n_sigma().

int MicromegasRawDataEvaluation::m_sample_max = 100
private

max sample for signal

Definition at line 209 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 209 of file MicromegasRawDataEvaluation.h

Referenced by process_event(), and set_sample_max().

int MicromegasRawDataEvaluation::m_sample_min = 0
private

min sample for signal

Definition at line 206 of file MicromegasRawDataEvaluation.h.

View newest version in sPHENIX GitHub at line 206 of file MicromegasRawDataEvaluation.h

Referenced by process_event(), and set_sample_min().


The documentation for this class was generated from the following files: