ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/DaughterData.h
Revision: 1.10
Committed: Thu Mar 29 23:41:55 2012 UTC (13 years, 1 month ago) by paus
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_032, Mit_031, Mit_030, Mit_029c, Mit_029b, Mit_030_pre1, Mit_029a, Mit_029, Mit_029_pre1, Mit_028a, Mit_028, Mit_027a, Mit_027, Mit_026, Mit_025e, HEAD
Changes since 1.9: +6 -5 lines
Log Message:
Version with working skimming and last 4.4 tag.

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: DaughterData.h,v 1.9 2012/03/28 12:15:34 paus Exp $
3 //
4 // DaughterData
5 //
6 // Daughter decay information: Keep reference to original particle.
7 //
8 // Authors: J.Bendavid
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITANA_DATATREE_DAUGHTERDATA_H
12 #define MITANA_DATATREE_DAUGHTERDATA_H
13
14 #include "MitAna/DataTree/interface/Particle.h"
15 #include "MitAna/DataCont/interface/Ref.h"
16
17 namespace mithep
18 {
19 class DaughterData : public Particle
20 {
21 public:
22 DaughterData() {}
23 DaughterData(const Particle *orig) : fOriginal(orig) {}
24
25 Double_t Charge() const { return Original()->Charge(); }
26 Bool_t HasOriginal() const { return fOriginal.IsValid(); }
27 Bool_t HasOriginal(const Particle *p) const { return fOriginal.RefsObject(p); }
28 EObjType ObjType() const { return kDaughterData; }
29 const Particle *Original() const { return fOriginal.Obj(); }
30
31 // Some structural tools
32 void Mark(UInt_t i=1) const;
33
34 protected:
35 Ref<Particle> fOriginal; //reference to original particle
36
37 ClassDef(DaughterData, 1) // Daughter data class
38 };
39 }
40
41 //--------------------------------------------------------------------------------------------------
42 inline void mithep::DaughterData::Mark(UInt_t ib) const
43 {
44 // mark myself
45 mithep::DataObject::Mark(ib);
46 // mark my dependencies if they are there
47 if (fOriginal.IsValid())
48 fOriginal.Obj()->Mark(ib);
49 }
50 #endif