CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends
StMeasurementDetSet Class Reference

#include <TkMeasurementDetSet.h>

Public Types

typedef StripDetset::const_iterator new_const_iterator
 
typedef edmNew::DetSet
< SiStripCluster
StripDetset
 

Public Member Functions

const StMeasurementConditionSetconditions () const
 
void defineStrip (int i, std::pair< unsigned int, unsigned int > range)
 
const StripDetsetdetSet (int i) const
 
bool empty (int i) const
 
int find (unsigned int jd, int i=0) const
 
edm::Handle
< edmNew::DetSetVector
< SiStripCluster > > & 
handle ()
 
const edm::Handle
< edmNew::DetSetVector
< SiStripCluster > > & 
handle () const
 
unsigned int id (int i) const
 
bool isActive (int i) const
 
int nDet () const
 
std::vector< uint32_t > & rawInactiveStripDetIds ()
 
const std::vector< uint32_t > & rawInactiveStripDetIds () const
 
void resetOnDemandStrips ()
 
void setActiveThisEvent (int i, bool active)
 Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call to 'update' or 'setEmpty'. More...
 
void setEmpty (int i)
 
void setEmpty ()
 
void setUpdated (int i)
 
int size () const
 
 StMeasurementDetSet (const StMeasurementConditionSet &cond)
 
const bool stripDefined (int i) const
 
const bool stripUpdated (int i) const
 
void update (int i, const StripDetset &detSet)
 
void update (int i, int j)
 
 ~StMeasurementDetSet ()
 

Private Member Functions

void getDetSet (int i)
 

Static Private Member Functions

static void incAct ()
 
static void incReady ()
 
static void incSet ()
 
static void incTot (int)
 
static void printStat ()
 
static void zeroStat ()
 

Private Attributes

std::vector< bool > activeThisEvent_
 
const StMeasurementConditionSetconditionSet_
 
std::vector< int > detIndex_
 
std::vector< StripDetsetdetSet_
 
std::vector< bool > empty_
 
edm::Handle
< edmNew::DetSetVector
< SiStripCluster > > 
handle_
 
std::vector< bool > ready_
 
std::vector< bool > stripDefined_
 
std::vector< std::pair
< unsigned int, unsigned int > > 
stripRegions_
 
std::vector< bool > stripUpdated_
 
std::vector< uint32_t > theRawInactiveStripDetIds_
 

Friends

class MeasurementTrackerImpl
 

Detailed Description

Definition at line 138 of file TkMeasurementDetSet.h.

Member Typedef Documentation

Definition at line 141 of file TkMeasurementDetSet.h.

Definition at line 140 of file TkMeasurementDetSet.h.

Constructor & Destructor Documentation

StMeasurementDetSet::StMeasurementDetSet ( const StMeasurementConditionSet cond)
inline

Definition at line 143 of file TkMeasurementDetSet.h.

144  : conditionSet_(&cond),
145  empty_(cond.nDet(), true),
146  activeThisEvent_(cond.nDet(), true),
147  detSet_(cond.nDet()),
148  detIndex_(cond.nDet(), -1),
149  ready_(cond.nDet(), true),
151  stripDefined_(0),
152  stripUpdated_(0),
153  stripRegions_(0) {}
std::vector< bool > stripDefined_
std::vector< bool > ready_
const StMeasurementConditionSet * conditionSet_
std::vector< uint32_t > theRawInactiveStripDetIds_
std::vector< bool > empty_
std::vector< StripDetset > detSet_
std::vector< bool > activeThisEvent_
std::vector< std::pair< unsigned int, unsigned int > > stripRegions_
std::vector< int > detIndex_
std::vector< bool > stripUpdated_
StMeasurementDetSet::~StMeasurementDetSet ( )
inline

Definition at line 155 of file TkMeasurementDetSet.h.

References printStat().

155 { printStat(); }

Member Function Documentation

const StMeasurementConditionSet& StMeasurementDetSet::conditions ( ) const
inline

Definition at line 157 of file TkMeasurementDetSet.h.

References conditionSet_.

Referenced by find(), id(), isActive(), and size().

157 { return *conditionSet_; }
const StMeasurementConditionSet * conditionSet_
void StMeasurementDetSet::defineStrip ( int  i,
std::pair< unsigned int, unsigned int >  range 
)
inline

Definition at line 223 of file TkMeasurementDetSet.h.

References mps_fire::i, sistrip::SpyUtilities::range(), stripDefined_, stripRegions_, and stripUpdated_.

223  {
224  stripDefined_[i] = true;
225  stripUpdated_[i] = false;
226  stripRegions_[i] = range;
227  }
std::vector< bool > stripDefined_
const uint16_t range(const Frame &aFrame)
std::vector< std::pair< unsigned int, unsigned int > > stripRegions_
std::vector< bool > stripUpdated_
const StripDetset& StMeasurementDetSet::detSet ( int  i) const
inline
bool StMeasurementDetSet::empty ( int  i) const
inline

Definition at line 178 of file TkMeasurementDetSet.h.

References empty_, and mps_fire::i.

