00001 #include "FastShowerUtils/NormaliserPtr.h" 00002 #include "FastShowerUtils/ParticleParameters.h" 00003 #include "FastShowerUtils/Pinger/IPinger.h" 00004 #include "FastShowerUtils/Pinger/SimplePinger.h" 00005 #include "FastShowerUtils/Pinger/SimpleStatsCollector.h" 00006 #include "FastShowerUtils/FunctionStats.h" 00007 #include "FastShowerUtils/Normalisations.h" 00008 00009 #include <iostream> 00010 #include <string> 00011 #include <assert.h> 00012 namespace FastShower{ 00013 NormaliserPtr::NormaliserPtr(INormaliser* s, std::string t): 00014 DebugBase(t),m_pointee(s){} 00015 // 00016 NormaliserPtr::NormaliserPtr(const NormaliserPtr & rhs):INormaliser(),DebugBase(rhs){ 00017 m_pointee = rhs.m_pointee; 00018 } 00019 NormaliserPtr& NormaliserPtr::operator=(const NormaliserPtr& rhs){ 00020 00021 if (this == &rhs ) return *this; 00022 00023 INormaliser::operator=(rhs); 00024 DebugBase::operator=(rhs); 00025 m_pointee = rhs.m_pointee; 00026 00027 return *this; 00028 } 00029 // 00030 INormaliser* NormaliserPtr::clone() const { 00031 INormaliser* spPtr = new NormaliserPtr(*this); 00032 return spPtr; 00033 } 00034 void NormaliserPtr::scale(Normalisations& Ns, 00035 const ParticleParameters& pp) const{ 00036 return m_pointee->scale(Ns, pp); 00037 } 00038 // 00039 void NormaliserPtr::ping(IPinger& p) const {DebugBase::ping(p);} 00040 std::string NormaliserPtr::name() const {return m_pointee->name();} 00041 void NormaliserPtr::components(IDebug::Cpts& v)const{ 00042 m_pointee->components(v); 00043 } 00044 00045 // 00046 } 00047 00048 00049 00050 00051