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

Enumerations

enum  SegmentationType : uint8_t
 tells the direction along which a given cylinder is segmented More...
 
enum  DriftDirection : uint8_t
 tells the drift direction for a given micromegas layer More...
 

Functions

TrkrDefs::hitsetkey genHitSetKey (uint8_t layer, SegmentationType segmentation, uint8_t tile)
 Generate a hitsetkey for the micromegas.
 
SegmentationType getSegmentationType (TrkrDefs::hitsetkey)
 Get the segmentation type from hitsetkey.
 
uint8_t getTileId (TrkrDefs::hitsetkey)
 Get the tile id from hitsetkey.
 
TrkrDefs::hitkey genHitKey (uint16_t strip)
 Generate a hitkey from strip index inside tile.
 
uint16_t getStrip (TrkrDefs::hitkey)
 get strip from hit key
 
SegmentationType getSegmentationType (TrkrDefs::cluskey)
 Get the segmentation type from cluster key.
 
uint8_t getTileId (TrkrDefs::cluskey)
 Get the tile id from cluster key.
 
static constexpr unsigned int
kBitShiftSegmentation 
__attribute__ ((unused))=0
 bit shift for hit key
 

Variables

static constexpr int m_npackets = 3
 TPOT packet ids.
 
static constexpr std::array
< unsigned int, m_npackets
m_packet_ids = {5000, 5001, 5002}
 
static constexpr int m_nchannels_fee = 256
 number of channels per fee board
 
static constexpr int m_nfee = 16
 number of fee boards
 
static constexpr int m_nchannels_total = m_nfee*m_nchannels_fee
 total number of channels
 
static constexpr int m_max_adc = 1024
 max adc value per readout sample
 

Enumeration Type Documentation

tells the drift direction for a given micromegas layer

this is needed for properly implementing transverse diffusion in the layer

Definition at line 28 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 28 of file MicromegasDefs.h

tells the direction along which a given cylinder is segmented

Definition at line 20 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 20 of file MicromegasDefs.h

Function Documentation

static constexpr unsigned int kBitShiftStrip MicromegasDefs::__attribute__ ( (unused)  )
static

bit shift for hit key

hitsetkey layout: Micromegas specific lower 16 bits 24 - 32 tracker id 16 - 24 layer 8 - 16 segmentation type 0 - 8 tile id

TrkrDefs::hitkey MicromegasDefs::genHitKey ( uint16_t  strip)

Generate a hitkey from strip index inside tile.

Parameters
[in]stripstrip index

Definition at line 54 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 54 of file MicromegasDefs.cc

Referenced by MvtxPrototype2UnpackPRDF::MakeHits(), MicromegasRawDataDecoder::process_event(), MicromegasCombinedDataDecoder::process_event(), and PHG4MicromegasHitReco::process_event().

+ Here is the caller graph for this function:

TrkrDefs::hitsetkey MicromegasDefs::genHitSetKey ( uint8_t  layer,
SegmentationType  segmentation,
uint8_t  tile 
)
static

Generate a hitsetkey for the micromegas.

Parameters
[in]layerLayer index
[in]tiletile index
[out]hitsetkeyGenerate a hitsetkey for the mvtx. The tracker id is known implicitly and used in the function.

Definition at line 26 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 26 of file MicromegasDefs.cc

References TrkrDefs::genHitSetKey(), TrkrDefs::micromegasId, tile(), and Acts::Test::tmp().

Referenced by PHTruthClustering::all_truth_clusters(), SvtxTruthEval::all_truth_clusters(), CylinderGeomMicromegas::find_strip_from_local_coords(), TpcDefs::genClusKey(), InttDefs::genClusKey(), MvtxDefs::genClusKey(), CylinderGeomMicromegas::get_local_coordinates(), CylinderGeomMicromegas::get_local_from_world_coords(), CylinderGeomMicromegas::get_local_from_world_vect(), CylinderGeomMicromegas::get_strip_count(), CylinderGeomMicromegas::get_strip_length(), CylinderGeomMicromegas::get_world_from_local_coords(), CylinderGeomMicromegas::get_world_from_local_vect(), TrkrDefs::getClusKeyHi(), TrkrDefs::getClusKeyLo(), TrkrDefs::getHitSetKeyHi(), TrkrDefs::getHitSetKeyLo(), MvtxPrototype2UnpackPRDF::MakeHits(), MakeActsGeometry::makeMmMapPairs(), MicromegasMapping::MicromegasMapping(), PHG4MicromegasHitReco::process_event(), and PHMicromegasTpcTrackMatching::process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