Referenced by TkStripMeasurementDet::isEmpty().

178 { return empty_[i]; }
std::vector< bool > empty_
int StMeasurementDetSet::find ( unsigned int  jd,
int  i = 0 
) const
inline

Definition at line 176 of file TkMeasurementDetSet.h.

References conditions(), StMeasurementConditionSet::find(), and mps_fire::i.

Referenced by MeasurementTrackerEventProducer::updateStrips().

176 { return conditions().find(jd, i); }
int find(unsigned int jd, int i=0) const
const StMeasurementConditionSet & conditions() const
void StMeasurementDetSet::getDetSet ( int  i)
inlineprivate

Definition at line 230 of file TkMeasurementDetSet.h.

References detIndex_, detSet_, empty_, handle_, mps_fire::i, incAct(), incSet(), and ready_.

Referenced by detSet().

230  {
231  if (detIndex_[i] >= 0) {
232  detSet_[i].set(*handle_, handle_->item(detIndex_[i]));
233  empty_[i] = false; // better be false already
234  incAct();
235  } else { // we should not be here
236  detSet_[i] = StripDetset();
237  empty_[i] = true;
238  }
239  ready_[i] = false;
240  incSet();
241  }
std::vector< bool > ready_
edmNew::DetSet< SiStripCluster > StripDetset
std::vector< bool > empty_
edm::Handle< edmNew::DetSetVector< SiStripCluster > > handle_
std::vector< StripDetset > detSet_
std::vector< int > detIndex_
edm::Handle<edmNew::DetSetVector<SiStripCluster> >& StMeasurementDetSet::handle ( )
inline
const edm::Handle<edmNew::DetSetVector<SiStripCluster> >& StMeasurementDetSet::handle ( ) const
inline

Definition at line 205 of file TkMeasurementDetSet.h.

References handle_.

205 { return handle_; }
edm::Handle< edmNew::DetSetVector< SiStripCluster > > handle_
unsigned int StMeasurementDetSet::id ( int  i) const
inline

Definition at line 175 of file TkMeasurementDetSet.h.

References conditions(), and StMeasurementConditionSet::id().

Referenced by MeasurementTrackerEventProducer::updateStrips().

175 { return conditions().id(i); }
const StMeasurementConditionSet & conditions() const
unsigned int id(int i) const
static void StMeasurementDetSet::incAct ( )
inlinestaticprivate

Definition at line 290 of file TkMeasurementDetSet.h.

Referenced by getDetSet().

290 {}
static void StMeasurementDetSet::incReady ( )
inlinestaticprivate

Definition at line 288 of file TkMeasurementDetSet.h.

Referenced by update().

288 {}
static void StMeasurementDetSet::incSet ( )
inlinestaticprivate

Definition at line 289 of file TkMeasurementDetSet.h.

Referenced by getDetSet().

289 {}
static void StMeasurementDetSet::incTot ( int  )
inlinestaticprivate

Definition at line 287 of file TkMeasurementDetSet.h.

Referenced by setEmpty().

287 {}
bool StMeasurementDetSet::isActive ( int  i) const
inline
int StMeasurementDetSet::nDet ( ) const
inline

Definition at line 174 of file TkMeasurementDetSet.h.

References size().

174 { return size(); }
static void StMeasurementDetSet::printStat ( )
inlinestaticprivate

Definition at line 291 of file TkMeasurementDetSet.h.

Referenced by setEmpty(), and ~StMeasurementDetSet().

291 {}
std::vector<uint32_t>& StMeasurementDetSet::rawInactiveStripDetIds ( )
inline

Definition at line 214 of file TkMeasurementDetSet.h.

References theRawInactiveStripDetIds_.

214 { return theRawInactiveStripDetIds_; }
std::vector< uint32_t > theRawInactiveStripDetIds_
const std::vector<uint32_t>& StMeasurementDetSet::rawInactiveStripDetIds ( ) const
inline

Definition at line 215 of file TkMeasurementDetSet.h.

References theRawInactiveStripDetIds_.

215 { return theRawInactiveStripDetIds_; }
std::vector< uint32_t > theRawInactiveStripDetIds_
void StMeasurementDetSet::resetOnDemandStrips ( )
inline

Definition at line 217 of file TkMeasurementDetSet.h.

References PVValHelper::fill(), stripDefined_, and stripUpdated_.

217  {
218  std::fill(stripDefined_.begin(), stripDefined_.end(), false);
219  std::fill(stripUpdated_.begin(), stripUpdated_.end(), false);
220  }
std::vector< bool > stripDefined_
void fill(std::map< std::string, TH1 * > &h, const std::string &s, double x)
std::vector< bool > stripUpdated_
void StMeasurementDetSet::setActiveThisEvent ( int  i,
bool  active 
)
inline

Turn on/off the module for reconstruction for one events. This per-event flag is cleared by any call to 'update' or 'setEmpty'.

Definition at line 198 of file TkMeasurementDetSet.h.

References activeThisEvent_, empty_, and mps_fire::i.

Referenced by TkStripMeasurementDet::setActiveThisEvent(), and MeasurementTrackerEventProducer::updateStrips().

