ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/DaughterData.h
Revision: 1.9
Committed: Wed Mar 28 12:15:34 2012 UTC (13 years, 1 month ago) by paus
Content type: text/plain
Branch: MAIN
Changes since 1.8: +13 -1 lines
Log Message:
Enable skimming.

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2 paus 1.9 // $Id: DaughterData.h,v 1.8 2009/07/13 11:00:25 loizides Exp $
3 bendavid 1.1 //
4     // DaughterData
5     //
6 loizides 1.5 // Daughter decay information: Keep reference to original particle.
7 bendavid 1.1 //
8     // Authors: J.Bendavid
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef MITANA_DATATREE_DAUGHTERDATA_H
12     #define MITANA_DATATREE_DAUGHTERDATA_H
13    
14 bendavid 1.2 #include "MitAna/DataTree/interface/Particle.h"
15 bendavid 1.6 #include "MitAna/DataCont/interface/Ref.h"
16 bendavid 1.1
17     namespace mithep
18     {
19 bendavid 1.2 class DaughterData : public Particle
20 bendavid 1.1 {
21     public:
22     DaughterData() {}
23 bendavid 1.6 DaughterData(const Particle *orig) : fOriginal(orig) {}
24 bendavid 1.1
25 bendavid 1.6 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 bendavid 1.1
31 paus 1.9 // Some structural tools
32     void Mark() const;
33    
34 bendavid 1.1 protected:
35 bendavid 1.6 Ref<Particle> fOriginal; //reference to original particle
36 bendavid 1.1
37 loizides 1.5 ClassDef(DaughterData, 1) // Daughter data class
38 bendavid 1.1 };
39     }
40 paus 1.9
41     //--------------------------------------------------------------------------------------------------
42     inline void mithep::DaughterData::Mark() const
43     {
44     // mark myself
45     mithep::DataObject::Mark();
46     // mark my dependencies if they are there
47     Original()->Mark();
48     }
49 bendavid 1.1 #endif