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

FastShower::ANHadEarlyEcalEc1 Class Reference

#include <ANHadEarlyEcalEc1.h>

Inheritance diagram for FastShower::ANHadEarlyEcalEc1:

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

Collaboration graph
[legend]
List of all members.

Public Methods

 ANHadEarlyEcalEc1 (IUpdatingGaussian *, IProcessedDist *, IInTail *)
 ANHadEarlyEcalEc1 (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 Methods

double evalTail (const PolyArgs &) const
double evalPeak (const PolyArgs &) const

Private Attributes

SP< IUpdatingGaussianm_peak
SP< IProcessedDistm_tail
SP< IInTailm_inTail

Constructor & Destructor Documentation

FastShower::ANHadEarlyEcalEc1::ANHadEarlyEcalEc1 IUpdatingGaussian  ,
IProcessedDist  ,
IInTail  
 

Definition at line 22 of file ANHadEarlyEcalEc1.cxx.

Referenced by clone().

00024                                                      :
00025     ISampler(), ICellAN(), DebugBase("ANHadEarlyEcalEc1"), 
00026     m_peak(g), m_tail(t), m_inTail(it){}
  //

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

Definition at line 28 of file ANHadEarlyEcalEc1.cxx.

References FastShower::IConfigurer::findIUG(), m_inTail, m_peak, m_tail, FastShower::IConfigurer::makeIInTail(), FastShower::IConfigurer::makeProcessedFlat(), and FastShower::DebugBase::text().

00029                                                           :
00030     DebugBase(s), m_peak(0), m_tail(0), m_inTail(0){
00031     m_peak           = configurer->findIUG( text()+"Peak" ) ;
00032     m_tail           = configurer->makeProcessedFlat( text() );
00033     m_inTail         = configurer->makeIInTail( text() );
00034     cout<<text()<<" finishing construction"<<endl;
00035   }
  //

Member Function Documentation

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

ISampler interface.

Implements FastShower::ISampler.

Definition at line 37 of file ANHadEarlyEcalEc1.cxx.

References ANHadEarlyEcalEc1().

00037                                            {
00038     return new ANHadEarlyEcalEc1(*this);
00039   }

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

sample and fill CoreSamples.

Implements FastShower::ISampler.

Definition at line 41 of file ANHadEarlyEcalEc1.cxx.

References evalPeak(), evalTail(), FastShower::CoreSamples::fill(), and m_inTail.

00042                                                         {
00043     if( m_inTail->operator()(pa) ){
00044       cs.fill(this, evalTail(pa));
00045     }else{
00046       cs.fill(this, evalPeak(pa));
00047     }
00048   }

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

read back last deposit - used by monitoring code.

Implements FastShower::ISampler.

Definition at line 63 of file ANHadEarlyEcalEc1.cxx.

References FastShower::CoreSamples::give().

00063                                                                  {
00064     return cs.give(this);
00065   }

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

Reimplemented from FastShower::DebugBase.

Definition at line 67 of file ANHadEarlyEcalEc1.cxx.

References m_inTail, m_peak, and m_tail.

00067                                                        {
00068     v.push_back(m_peak);
00069     v.push_back(m_tail);
00070     v.push_back(m_inTail);
00071   }

double FastShower::ANHadEarlyEcalEc1::evalTail const PolyArgs   const [private]
 

Definition at line 50 of file ANHadEarlyEcalEc1.cxx.

References m_tail.

Referenced by sample().

00050                                                           {
00051 
00052     //calculate ther upper and lower limits of the tail
00053     double uLimit = 0.10;
00054     double lLimit = 0.0;
00055     LinearProcessor lp( (uLimit-lLimit), lLimit );
00056     return m_tail->sample(&lp);
00057   }

double FastShower::ANHadEarlyEcalEc1::evalPeak const PolyArgs   const [private]
 

Definition at line 59 of file ANHadEarlyEcalEc1.cxx.

References m_peak.

Referenced by sample().

00059                                                              {
00060     return m_peak->sample(0.10, 100, 1.0, 100, pa);
00061   }

Member Data Documentation

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

Definition at line 77 of file ANHadEarlyEcalEc1.h.

Referenced by ANHadEarlyEcalEc1(), components(), and evalPeak().

SP<IProcessedDist> FastShower::ANHadEarlyEcalEc1::m_tail [private]
 

Definition at line 78 of file ANHadEarlyEcalEc1.h.

Referenced by ANHadEarlyEcalEc1(), components(), and evalTail().

SP<IInTail> FastShower::ANHadEarlyEcalEc1::m_inTail [private]
 

Definition at line 79 of file ANHadEarlyEcalEc1.h.

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


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