198  {
199  activeThisEvent_[i] = active;
200  if (!active)
201  empty_[i] = true;
202  }
std::vector< bool > empty_
std::vector< bool > activeThisEvent_
void StMeasurementDetSet::setEmpty ( int  i)
inline

Definition at line 181 of file TkMeasurementDetSet.h.

References activeThisEvent_, empty_, and mps_fire::i.

Referenced by TkStripMeasurementDet::setEmpty(), and MeasurementTrackerEventProducer::updateStrips().

181  {
182  empty_[i] = true;
183  activeThisEvent_[i] = true;
184  }
std::vector< bool > empty_
std::vector< bool > activeThisEvent_
void StMeasurementDetSet::setEmpty ( )
inline

Definition at line 187 of file TkMeasurementDetSet.h.

References activeThisEvent_, detIndex_, empty_, PVValHelper::fill(), incTot(), printStat(), ready_, and size().

187  {
188  printStat();
189  std::fill(empty_.begin(), empty_.end(), true);
190  std::fill(ready_.begin(), ready_.end(), true);
191  std::fill(detIndex_.begin(), detIndex_.end(), -1);
192  std::fill(activeThisEvent_.begin(), activeThisEvent_.end(), true);
193  incTot(size());
194  }
std::vector< bool > ready_
std::vector< bool > empty_
void fill(std::map< std::string, TH1 * > &h, const std::string &s, double x)
static void incTot(int)
std::vector< bool > activeThisEvent_
std::vector< int > detIndex_
void StMeasurementDetSet::setUpdated ( int  i)
inline

Definition at line 185 of file TkMeasurementDetSet.h.

References mps_fire::i, and stripUpdated_.

185 { stripUpdated_[i] = true; }
std::vector< bool > stripUpdated_
int StMeasurementDetSet::size ( void  ) const
inline
const bool StMeasurementDetSet::stripDefined ( int  i) const
inline

Definition at line 221 of file TkMeasurementDetSet.h.

References mps_fire::i, and stripDefined_.

221 { return stripDefined_[i]; }
std::vector< bool > stripDefined_
const bool StMeasurementDetSet::stripUpdated ( int  i) const
inline

Definition at line 222 of file TkMeasurementDetSet.h.

References mps_fire::i, and stripUpdated_.

222 { return stripUpdated_[i]; }
std::vector< bool > stripUpdated_
void StMeasurementDetSet::update ( int  i,
const StripDetset detSet 
)
inline
void StMeasurementDetSet::update ( int  i,
int  j 
)
inline
static void StMeasurementDetSet::zeroStat ( )
inlinestaticprivate

Definition at line 286 of file TkMeasurementDetSet.h.

286 {}

Friends And Related Function Documentation

friend class MeasurementTrackerImpl
friend

Definition at line 243 of file TkMeasurementDetSet.h.

Member Data Documentation

std::vector<bool> StMeasurementDetSet::activeThisEvent_
private

Definition at line 251 of file TkMeasurementDetSet.h.

Referenced by isActive(), setActiveThisEvent(), and setEmpty().

const StMeasurementConditionSet* StMeasurementDetSet::conditionSet_
private

Definition at line 245 of file TkMeasurementDetSet.h.

Referenced by conditions().

std::vector<int> StMeasurementDetSet::detIndex_
private

Definition at line 255 of file TkMeasurementDetSet.h.

Referenced by getDetSet(), setEmpty(), and update().

std::vector<StripDetset> StMeasurementDetSet::detSet_
private

Definition at line 254 of file TkMeasurementDetSet.h.

Referenced by detSet(), getDetSet(), and update().

std::vector<bool> StMeasurementDetSet::empty_
private

Definition at line 250 of file TkMeasurementDetSet.h.

Referenced by empty(), getDetSet(), setActiveThisEvent(), setEmpty(), and update().

edm::Handle<edmNew::DetSetVector<SiStripCluster> > StMeasurementDetSet::handle_
private

Definition at line 248 of file TkMeasurementDetSet.h.

Referenced by getDetSet(), and handle().

std::vector<bool> StMeasurementDetSet::ready_
private

Definition at line 256 of file TkMeasurementDetSet.h.

Referenced by detSet(), getDetSet(), setEmpty(), and update().

std::vector<bool> StMeasurementDetSet::stripDefined_
private

Definition at line 261 of file TkMeasurementDetSet.h.

Referenced by defineStrip(), resetOnDemandStrips(), and stripDefined().

std::vector<std::pair<unsigned int, unsigned int> > StMeasurementDetSet::stripRegions_
private

Definition at line 262 of file TkMeasurementDetSet.h.

Referenced by defineStrip().

std::vector<bool> StMeasurementDetSet::stripUpdated_
private

Definition at line 261 of file TkMeasurementDetSet.h.

Referenced by defineStrip(), resetOnDemandStrips(), setUpdated(), and stripUpdated().

std::vector<uint32_t> StMeasurementDetSet::theRawInactiveStripDetIds_
private

Definition at line 259 of file TkMeasurementDetSet.h.

Referenced by rawInactiveStripDetIds().