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 Attributes
PixelDigiCollection Class Reference

#include <PixelDigiCollection.h>

Public Types

typedef std::vector< PixelDigi >
::const_iterator 
ContainerIterator
 
typedef std::pair< unsigned
int, unsigned int > 
IndexRange
 
typedef std::pair
< ContainerIterator,
ContainerIterator
Range
 
typedef std::map< unsigned int,
IndexRange
Registry
 
typedef std::map< unsigned int,
IndexRange >::const_iterator 
RegistryIterator
 

Public Member Functions

const std::vector< unsigned int > detIDs () const
 
const Range get (unsigned int detID) const
 
 PixelDigiCollection ()
 
void put (Range input, unsigned int detID)
 

Private Attributes

std::vector< PixelDigicontainer_
 
Registry map_
 

Detailed Description

Definition at line 9 of file PixelDigiCollection.h.

Member Typedef Documentation

typedef std::vector<PixelDigi>::const_iterator PixelDigiCollection::ContainerIterator

Definition at line 11 of file PixelDigiCollection.h.

typedef std::pair<unsigned int, unsigned int> PixelDigiCollection::IndexRange

Definition at line 13 of file PixelDigiCollection.h.

Definition at line 12 of file PixelDigiCollection.h.

typedef std::map<unsigned int, IndexRange> PixelDigiCollection::Registry

Definition at line 14 of file PixelDigiCollection.h.

typedef std::map<unsigned int, IndexRange>::const_iterator PixelDigiCollection::RegistryIterator

Definition at line 15 of file PixelDigiCollection.h.

Constructor & Destructor Documentation

PixelDigiCollection::PixelDigiCollection ( )
inline

Definition at line 17 of file PixelDigiCollection.h.

17 {}

Member Function Documentation

const std::vector< unsigned int > PixelDigiCollection::detIDs ( ) const

Definition at line 55 of file PixelDigiCollection.cc.

References SplitLinear::begin, dataset::end, map_, and convertSQLitetoXML_cfg::output.

55  {
56  // returns vector of detIDs in map
57 
60 
61  std::vector<unsigned int> output;
62 
63  for (; begin != end; ++begin) {
64  output.push_back(begin->first);
65  }
66 
67  return output;
68 }
std::map< unsigned int, IndexRange >::const_iterator RegistryIterator
string end
Definition: dataset.py:937
const PixelDigiCollection::Range PixelDigiCollection::get ( unsigned int  detID) const

Definition at line 39 of file PixelDigiCollection.cc.

References container_, newFWLiteAna::found, and map_.

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), submitPVValidationJobs.BetterConfigParser::__updateDict(), util.rrapi.RRApi::columns(), rrapi.RRApi::columns(), rrapi.RRApi::count(), util.rrapi.RRApi::count(), rrapi.RRApi::data(), util.rrapi.RRApi::data(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), submitPVValidationJobs.BetterConfigParser::getResultingSection(), util.rrapi.RRApi::report(), rrapi.RRApi::report(), rrapi.RRApi::reports(), util.rrapi.RRApi::reports(), rrapi.RRApi::tables(), util.rrapi.RRApi::tables(), util.rrapi.RRApi::tags(), rrapi.RRApi::tags(), rrapi.RRApi::templates(), util.rrapi.RRApi::templates(), util.rrapi.RRApi::workspaces(), and rrapi.RRApi::workspaces().

39  {
40  // get Digis of detID
41 
42  auto found = map_.find(detID);
43  PixelDigiCollection::IndexRange returnIndexRange{};
44  if (found != map_.end()) {
45  returnIndexRange = found->second;
46  }
47 
48  PixelDigiCollection::Range returnRange;
49  returnRange.first = container_.begin() + returnIndexRange.first;
50  returnRange.second = container_.begin() + returnIndexRange.second + 1;
51 
52  return returnRange;
53 }
std::vector< PixelDigi > container_
std::pair< ContainerIterator, ContainerIterator > Range
std::pair< unsigned int, unsigned int > IndexRange
void PixelDigiCollection::put ( Range  input,
unsigned int  detID 
)

Definition at line 5 of file PixelDigiCollection.cc.

References SplitLinear::begin, container_, dataset::end, first, pileupCalc::inputRange, and map_.

5  {
6  // put in Digis of detID
7 
8  // store size of vector before put
10 
11  // put in PixelDigis from input
12  bool first = true;
13 
14  // fill input in temporary vector for sorting
15  std::vector<PixelDigi> temporary;
18  for (; sort_begin != sort_end; ++sort_begin) {
19  temporary.push_back(*sort_begin);
20  }
21  std::sort(temporary.begin(), temporary.end());
22 
23  // iterators over input
26  for (; begin != end; ++begin) {
27  container_.push_back(*begin);
28  if (first) {
29  inputRange.first = container_.size() - 1;
30  first = false;
31  }
32  }
33  inputRange.second = container_.size() - 1;
34 
35  // fill map
36  map_[detID] = inputRange;
37 }
static std::string const input
Definition: EdmProvDump.cc:47
std::vector< PixelDigi > container_
std::vector< PixelDigi >::const_iterator ContainerIterator
tuple inputRange
Definition: pileupCalc.py:168
string end
Definition: dataset.py:937
std::pair< unsigned int, unsigned int > IndexRange

Member Data Documentation

std::vector<PixelDigi> PixelDigiCollection::container_
private

Definition at line 24 of file PixelDigiCollection.h.

Referenced by get(), and put().

Registry PixelDigiCollection::map_
private

Definition at line 25 of file PixelDigiCollection.h.

Referenced by detIDs(), get(), and put().