CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
DAClusterizerInZT_vect::vertex_t Struct Reference

#include <DAClusterizerInZT_vect.h>

Public Member Functions

void addItem (double new_zvtx, double new_tvtx, double new_rho)
 
void extractRaw ()
 
unsigned int getSize () const
 
void insertItem (unsigned int k, double new_zvtx, double new_tvtx, double new_rho, track_t &tks)
 
unsigned int insertOrdered (double zvtx, double tvtx, double rho, track_t &tks)
 
void removeItem (unsigned int k, track_t &tks)
 

Public Attributes

double *__restrict__ exp
 
double *__restrict__ exp_arg
 
std::vector< double > exp_arg_vec
 
std::vector< double > exp_vec
 
double *__restrict__ nut
 
std::vector< double > nut_vec
 
double *__restrict__ nuz
 
std::vector< double > nuz_vec
 
double *__restrict__ rho
 
std::vector< double > rho_vec
 
double *__restrict__ se
 
std::vector< double > se_vec
 
double *__restrict__ stt
 
std::vector< double > stt_vec
 
std::vector< double > sw_vec
 
double *__restrict__ swt
 
std::vector< double > swt_vec
 
double *__restrict__ swz
 
std::vector< double > swz_vec
 
double *__restrict__ szt
 
std::vector< double > szt_vec
 
double *__restrict__ szz
 
std::vector< double > szz_vec
 
double *__restrict__ tvtx
 
std::vector< double > tvtx_vec
 
double *__restrict__ zvtx
 
std::vector< double > zvtx_vec
 

Detailed Description

Definition at line 99 of file DAClusterizerInZT_vect.h.

Member Function Documentation

◆ addItem()

void DAClusterizerInZT_vect::vertex_t::addItem ( double  new_zvtx,
double  new_tvtx,
double  new_rho 
)
inline

Definition at line 122 of file DAClusterizerInZT_vect.h.

References exp_arg_vec, exp_vec, extractRaw(), nut_vec, nuz_vec, rho_vec, se_vec, stt_vec, swt_vec, swz_vec, szt_vec, szz_vec, tvtx_vec, and zvtx_vec.

122  {
123  zvtx_vec.push_back(new_zvtx);
124  tvtx_vec.push_back(new_tvtx);
125  rho_vec.push_back(new_rho);
126  exp_arg_vec.push_back(0.0);
127  exp_vec.push_back(0.0);
128  swz_vec.push_back(0.0);
129  swt_vec.push_back(0.0);
130  se_vec.push_back(0.0);
131  nuz_vec.push_back(0.0);
132  nut_vec.push_back(0.0);
133  szz_vec.push_back(0.0);
134  stt_vec.push_back(0.0);
135  szt_vec.push_back(0.0);
136 #ifdef USEVTXDT2
137  dt2_vec.push_back(0.0);
138  sumw_vec.push_back(0.0);
139 #endif
140 
141  extractRaw();
142  }

◆ extractRaw()

void DAClusterizerInZT_vect::vertex_t::extractRaw ( )
inline

Definition at line 240 of file DAClusterizerInZT_vect.h.

References exp, exp_arg, exp_arg_vec, exp_vec, nut, nut_vec, nuz, nuz_vec, rho, rho_vec, se, se_vec, stt, stt_vec, swt, swt_vec, swz, swz_vec, szt, szt_vec, szz, szz_vec, tvtx, tvtx_vec, zvtx, and zvtx_vec.

Referenced by addItem(), insertItem(), and removeItem().

240  {
241  zvtx = &zvtx_vec.front();
242  tvtx = &tvtx_vec.front();
243  rho = &rho_vec.front();
244  exp_arg = &exp_arg_vec.front();
245  exp = &exp_vec.front();
246  swz = &swz_vec.front();
247  swt = &swt_vec.front();
248  se = &se_vec.front();
249  nuz = &nuz_vec.front();
250  nut = &nut_vec.front();
251  szz = &szz_vec.front();
252  stt = &stt_vec.front();
253  szt = &szt_vec.front();
254 #ifdef USEVTXDT2
255  dt2 = &dt2_vec.front();
256  sumw = &sumw_vec.front();
257 #endif
258  }

