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

#include <MuonInsideOutValidationNtuple.h>

Inheritance diagram for Muon::MuonValidationHitBlock:
Collaboration diagram for Muon::MuonValidationHitBlock:

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

 MuonValidationHitBlock ()
 
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

MuonValidationIdBlock id
 
MuonValidationTrackBlock track
 
MuonValidationTruthBlock truth
 
MuonValidationResidualBlock residuals
 
std::vector< IntBlockintBlocks
 
std::vector< UnsignedIntBlockunsignedIntBlocks
 
std::vector< FloatBlockfloatBlocks
 
std::vector< SubBlocksubBlocks
 

Detailed Description

Definition at line 245 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

◆ MuonValidationHitBlock()

Muon::MuonValidationHitBlock::MuonValidationHitBlock ( )

Definition at line 154 of file MuonInsideOutValidationNtuple.cxx.

154  {
155  addBlock(&id,"");
156  addBlock(&track,"");
157  addBlock(&truth,"");
158  addBlock(&residuals,"");
159  }

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

◆ floatBlocks

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

Definition at line 45 of file MuonInsideOutValidationNtuple.h.

◆ id

MuonValidationIdBlock Muon::MuonValidationHitBlock::id

Definition at line 248 of file MuonInsideOutValidationNtuple.h.

◆ intBlocks

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

Definition at line 43 of file MuonInsideOutValidationNtuple.h.

◆ residuals

MuonValidationResidualBlock Muon::MuonValidationHitBlock::residuals

Definition at line 251 of file MuonInsideOutValidationNtuple.h.

◆ subBlocks

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

Definition at line 46 of file MuonInsideOutValidationNtuple.h.

◆ track

MuonValidationTrackBlock Muon::MuonValidationHitBlock::track

Definition at line 249 of file MuonInsideOutValidationNtuple.h.

◆ truth

MuonValidationTruthBlock Muon::MuonValidationHitBlock::truth

Definition at line 250 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::MuonValidationBlockBase::floatBlocks
std::vector< FloatBlock > floatBlocks
Definition: MuonInsideOutValidationNtuple.h:45
Muon::MuonValidationBlockBase::UnsignedIntBlock
std::pair< std::reference_wrapper< std::vector< unsigned int > * >, std::string > UnsignedIntBlock
Definition: MuonInsideOutValidationNtuple.h:29
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::MuonValidationHitBlock::residuals
MuonValidationResidualBlock residuals
Definition: MuonInsideOutValidationNtuple.h:251
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
python.ByteStreamConfig.write
def write
Definition: Event/ByteStreamCnvSvc/python/ByteStreamConfig.py:247
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:228
Muon::MuonValidationHitBlock::truth
MuonValidationTruthBlock truth
Definition: MuonInsideOutValidationNtuple.h:250
Muon::MuonValidationBlockBase::addBlock
void addBlock(std::vector< int > *&block, std::string name)
Definition: MuonInsideOutValidationNtuple.h:37
Muon::MuonValidationHitBlock::track
MuonValidationTrackBlock track
Definition: MuonInsideOutValidationNtuple.h:249