ATLAS Offline Software
Public Types | Public Member Functions | Public Attributes | List of all members
Muon::MuonValidationTrackParticleBlock Struct Reference

Block with information on the incoming track particle. More...

#include <MuonInsideOutValidationNtuple.h>

Inheritance diagram for Muon::MuonValidationTrackParticleBlock:
Collaboration diagram for Muon::MuonValidationTrackParticleBlock:

Public Types

typedef std::pair< std::reference_wrapper< std::vector< int > * >, std::string > IntBlock
 
typedef std::pair< std::reference_wrapper< std::vector< unsigned int > * >, std::string > UnsignedIntBlock
 
typedef std::pair< std::reference_wrapper< std::vector< float > * >, std::string > FloatBlock
 
typedef std::pair< MuonValidationBlockBase *, std::string > SubBlock
 

Public Member Functions

 MuonValidationTrackParticleBlock ()
 
void addBlock (std::vector< int > *&block, std::string name)
 
void addBlock (std::vector< unsigned int > *&block, std::string name)
 
void addBlock (std::vector< float > *&block, std::string name)
 
void addBlock (MuonValidationBlockBase *block, std::string name)
 
void init (const std::string &prefix, TTree *, bool write=true)
 
void clear ()
 

Public Attributes

std::vector< float > * pt = nullptr
 
std::vector< float > * p = nullptr
 
std::vector< float > * eta = nullptr
 
std::vector< float > * phi = nullptr
 
MuonValidationTruthBlock truth
 
std::vector< IntBlockintBlocks
 
std::vector< UnsignedIntBlockunsignedIntBlocks
 
std::vector< FloatBlockfloatBlocks
 
std::vector< SubBlocksubBlocks
 

Detailed Description

Block with information on the incoming track particle.

Definition at line 192 of file MuonInsideOutValidationNtuple.h.

Member Typedef Documentation

◆ FloatBlock

typedef std::pair<std::reference_wrapper<std::vector<float>*>,std::string> Muon::MuonValidationBlockBase::FloatBlock
inherited

Definition at line 30 of file MuonInsideOutValidationNtuple.h.

◆ IntBlock

typedef std::pair<std::reference_wrapper<std::vector<int>*>,std::string> Muon::MuonValidationBlockBase::IntBlock
inherited

Definition at line 28 of file MuonInsideOutValidationNtuple.h.

◆ SubBlock

typedef std::pair< MuonValidationBlockBase*, std::string > Muon::MuonValidationBlockBase::SubBlock
inherited

Definition at line 31 of file MuonInsideOutValidationNtuple.h.

◆ UnsignedIntBlock

typedef std::pair<std::reference_wrapper<std::vector<unsigned int>*>,std::string> Muon::MuonValidationBlockBase::UnsignedIntBlock
inherited

Definition at line 29 of file MuonInsideOutValidationNtuple.h.

Constructor & Destructor Documentation

◆ MuonValidationTrackParticleBlock()

Muon::MuonValidationTrackParticleBlock::MuonValidationTrackParticleBlock ( )

Definition at line 70 of file MuonInsideOutValidationNtuple.cxx.

70  {
71  addBlock(pt,"pt");
72  addBlock(p,"p");
73  addBlock(eta,"eta");
74  addBlock(phi,"phi");
75  addBlock(&truth,"");
76  }

Member Function Documentation

◆ addBlock() [1/4]

void Muon::MuonValidationBlockBase::addBlock ( MuonValidationBlockBase block,
std::string  name 
)
inlineinherited

Definition at line 40 of file MuonInsideOutValidationNtuple.h.

40 { subBlocks.push_back( SubBlock(block,name) ); }

◆ addBlock() [2/4]

void Muon::MuonValidationBlockBase::addBlock ( std::vector< float > *&  block,
std::string  name 
)
inlineinherited

Definition at line 39 of file MuonInsideOutValidationNtuple.h.

39 { block=nullptr; floatBlocks.push_back( FloatBlock(block,name) ); }

◆ addBlock() [3/4]

void Muon::MuonValidationBlockBase::addBlock ( std::vector< int > *&  block,
std::string  name 
)
inlineinherited

Definition at line 37 of file MuonInsideOutValidationNtuple.h.

37 { block=nullptr; intBlocks.push_back( IntBlock(block,name) ); }

◆ addBlock() [4/4]

void Muon::MuonValidationBlockBase::addBlock ( std::vector< unsigned int > *&  block,
std::string  name 
)
inlineinherited

Definition at line 38 of file MuonInsideOutValidationNtuple.h.

38 { block=nullptr; unsignedIntBlocks.push_back( UnsignedIntBlock(block,name) ); }

◆ clear()

void Muon::MuonValidationBlockBase::clear ( )
inherited

Definition at line 10 of file MuonInsideOutValidationNtuple.cxx.

10  {
11 
12  // clear entries
13  for( const auto& entry : intBlocks ) entry.first.get()->clear();
14  for( const auto& entry : unsignedIntBlocks ) entry.first.get()->clear();
15  for( const auto& entry : floatBlocks ) entry.first.get()->clear();
16  for( auto entry : subBlocks ) entry.first->clear();
17 
18  }

◆ init()

void Muon::MuonValidationBlockBase::init ( const std::string &  prefix,
TTree *  tree,
bool  write = true 
)
inherited

Definition at line 28 of file MuonInsideOutValidationNtuple.cxx.

