CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CaloSamples.cc
Go to the documentation of this file.
2 #include <math.h>
3 
4 CaloSamples::CaloSamples() : id_(), size_(0), presamples_(0) { setBlank() ; }
5 
7  id_ ( id ) ,
8  size_ ( size ) ,
9  presamples_ ( 0 )
10 {
11  setBlank() ;
12 }
13 
14 void
16 {
17  presamples_ = pre ;
18 }
19 
22 {
23  for (int i=0; i<MAXSAMPLES; i++) data_[i]*=value;
24  return (*this);
25 }
26 
29 {
30  for (int i=0; i<MAXSAMPLES; i++) data_[i]+=value;
31  return (*this);
32 }
33 
34 bool
35 CaloSamples::isBlank() const // are the samples blank (zero?)
36 {
37  for( int i ( 0 ) ; i != MAXSAMPLES ; ++i )
38  {
39  if( 1.e-6 < fabs( data_[i] ) ) return false ;
40  }
41  return true ;
42 }
43 
44 void
45 CaloSamples::setBlank() // keep id, presamples, size but zero out data
46 {
47  std::fill( data_ , data_ + MAXSAMPLES, (double)0.0 ) ;
48 }
49 
50 std::ostream& operator<<(std::ostream& s, const CaloSamples& samples) {
51  s << "DetId=" << samples.id().rawId();
52  s << ", "<< samples.size() << "samples" << std::endl;
53  for (int i=0; i<samples.size(); i++)
54  s << i << ":" << samples[i] << std::endl;
55  return s;
56 }
int i
Definition: DBlmapReader.cc:9
CaloSamples & scale(double value)
multiply each item by this value
Definition: CaloSamples.cc:21
static const int MAXSAMPLES
Definition: CaloSamples.h:51
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
uint32_t rawId() const
get the raw id
Definition: DetId.h:45
bool isBlank() const
Definition: CaloSamples.cc:35
void setBlank()
Definition: CaloSamples.cc:45
void setPresamples(int pre)
set presample information
Definition: CaloSamples.cc:15
Definition: DetId.h:20
int size() const
get the size
Definition: CaloSamples.h:24
string const
Definition: compareJSON.py:14
int presamples_
Definition: CaloSamples.h:55
string s
Definition: asciidump.py:422
CaloSamples & operator+=(double value)
add a value to all samples
Definition: CaloSamples.cc:28
DetId id() const
get the (generic) id
Definition: CaloSamples.h:21
double data_[MAXSAMPLES]
Definition: CaloSamples.h:54
tuple size
Write out results.