EventHeader.cxx

Go to the documentation of this file.
00001 // EventHeader implementation
00002 //
00003 
00004 #include "AtlfastEvent/EventHeader.h"
00005 #include "AtlfastEvent/MCweightContainerCollection.h"
00006 #include "AtlfastEvent/MsgStreamDefs.h"
00007 
00008 #include "GaudiKernel/MsgStream.h"
00009 #include <assert.h>
00010 
00011 namespace Atlfast {
00012   MsgStream& operator << ( MsgStream& s, const EventHeader& e ){
00013     s 
00014       << "nElectrons:        "<< e.nElectrons()        <<"\n"
00015       << "nIsolatedMuons:    "<< e.nIsolatedMuons()    <<"\n"
00016       << "nMuons:            "<< e.nMuons()            <<"\n"
00017       << "nNonIsolatedMuons: "<< e.nNonIsolatedMuons() <<"\n"
00018       << "nPhotons:          "<< e.nPhotons()          <<"\n"
00019       << "nJets:             "<< e.nJets()             <<"\n"
00020       << "nBJets:            "<< e.nBJets()            <<"\n"
00021       << "nCJets:            "<< e.nCJets()            <<"\n"
00022       << "nTauJets:          "<< e.nTauJets()          <<"\n"
00023       << "jetCircularity:    "<< e.jetCircularity()    <<"\n"
00024       << "eventCircularity:  "<< e.eventCircularity()  <<"\n"
00025       << "thrust:            "<< e.thrust()            <<"\n"
00026       << "oblateness:        "<< e.oblateness()        <<"\n"
00027       << "pMiss:             "<< e.pMiss()             <<"\n"
00028       << "sumET:             "<< e.sumET()             <<"\n"
00029       << "pEscaped:          "<< e.pEscaped()          <<"  "
00030       ;
00031     return s;
00032   }
00033 
00034   MsgStream& operator << ( MsgStream& s, const EventHeader* const e ){
00035     s<<*e;
00036     return s;
00037   }
00038 
00039   MCweightContainer EventHeader::firstFewWeights(const int n) const {
00040 
00041     assert(n>=0);
00042     
00043     MCweightContainer weights(n, 0.);
00044 
00045     if(!m_mcWeightContainers.empty()) {
00046       
00047       MCweightContainer firstContainer = m_mcWeightContainers[0];
00048 
00049 
00050       int nWeights = firstContainer.size();
00051       if(nWeights>=n){
00052         std::copy(
00053                   firstContainer.begin(),
00054                   firstContainer.begin()+n,
00055                   weights.begin()
00056                   );
00057       }else{
00058         std::copy(
00059                   firstContainer.begin(),  
00060                   firstContainer.end(),
00061                   weights.begin() 
00062                   );
00063 
00064 
00065       }
00066     }
00067     
00068     return weights;
00069   }
00070 
00071 } // end of namespace bracket
00072 
00073 
00074 
00075 
00076 
00077 
00078 
00079 
00080 
00081 
00082 
00083 

Generated on Fri Sep 21 13:00:09 2007 for AtlfastEvent by  doxygen 1.5.1