Jpp 19.3.0-rc.3
the software that should make you happy
Loading...
Searching...
No Matches
JTOOLS::JHistogram< JAbscissa_t, JContents_t > Class Template Referenceabstract

Template definition of histogram object interface. More...

#include <JHistogram.hh>

Inheritance diagram for JTOOLS::JHistogram< JAbscissa_t, JContents_t >:
JTOOLS::JHistogram1D< JBin2D< JAbscissa_t, JContents_t >, JContainer_t, JDistance_t >

Public Types

typedef JAbscissa_t abscissa_type
 
typedef JContents_t contents_type
 

Public Member Functions

virtual ~JHistogram ()
 Virtual destructor.
 
void reset ()
 Reset.
 
virtual void evaluate (const abscissa_type *pX, typename JLANG::JClass< contents_type >::argument_type w)=0
 Histogram filling.
 
JHistogramadd (const JHistogram &histogram)
 Add histogram.
 
JHistogramsub (const JHistogram &histogram)
 Subtract histogram.
 
JHistogrammul (const double value)
 Scale histogram.
 
JHistogramdiv (double value)
 Scale histogram.
 
const contents_typegetUnderflow () const
 Get contents below lower limit.
 
const contents_typegetOverflow () const
 Get contents above upper limit.
 
const contents_typegetIntegral () const
 Get contents above upper limit.
 

Protected Member Functions

 JHistogram ()
 Default constructor.
 

Protected Attributes

contents_type underflow
 
contents_type overflow
 
contents_type integral
 

Friends

JReaderoperator>> (JReader &in, JHistogram &object)
 Read histogram from input.
 
JWriteroperator<< (JWriter &out, const JHistogram &object)
 Write histogram to output.
 

Detailed Description

template<class JAbscissa_t, class JContents_t>
class JTOOLS::JHistogram< JAbscissa_t, JContents_t >

Template definition of histogram object interface.

This class also comprises auxiliary data.

Definition at line 27 of file JHistogram.hh.

Member Typedef Documentation

◆ abscissa_type

template<class JAbscissa_t , class JContents_t >
JAbscissa_t JTOOLS::JHistogram< JAbscissa_t, JContents_t >::abscissa_type

Definition at line 42 of file JHistogram.hh.

◆ contents_type

template<class JAbscissa_t , class JContents_t >
JContents_t JTOOLS::JHistogram< JAbscissa_t, JContents_t >::contents_type

Definition at line 43 of file JHistogram.hh.

Constructor & Destructor Documentation

◆ JHistogram()

template<class JAbscissa_t , class JContents_t >
JTOOLS::JHistogram< JAbscissa_t, JContents_t >::JHistogram ( )
inlineprotected

Default constructor.

Definition at line 33 of file JHistogram.hh.

33 :
37 {}
contents_type overflow
contents_type integral
contents_type underflow
static const JZero zero
Function object to assign zero value.
Definition JZero.hh:105

◆ ~JHistogram()

template<class JAbscissa_t , class JContents_t >
virtual JTOOLS::JHistogram< JAbscissa_t, JContents_t >::~JHistogram ( )
inlinevirtual

Virtual destructor.

Definition at line 49 of file JHistogram.hh.

50 {}

Member Function Documentation

◆ reset()

template<class JAbscissa_t , class JContents_t >
void JTOOLS::JHistogram< JAbscissa_t, JContents_t >::reset ( )
inline

Reset.

Definition at line 56 of file JHistogram.hh.

57 {
58 this->underflow = JMATH::zero;
59 this->overflow = JMATH::zero;
60 this->integral = JMATH::zero;
61 }

◆ evaluate()

template<class JAbscissa_t , class JContents_t >
virtual void JTOOLS::JHistogram< JAbscissa_t, JContents_t >::evaluate ( const abscissa_type * pX,
typename JLANG::JClass< contents_type >::argument_type w )
pure virtual

Histogram filling.

Parameters
pXpointer to abscissa values
wweight

◆ add()

template<class JAbscissa_t , class JContents_t >
JHistogram & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::add ( const JHistogram< JAbscissa_t, JContents_t > & histogram)
inline

