PandaRoot
PndCAStationArray< T > Class Template Reference

#include <PndCAStationArray.h>

Public Member Functions

PndCAElementsOnStation< T > & OnStation (char i)
 
const PndCAElementsOnStation< T > & OnStation (char i) const
 
PndCAElementsOnStation< T > & operator[] (char i)
 
const PndCAElementsOnStation< T > & operator[] (char i) const
 
 PndCAStationArray ()
 
 PndCAStationArray (int nSta, const PndCAHits *hits)
 
void Renew (int nSta, const PndCAHits *hits)
 
char NStations () const
 
const PndCAHitsHitsRef () const
 
unsigned int Size () const
 
T & operator[] (PndCATES i)
 
const T & operator[] (PndCATES i) const
 
void Add (const T &hit)
 

Protected Attributes

vector< PndCAElementsOnStation< T > > fElement
 

Detailed Description

template<typename T>
class PndCAStationArray< T >

Definition at line 79 of file PndCAStationArray.h.

Constructor & Destructor Documentation

◆ PndCAStationArray() [1/2]

template<typename T>
PndCAStationArray< T >::PndCAStationArray ( )
inline

Definition at line 102 of file PndCAStationArray.h.

102 {}

◆ PndCAStationArray() [2/2]

template<typename T>
PndCAStationArray< T >::PndCAStationArray ( int  nSta,
const PndCAHits hits 
)
inline

Definition at line 104 of file PndCAStationArray.h.

104 { Renew(nSta, hits); }
void Renew(int nSta, const PndCAHits *hits)

Member Function Documentation

◆ Add()

template<typename T>
void PndCAStationArray< T >::Add ( const T &  hit)
inline

Definition at line 135 of file PndCAStationArray.h.

136  {
137  const int iSta = hit.Station();
138  fElement[iSta].push_back(hit);
139  }
vector< PndCAElementsOnStation< T > > fElement

◆ HitsRef()

template<typename T>
const PndCAHits* PndCAStationArray< T >::HitsRef ( ) const
inline

Definition at line 116 of file PndCAStationArray.h.

117  {
118  if (fElement.size())
119  return fElement[0].fHitsRef;
120  else
121  return nullptr;
122  }
vector< PndCAElementsOnStation< T > > fElement

◆ NStations()

template<typename T>
char PndCAStationArray< T >::NStations ( ) const
inline

Definition at line 114 of file PndCAStationArray.h.

114 { return fElement.size(); }
vector< PndCAElementsOnStation< T > > fElement

◆ OnStation() [1/2]

template<typename T>
PndCAElementsOnStation<T>& PndCAStationArray< T >::OnStation ( char  i)
inline

Definition at line 81 of file PndCAStationArray.h.

82  {
83  assert((unsigned char)i < fElement.size());
84  return fElement[i];
85  }
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

◆ OnStation() [2/2]

template<typename T>
const PndCAElementsOnStation<T>& PndCAStationArray< T >::OnStation ( char  i) const
inline

Definition at line 86 of file PndCAStationArray.h.

87  {
88  assert((unsigned char)i < fElement.size());
89  return fElement[i];
90  }
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [1/4]

template<typename T>
PndCAElementsOnStation<T>& PndCAStationArray< T >::operator[] ( char  i)
inline

Definition at line 91 of file PndCAStationArray.h.

92  {
93  assert((unsigned char)i < fElement.size());
94  return fElement[i];
95  }
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [2/4]

template<typename T>
const PndCAElementsOnStation<T>& PndCAStationArray< T >::operator[] ( char  i) const
inline

Definition at line 96 of file PndCAStationArray.h.

97  {
98  assert((unsigned char)i < fElement.size());
99  return fElement[i];
100  }
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [3/4]

template<typename T>
T& PndCAStationArray< T >::operator[] ( PndCATES  i)
inline

Definition at line 132 of file PndCAStationArray.h.

132 { return fElement[i.s][i.e]; }
char s
Definition: PndCATES.h:33
unsigned int e
Definition: PndCATES.h:34
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [4/4]

template<typename T>
const T& PndCAStationArray< T >::operator[] ( PndCATES  i) const
inline

Definition at line 133 of file PndCAStationArray.h.

133 { return fElement[i.s][i.e]; }
char s
Definition: PndCATES.h:33
unsigned int e
Definition: PndCATES.h:34
vector< PndCAElementsOnStation< T > > fElement

◆ Renew()

template<typename T>
void PndCAStationArray< T >::Renew ( int  nSta,
const PndCAHits hits 
)
inline

Definition at line 106 of file PndCAStationArray.h.

107  {
108  fElement.clear();
109  fElement.resize(nSta, PndCAElementsOnStation<T>(hits));
110  for (int i = 0; i < nSta; ++i)
111  fElement[i].SetStation(i);
112  }
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

◆ Size()

template<typename T>
unsigned int PndCAStationArray< T >::Size ( ) const
inline

Definition at line 124 of file PndCAStationArray.h.

125  {
126  unsigned int s = 0;
127  for (int i = 0; i < NStations(); ++i)
128  s += fElement[i].size();
129  return s;
130  }
char NStations() const
unsigned int i
Definition: P4_F32vec4.h:33
vector< PndCAElementsOnStation< T > > fElement

Member Data Documentation

◆ fElement

template<typename T>
vector<PndCAElementsOnStation<T> > PndCAStationArray< T >::fElement
protected

Definition at line 142 of file PndCAStationArray.h.


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