28  {
29 
30 
31  for( const auto& entry : intBlocks ) {
32  if( tree ){
33  if( write ){
34  entry.first.get() = new std::vector<int>();
35  tree->Branch( (prefix + entry.second).c_str(), entry.first.get());
36  }else{
37  tree->SetBranchAddress( (prefix + entry.second).c_str(), &entry.first.get());
38  }
39  }
40  }
41 
42  for( const auto& entry : unsignedIntBlocks ) {
43  if( tree ){
44  if( write ){
45  entry.first.get() = new std::vector<unsigned int>();
46  tree->Branch( (prefix + entry.second).c_str(), entry.first.get());
47  }else{
48  tree->SetBranchAddress( (prefix + entry.second).c_str(), &entry.first.get());
49  }
50  }
51  }
52 
53  for( const auto& entry : floatBlocks ) {
54  if( tree ){
55  if( write ){
56  entry.first.get() = new std::vector<float>();
57  tree->Branch( (prefix + entry.second).c_str(), entry.first.get());
58  }else{
59  tree->SetBranchAddress( (prefix + entry.second).c_str(), &entry.first.get());
60  }
61  }
62  }
63 
64  for( auto entry : subBlocks ) {
65  entry.first->init(prefix + entry.second, tree, write );
66  }
67 
68  }

Member Data Documentation

◆ eta

std::vector<float>* Muon::MuonValidationTrackParticleBlock::eta = nullptr

Definition at line 197 of file MuonInsideOutValidationNtuple.h.

◆ floatBlocks

std::vector< FloatBlock > Muon::MuonValidationBlockBase::floatBlocks
inherited

Definition at line 45 of file MuonInsideOutValidationNtuple.h.

◆ intBlocks

std::vector< IntBlock > Muon::MuonValidationBlockBase::intBlocks
inherited

Definition at line 43 of file MuonInsideOutValidationNtuple.h.

◆ p

std::vector<float>* Muon::MuonValidationTrackParticleBlock::p = nullptr

Definition at line 196 of file MuonInsideOutValidationNtuple.h.

◆ phi

std::vector<float>* Muon::MuonValidationTrackParticleBlock::phi = nullptr

Definition at line 198 of file MuonInsideOutValidationNtuple.h.

◆ pt

std::vector<float>* Muon::MuonValidationTrackParticleBlock::pt = nullptr

Definition at line 195 of file MuonInsideOutValidationNtuple.h.

◆ subBlocks

std::vector< SubBlock > Muon::MuonValidationBlockBase::subBlocks
inherited

Definition at line 46 of file MuonInsideOutValidationNtuple.h.

◆ truth

MuonValidationTruthBlock Muon::MuonValidationTrackParticleBlock::truth

Definition at line 199 of file MuonInsideOutValidationNtuple.h.

◆ unsignedIntBlocks

std::vector< UnsignedIntBlock > Muon::MuonValidationBlockBase::unsignedIntBlocks
inherited

Definition at line 44 of file MuonInsideOutValidationNtuple.h.


The documentation for this struct was generated from the following files:
Muon::MuonValidationTrackParticleBlock::p
std::vector< float > * p
Definition: MuonInsideOutValidationNtuple.h:196
Muon::MuonValidationBlockBase::floatBlocks
std::vector< FloatBlock > floatBlocks
Definition: MuonInsideOutValidationNtuple.h:45
Muon::MuonValidationTrackParticleBlock::phi
std::vector< float > * phi
Definition: MuonInsideOutValidationNtuple.h:198
Muon::MuonValidationTrackParticleBlock::pt
std::vector< float > * pt
Definition: MuonInsideOutValidationNtuple.h:195
Muon::MuonValidationBlockBase::UnsignedIntBlock
std::pair< std::reference_wrapper< std::vector< unsigned int > * >, std::string > UnsignedIntBlock
Definition: MuonInsideOutValidationNtuple.h:29
Muon::MuonValidationTrackParticleBlock::truth
MuonValidationTruthBlock truth
Definition: MuonInsideOutValidationNtuple.h:199
tree
TChain * tree
Definition: tile_monitor.h:30
Muon::MuonValidationBlockBase::intBlocks
std::vector< IntBlock > intBlocks
Definition: MuonInsideOutValidationNtuple.h:43
Muon::MuonValidationBlockBase::IntBlock
std::pair< std::reference_wrapper< std::vector< int > * >, std::string > IntBlock
Definition: MuonInsideOutValidationNtuple.h:28
Muon::MuonValidationBlockBase::SubBlock
std::pair< MuonValidationBlockBase *, std::string > SubBlock
Definition: MuonInsideOutValidationNtuple.h:31
Muon::MuonValidationBlockBase::unsignedIntBlocks
std::vector< UnsignedIntBlock > unsignedIntBlocks
Definition: MuonInsideOutValidationNtuple.h:44
Muon::MuonValidationBlockBase::subBlocks
std::vector< SubBlock > subBlocks
Definition: MuonInsideOutValidationNtuple.h:46
Muon::MuonValidationBlockBase::FloatBlock
std::pair< std::reference_wrapper< std::vector< float > * >, std::string > FloatBlock
Definition: MuonInsideOutValidationNtuple.h:30
Muon::MuonValidationTrackParticleBlock::eta
std::vector< float > * eta
Definition: MuonInsideOutValidationNtuple.h:197
python.ByteStreamConfig.write
def write
Definition: Event/ByteStreamCnvSvc/python/ByteStreamConfig.py:248
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
Muon::MuonValidationBlockBase::addBlock
void addBlock(std::vector< int > *&block, std::string name)
Definition: MuonInsideOutValidationNtuple.h:37