Add histogram.

Parameters
histogramhistogram
Returns
this histogram

Definition at line 80 of file JHistogram.hh.

81 {
82 this->underflow += histogram.underflow;
83 this->overflow += histogram.overflow;
84 this->integral += histogram.integral;
85
86 return *this;
87 }

◆ sub()

template<class JAbscissa_t , class JContents_t >
JHistogram & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::sub ( const JHistogram< JAbscissa_t, JContents_t > & histogram)
inline

Subtract histogram.

Parameters
histogramhistogram
Returns
this histogram

Definition at line 96 of file JHistogram.hh.

97 {
98 this->underflow -= histogram.underflow;
99 this->overflow -= histogram.overflow;
100 this->integral -= histogram.integral;
101
102 return *this;
103 }

◆ mul()

template<class JAbscissa_t , class JContents_t >
JHistogram & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::mul ( const double value)
inline

Scale histogram.

Parameters
valuemultiplication factor
Returns
this histogram

Definition at line 112 of file JHistogram.hh.

113 {
114 this->underflow *= value;
115 this->overflow *= value;
116 this->integral *= value;
117
118 return *this;
119 }

◆ div()

template<class JAbscissa_t , class JContents_t >
JHistogram & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::div ( double value)
inline

Scale histogram.

Parameters
valuedivision factor
Returns
this histogram

Definition at line 128 of file JHistogram.hh.

129 {
130 this->underflow /= value;
131 this->overflow /= value;
132 this->integral /= value;
133
134 return *this;
135 }

◆ getUnderflow()

template<class JAbscissa_t , class JContents_t >
const contents_type & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::getUnderflow ( ) const
inline

Get contents below lower limit.

Returns
contents

Definition at line 143 of file JHistogram.hh.

144 {
145 return underflow;
146 }

◆ getOverflow()

template<class JAbscissa_t , class JContents_t >
const contents_type & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::getOverflow ( ) const
inline

Get contents above upper limit.

Returns
contents

Definition at line 154 of file JHistogram.hh.

155 {
156 return overflow;
157 }

◆ getIntegral()

template<class JAbscissa_t , class JContents_t >
const contents_type & JTOOLS::JHistogram< JAbscissa_t, JContents_t >::getIntegral ( ) const
inline

Get contents above upper limit.

Returns
contents

Definition at line 165 of file JHistogram.hh.

166 {
167 return integral;
168 }

Friends And Related Symbol Documentation

◆ operator>>

template<class JAbscissa_t , class JContents_t >
JReader & operator>> ( JReader & in,
JHistogram< JAbscissa_t, JContents_t > & object )
friend

Read histogram from input.

Parameters
inreader
objecthistogram
Returns
reader

Definition at line 178 of file JHistogram.hh.

179 {
180 in >> object.underflow;
181 in >> object.overflow;
182 in >> object.integral;
183
184 return in;
185 }

◆ operator<<

template<class JAbscissa_t , class JContents_t >
JWriter & operator<< ( JWriter & out,
const JHistogram< JAbscissa_t, JContents_t > & object )
friend

Write histogram to output.

Parameters
outwriter
objecthistogram
Returns
writer

Definition at line 195 of file JHistogram.hh.

196 {
197 out << object.underflow;
198 out << object.overflow;
199 out << object.integral;
200
201 return out;
202 }

Member Data Documentation

◆ underflow

template<class JAbscissa_t , class JContents_t >
contents_type JTOOLS::JHistogram< JAbscissa_t, JContents_t >::underflow
protected

Definition at line 206 of file JHistogram.hh.

◆ overflow

template<class JAbscissa_t , class JContents_t >
contents_type JTOOLS::JHistogram< JAbscissa_t, JContents_t >::overflow
protected

Definition at line 207 of file JHistogram.hh.

◆ integral

template<class JAbscissa_t , class JContents_t >
contents_type JTOOLS::JHistogram< JAbscissa_t, JContents_t >::integral
protected

Definition at line 208 of file JHistogram.hh.


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