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

FastShower::SNHadEarlyEcalBar1 Class Reference

#include <SNHadEarlyEcalBar1.h>

Inheritance diagram for FastShower::SNHadEarlyEcalBar1:

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

Collaboration graph
[legend]
List of all members.

Public Methods

 SNHadEarlyEcalBar1 (IUpdatingGaussian *)
 SNHadEarlyEcalBar1 (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 &cs) const
 read back last deposit - used by monitoring code.

virtual void components (IDebug::Cpts &) const

Private Attributes

SP< IUpdatingGaussianm_peak

Constructor & Destructor Documentation

FastShower::SNHadEarlyEcalBar1::SNHadEarlyEcalBar1 IUpdatingGaussian  
 

Definition at line 21 of file SNHadEarlyEcalBar1.cxx.

Referenced by clone().

00021                                                             : 
00022     ISampler(), ICellSN(), DebugBase("SNHadEarlyEcalBar1"), m_peak(g){}

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

Definition at line 25 of file SNHadEarlyEcalBar1.cxx.

00026                                                             :
00027     DebugBase(s), m_peak(0){
00028     m_peak = configurer->findIUG( text()+"Peak" ) ;
00029     cout<<text()<<" finishing construction"<<endl;
00030   }
  //

Member Function Documentation

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

ISampler interface.

Implements FastShower::ISampler.

Definition at line 32 of file SNHadEarlyEcalBar1.cxx.

References SNHadEarlyEcalBar1().

00032                                             {
00033     return new SNHadEarlyEcalBar1(*this);
00034   }

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

sample and fill CoreSamples.

Implements FastShower::ISampler.

Definition at line 36 of file SNHadEarlyEcalBar1.cxx.

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

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

double FastShower::SNHadEarlyEcalBar1::lastValue const CoreSamples   cs const [virtual]
 

read back last deposit - used by monitoring code.

Implements FastShower::ISampler.

Definition at line 49 of file SNHadEarlyEcalBar1.cxx.

References FastShower::CoreSamples::give().

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

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

Reimplemented from FastShower::DebugBase.

Definition at line 53 of file SNHadEarlyEcalBar1.cxx.

References m_peak.

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

Member Data Documentation

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

Definition at line 70 of file SNHadEarlyEcalBar1.h.

Referenced by components(), and sample().


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