◆ getSize()

unsigned int DAClusterizerInZT_vect::vertex_t::getSize ( ) const
inline

◆ insertItem()

void DAClusterizerInZT_vect::vertex_t::insertItem ( unsigned int  k,
double  new_zvtx,
double  new_tvtx,
double  new_rho,
track_t tks 
)
inline

Definition at line 144 of file DAClusterizerInZT_vect.h.

References exp_arg_vec, exp_vec, extractRaw(), DAClusterizerInZT_vect::track_t::getSize(), mps_fire::i, dqmdumpme::k, DAClusterizerInZT_vect::track_t::kmax, DAClusterizerInZT_vect::track_t::kmin, nut_vec, nuz_vec, rho_vec, se_vec, stt_vec, swt_vec, swz_vec, szt_vec, szz_vec, tvtx_vec, and zvtx_vec.

Referenced by insertOrdered().

144  {
145  zvtx_vec.insert(zvtx_vec.begin() + k, new_zvtx);
146  tvtx_vec.insert(tvtx_vec.begin() + k, new_tvtx);
147  rho_vec.insert(rho_vec.begin() + k, new_rho);
148  exp_arg_vec.insert(exp_arg_vec.begin() + k, 0.0);
149  exp_vec.insert(exp_vec.begin() + k, 0.0);
150  swz_vec.insert(swz_vec.begin() + k, 0.0);
151  swt_vec.insert(swt_vec.begin() + k, 0.0);
152  se_vec.insert(se_vec.begin() + k, 0.0);
153  nuz_vec.insert(nuz_vec.begin() + k, 0.0);
154  nut_vec.insert(nut_vec.begin() + k, 0.0);
155  szz_vec.insert(szz_vec.begin() + k, 0.0);
156  stt_vec.insert(stt_vec.begin() + k, 0.0);
157  szt_vec.insert(szt_vec.begin() + k, 0.0);
158 #ifdef USEVTXDT2
159  dt2_vec.insert(dt2_vec.begin() + k, 0.0);
160  sumw_vec.insert(sumw_vec.begin() + k, 0.0);
161 #endif
162 
163  // adjust vertex lists of tracks
164  for (unsigned int i = 0; i < tks.getSize(); i++) {
165  if (tks.kmin[i] > k) {
166  tks.kmin[i]++;
167  }
168  if ((tks.kmax[i] >= k) || (tks.kmax[i] == tks.kmin[i])) {
169  tks.kmax[i]++;
170  }
171  }
172 
173  extractRaw();
174  }

◆ insertOrdered()

unsigned int DAClusterizerInZT_vect::vertex_t::insertOrdered ( double  zvtx,
double  tvtx,
double  rho,
track_t tks 
)
inline

Definition at line 208 of file DAClusterizerInZT_vect.h.

References getSize(), insertItem(), dqmdumpme::k, rho, tvtx, zvtx, and zvtx_vec.

208  {
209  // insert a new cluster according to it's z-position, return the index at which it was inserted
210 
211  unsigned int k = 0;
212  for (; k < getSize(); k++) {
213  if (zvtx < zvtx_vec[k])
214  break;
215  }
216  insertItem(k, zvtx, tvtx, rho, tks);
217  return k;
218  }
void insertItem(unsigned int k, double new_zvtx, double new_tvtx, double new_rho, track_t &tks)

◆ removeItem()

void DAClusterizerInZT_vect::vertex_t::removeItem ( unsigned int  k,
track_t tks 
)
inline

Definition at line 176 of file DAClusterizerInZT_vect.h.

References exp_arg_vec, exp_vec, extractRaw(), DAClusterizerInZT_vect::track_t::getSize(), mps_fire::i, dqmdumpme::k, DAClusterizerInZT_vect::track_t::kmax, DAClusterizerInZT_vect::track_t::kmin, nut_vec, nuz_vec, rho_vec, se_vec, stt_vec, swt_vec, swz_vec, szt_vec, szz_vec, tvtx_vec, and zvtx_vec.

