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 67 of file PndCAStationArray.h.

Constructor & Destructor Documentation

◆ PndCAStationArray() [1/2]

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

Definition at line 90 of file PndCAStationArray.h.

90 {}

◆ PndCAStationArray() [2/2]

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

Definition at line 92 of file PndCAStationArray.h.

92 { 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 123 of file PndCAStationArray.h.

124  {
125  const int iSta = hit.Station();
126  fElement[iSta].push_back(hit);
127  }
vector< PndCAElementsOnStation< T > > fElement

◆ HitsRef()

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

Definition at line 104 of file PndCAStationArray.h.

105  {
106  if (fElement.size())
107  return fElement[0].fHitsRef;
108  else
109  return nullptr;
110  }
vector< PndCAElementsOnStation< T > > fElement

◆ NStations()

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

Definition at line 102 of file PndCAStationArray.h.

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

◆ OnStation() [1/2]

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

Definition at line 69 of file PndCAStationArray.h.

70  {
71  assert((unsigned char)i < fElement.size());
72  return fElement[i];
73  }
unsigned int i
Definition: P4_F32vec4.h:21
vector< PndCAElementsOnStation< T > > fElement

◆ OnStation() [2/2]

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

Definition at line 74 of file PndCAStationArray.h.

75  {
76  assert((unsigned char)i < fElement.size());
77  return fElement[i];
78  }
unsigned int i
Definition: P4_F32vec4.h:21
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [1/4]

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

Definition at line 79 of file PndCAStationArray.h.

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

◆ operator[]() [2/4]

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

Definition at line 84 of file PndCAStationArray.h.

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

◆ operator[]() [3/4]

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

Definition at line 120 of file PndCAStationArray.h.

120 { return fElement[i.s][i.e]; }
char s
Definition: PndCATES.h:21
unsigned int e
Definition: PndCATES.h:22
vector< PndCAElementsOnStation< T > > fElement

◆ operator[]() [4/4]

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

Definition at line 121 of file PndCAStationArray.h.

121 { return fElement[i.s][i.e]; }
char s
Definition: PndCATES.h:21
unsigned int e
Definition: PndCATES.h:22
vector< PndCAElementsOnStation< T > > fElement

◆ Renew()

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

Definition at line 94 of file PndCAStationArray.h.

95  {
96  fElement.clear();
97  fElement.resize(nSta, PndCAElementsOnStation<T>(hits));
98  for (int i = 0; i < nSta; ++i)
99  fElement[i].SetStation(i);
100  }
unsigned int i
Definition: P4_F32vec4.h:21
vector< PndCAElementsOnStation< T > > fElement

◆ Size()

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

Definition at line 112 of file PndCAStationArray.h.

113  {
114  unsigned int s = 0;
115  for (int i = 0; i < NStations(); ++i)
116  s += fElement[i].size();
117  return s;
118  }
char NStations() const
unsigned int i
Definition: P4_F32vec4.h:21
vector< PndCAElementsOnStation< T > > fElement

Member Data Documentation

◆ fElement

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

Definition at line 130 of file PndCAStationArray.h.


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