SegmentationType MicromegasDefs::getSegmentationType ( TrkrDefs::hitsetkey  )

Get the segmentation type from hitsetkey.

Parameters
[in]hitsetkey
[out]segmentations

Definition at line 40 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 40 of file MicromegasDefs.cc

References Acts::Test::tmp().

Referenced by QAG4SimulationMicromegas::evaluate_clusters(), TrackResiduals::fillClusterTree(), TrackResiduals::fillHitTree(), MicromegasMapping::get_physical_strip(), getSegmentationType(), and TpotMon::process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

SegmentationType MicromegasDefs::getSegmentationType ( TrkrDefs::cluskey  )

Get the segmentation type from cluster key.

Parameters
[in]cluskey
[out]segmentations

Definition at line 68 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 68 of file MicromegasDefs.cc

References getSegmentationType(), and Acts::Test::tmp().

+ Here is the call graph for this function:

uint16_t MicromegasDefs::getStrip ( TrkrDefs::hitkey  key)

get strip from hit key

Definition at line 61 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 61 of file MicromegasDefs.cc

References Acts::Test::tmp().

Referenced by TrackResiduals::fillHitTree(), MicromegasClusterizer::process_event(), and TpcRawWriter::process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint8_t MicromegasDefs::getTileId ( TrkrDefs::hitsetkey  )

Get the tile id from hitsetkey.

Parameters
[in]hitsetkey
[out]tileid s

Definition at line 47 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 47 of file MicromegasDefs.cc

References Acts::Test::tmp().

Referenced by QAG4SimulationMicromegas::evaluate_clusters(), TrackEvaluation::evaluate_clusters(), TrackEvaluation::evaluate_tracks(), TrackResiduals::fillClusterTree(), TrackResiduals::fillHitTree(), getTileId(), TpotMon::Init(), MicromegasClusterizer::process_event(), MicromegasRawDataDecoder::process_event(), MicromegasCombinedDataDecoder::process_event(), MicromegasCombinedDataEvaluation::process_event(), MicromegasRawDataEvaluation::process_event(), and PHGenFitTrkFitter::ReFitTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint8_t MicromegasDefs::getTileId ( TrkrDefs::cluskey  )

Get the tile id from cluster key.

Parameters
[in]cluskey
[out]tileid s

Definition at line 75 of file MicromegasDefs.cc.

View newest version in sPHENIX GitHub at line 75 of file MicromegasDefs.cc

References getTileId(), and Acts::Test::tmp().

+ Here is the call graph for this function:

Variable Documentation

constexpr int MicromegasDefs::m_max_adc = 1024
static

max adc value per readout sample

Definition at line 117 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 117 of file MicromegasDefs.h

constexpr int MicromegasDefs::m_nchannels_fee = 256
static

number of channels per fee board

Definition at line 108 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 108 of file MicromegasDefs.h

Referenced by MicromegasMapping::construct_channel_mapping(), MicromegasMapping::get_physical_strip(), TpotMon::process_event(), and MicromegasRawDataCalibration::process_event().

constexpr int MicromegasDefs::m_nchannels_total = m_nfee*m_nchannels_fee
static

total number of channels

Definition at line 114 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 114 of file MicromegasDefs.h

Referenced by TpotMon::process_event().

constexpr int MicromegasDefs::m_nfee = 16
static

number of fee boards

Definition at line 111 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 111 of file MicromegasDefs.h

constexpr int MicromegasDefs::m_npackets = 3
static

TPOT packet ids.

note: TPOT only uses 2 packets. For early runs (before 07/28/2023) they are 5000 and 5001 For later run, (after 07/28/2023) and because, as instructed by Martin, they are 5001 and 5002 We keep all 3 values here in order to be able to read both type of runs One might need to change this in the future when 5000 becomes used by a different subsystem

Definition at line 104 of file MicromegasDefs.h.

View newest version in sPHENIX GitHub at line 104 of file MicromegasDefs.h

constexpr std::array<unsigned int,m_npackets> MicromegasDefs::m_packet_ids = {5000, 5001, 5002}
static