00001
00002
00003
00005
00006 #include "LayerGroup.h"
00007
00009
00010
00012
00013 LayerGroup::LayerGroup(const Tuple& t, int min_layer, int max_layer)
00014 : Analyze(t, "TKR_First_XHit", "Events used")
00015 , m_psf(t,0,0)
00016 , m_energy(t)
00017 , m_minlayer(min_layer), m_maxlayer(max_layer)
00018 {
00019
00020
00021 }
00022 void LayerGroup::report(std::ostream& out)
00023 {
00024 if( m_maxlayer>m_minlayer) {
00025 out << std::endl<<" Layers " << m_minlayer << '-'<< m_maxlayer;
00026 }
00027 Analyze::report(out);
00028 m_psf.report(out);
00029 m_energy.report(out);
00030 }
00031 double LayerGroup::sigma() {return m_psf.sigma(); }
00032
00033 bool LayerGroup::apply()
00034 {
00035 int layer = static_cast<int>(item());
00036 if( m_maxlayer>m_minlayer && ( layer<m_minlayer || layer > m_maxlayer) )return false;
00037
00038 m_psf();
00039 m_energy();
00040 return true;
00041 }
00042
00043 LayerGroup::~LayerGroup()
00044 {
00045
00046 }