176  {
177  zvtx_vec.erase(zvtx_vec.begin() + k);
178  tvtx_vec.erase(tvtx_vec.begin() + k);
179  rho_vec.erase(rho_vec.begin() + k);
180  exp_arg_vec.erase(exp_arg_vec.begin() + k);
181  exp_vec.erase(exp_vec.begin() + k);
182  swz_vec.erase(swz_vec.begin() + k);
183  swt_vec.erase(swt_vec.begin() + k);
184  se_vec.erase(se_vec.begin() + k);
185  nuz_vec.erase(nuz_vec.begin() + k);
186  nut_vec.erase(nut_vec.begin() + k);
187  szz_vec.erase(szz_vec.begin() + k);
188  stt_vec.erase(stt_vec.begin() + k);
189  szt_vec.erase(szt_vec.begin() + k);
190 #ifdef USEVTXDT2
191  dt2_vec.erase(dt2_vec.begin() + k);
192  sumw_vec.erase(sumw_vec.begin() + k);
193 #endif
194 
195  // adjust vertex lists of tracks
196  for (unsigned int i = 0; i < tks.getSize(); i++) {
197  if (tks.kmax[i] > k) {
198  tks.kmax[i]--;
199  }
200  if ((tks.kmin[i] > k) || (((tks.kmax[i] < (tks.kmin[i] + 1)) && (tks.kmin[i] > 0)))) {
201  tks.kmin[i]--;
202  }
203  }
204 
205  extractRaw();
206  }

Member Data Documentation

◆ exp

double* __restrict__ DAClusterizerInZT_vect::vertex_t::exp

Definition at line 225 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ exp_arg

double* __restrict__ DAClusterizerInZT_vect::vertex_t::exp_arg

Definition at line 224 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ exp_arg_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::exp_arg_vec

Definition at line 108 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ exp_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::exp_vec

Definition at line 109 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ nut

double* __restrict__ DAClusterizerInZT_vect::vertex_t::nut

Definition at line 230 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ nut_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::nut_vec

Definition at line 115 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ nuz

double* __restrict__ DAClusterizerInZT_vect::vertex_t::nuz

Definition at line 229 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ nuz_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::nuz_vec

Definition at line 114 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ rho

double* __restrict__ DAClusterizerInZT_vect::vertex_t::rho

◆ rho_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::rho_vec

Definition at line 102 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ se

double* __restrict__ DAClusterizerInZT_vect::vertex_t::se

Definition at line 228 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ se_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::se_vec

Definition at line 113 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ stt

double* __restrict__ DAClusterizerInZT_vect::vertex_t::stt

Definition at line 232 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ stt_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::stt_vec

Definition at line 117 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ sw_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::sw_vec

Definition at line 110 of file DAClusterizerInZT_vect.h.

◆ swt

double* __restrict__ DAClusterizerInZT_vect::vertex_t::swt

Definition at line 226 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ swt_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::swt_vec

Definition at line 112 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ swz

double* __restrict__ DAClusterizerInZT_vect::vertex_t::swz

Definition at line 227 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ swz_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::swz_vec

Definition at line 111 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ szt

double* __restrict__ DAClusterizerInZT_vect::vertex_t::szt

Definition at line 233 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ szt_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::szt_vec

Definition at line 118 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ szz

double* __restrict__ DAClusterizerInZT_vect::vertex_t::szz

Definition at line 231 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and DAClusterizerInZT_vect::update().

◆ szz_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::szz_vec

Definition at line 116 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ tvtx

double* __restrict__ DAClusterizerInZT_vect::vertex_t::tvtx

Definition at line 222 of file DAClusterizerInZT_vect.h.

Referenced by extractRaw(), and insertOrdered().

◆ tvtx_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::tvtx_vec

Definition at line 101 of file DAClusterizerInZT_vect.h.

Referenced by addItem(), extractRaw(), insertItem(), and removeItem().

◆ zvtx

double* __restrict__ DAClusterizerInZT_vect::vertex_t::zvtx

◆ zvtx_vec

std::vector<double> DAClusterizerInZT_vect::vertex_t::zvtx_vec