Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

FastShower::SNEmEcalEc3 Class Reference

#include <SNEmEcalEc3.h>

Inheritance diagram for FastShower::SNEmEcalEc3:

Inheritance graph
[legend]
Collaboration diagram for FastShower::SNEmEcalEc3:

Collaboration graph
[legend]
List of all members.

Public Methods

 SNEmEcalEc3 (IUpdatingGaussian *)
 SNEmEcalEc3 (const IConfigurer *, const std::string &)
virtual ISamplerclone () const
 ISampler interface.

virtual void sample (const PolyArgs &, CoreSamples &) const
 sample and fill CoreSamples.

virtual double lastValue (const CoreSamples &) const
 read back last deposit - used by monitoring code.

virtual void components (IDebug::Cpts &) const

Private Attributes

SP< IUpdatingGaussianm_peak

Static Private Attributes

const double s_nSigma

Constructor & Destructor Documentation

FastShower::SNEmEcalEc3::SNEmEcalEc3 IUpdatingGaussian  
 

Definition at line 26 of file SNEmEcalEc3.cxx.

Referenced by clone().

00026                                               : 
00027     ISampler(), ICellSN(), DebugBase("SNEmEcalEc3"), m_peak(g){}

FastShower::SNEmEcalEc3::SNEmEcalEc3 const IConfigurer  ,
const std::string &   
 

Definition at line 29 of file SNEmEcalEc3.cxx.

References FastShower::IConfigurer::findIUG(), m_peak, and FastShower::DebugBase::text().

00030                                             :
00031     DebugBase("SN3"), m_peak(0){
00032     m_peak           = configurer->findIUG( text()+"Peak" ) ;
00033     cout<<text()<<" finishing construction"<<endl;
00034   }
  //

Member Function Documentation

ISampler * FastShower::SNEmEcalEc3::clone   const [virtual]
 

ISampler interface.

Implements FastShower::ISampler.

Definition at line 36 of file SNEmEcalEc3.cxx.

References SNEmEcalEc3().

00036 {return new SNEmEcalEc3(*this);}

void FastShower::SNEmEcalEc3::sample const PolyArgs  ,
CoreSamples  
const [virtual]
 

sample and fill CoreSamples.

Implements FastShower::ISampler.

Definition at line 38 of file SNEmEcalEc3.cxx.

References FastShower::CoreSamples::fill(), m_peak, and s_nSigma.

00038                                                                    {
00039 
00040     pair<double, double>  peakParams = m_peak->parameters(pa);
00041     double peakMean  = peakParams.first;
00042     //
00043     if (peakMean<=0.0) {
00044       // in this case the gaussian has mean/sigma 0/0 (all is deposited in C0!) 
00045       cs.fill(this,0.0);
00046     } else {
00047       cs.fill(this,m_peak->sample(0.0,s_nSigma,peakMean,s_nSigma,pa));
00048     }    
00049   }

double FastShower::SNEmEcalEc3::lastValue const CoreSamples   const [virtual]
 

read back last deposit - used by monitoring code.

Implements FastShower::ISampler.

Definition at line 50 of file SNEmEcalEc3.cxx.

References FastShower::CoreSamples::give().

00050                                                            {
00051     return cs.give(this);
00052   }

void FastShower::SNEmEcalEc3::components IDebug::Cpts   const [virtual]
 

Reimplemented from FastShower::DebugBase.

Definition at line 53 of file SNEmEcalEc3.cxx.

References m_peak.

00053                                                  {
00054     v.push_back(m_peak);
00055   }

Member Data Documentation

SP<IUpdatingGaussian> FastShower::SNEmEcalEc3::m_peak [private]
 

Definition at line 67 of file SNEmEcalEc3.h.

Referenced by components(), sample(), and SNEmEcalEc3().

const double FastShower::SNEmEcalEc3::s_nSigma [static, private]
 

Referenced by sample().


The documentation for this class was generated from the following files:
Generated on Tue Mar 18 11:58:02 2003 for FastShowerUtils by doxygen1.3-rc1