Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

FillBasic.h

Go to the documentation of this file.
00001 #ifndef ANP_FILLBASIC_H
00002 #define ANP_FILLBASIC_H
00003 
00004 // $Id: FillBasic.h,v 1.10 2008/02/09 19:15:19 rustem Exp $
00005 //
00006 // Helper class that fills basic reconstructed info such as
00007 // number of strips and planes, pulse heigh, vertex position, etc.
00008 //
00009 
00010 // Local
00011 #include "PhysicsNtuple/Basic.h"
00012 #include "PhysicsNtuple/Vertex.h"
00013 
00014 class NtpSREvent;
00015 class NtpSRPlane;
00016 class NtpSRShower;
00017 class NtpSRTrack;
00018 class NtpSRStrip;
00019 class NtpSRStripPulseHeight;
00020 class NtpSRVertex;
00021 class NtpStRecord;
00022 class Registry;
00023 class TObject;
00024 
00025 namespace Anp
00026 {
00027    class FillBasic
00028    {
00029       
00030    public:
00031       
00032       FillBasic();
00033       ~FillBasic();
00034 
00035       void Config(const Registry &reg);
00036       
00037       bool Fill(const NtpStRecord &ntprec, const NtpSREvent  &record);
00038       bool Fill(const NtpStRecord &ntprec, const NtpSRShower &record);
00039       bool Fill(const NtpStRecord &ntprec, const NtpSRTrack  &record);
00040       
00041       const Basic  GetBasic()  const;
00042       const Vertex GetBegVtx() const;
00043       const Vertex GetEndVtx() const;
00044 
00045    private:
00046 
00047       const Vertex Get(const NtpSRVertex &vtx, bool isfid_) const;
00048 
00049       bool Check(const Basic &basic, const NtpSRPlane &plane) const;
00050 
00051       bool Fill(Basic &basic, const NtpSRStripPulseHeight &ph) const;
00052       
00053       const Basic Get(const NtpStRecord &record, const int *index_array, int nstrip) const;
00054    
00055    private:
00056 
00057       bool fCheck;
00058       double fTrackZOffset;
00059 
00060       Basic  fBasic;
00061       Vertex fBegVtx;
00062       Vertex fEndVtx;
00063    };
00064 
00065    NtpSRStrip* GetSRStrip(const NtpStRecord &ntpr, int index);
00066 
00067    void PrintStrips(const NtpStRecord &record, const int *index_array, int nstrip);
00068 
00069    //
00070    // Inlined member functions
00071    //
00072    inline const Basic  FillBasic::GetBasic()  const { return fBasic; }
00073    inline const Vertex FillBasic::GetBegVtx() const { return fBegVtx; }
00074    inline const Vertex FillBasic::GetEndVtx() const { return fEndVtx; }
00075 }
00076 
00077 #endif

Generated on Mon Feb 15 11:06:41 2010 for loon by  doxygen 1.3.9.1