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

REROOT_Event.h

Go to the documentation of this file.
00001 // $ID:  REROOT_Event.h,v 1.2 2000/01/05 16:25 gmieg Exp $
00002 //
00003 // Define Class REROOT_Event -- Interacts with REROOT_Event Data Classes
00004 // Adapted from Matt Langston's STL based Event Class.  G. Irwin 12/96
00005 
00006 #ifndef REROOT_EVENT_H
00007 #define REROOT_EVENT_H
00008 
00009 #include <iosfwd>
00010 
00011 #include "TClonesArray.h"
00012 
00013 #include "REROOT_Classes/REROOT_DigitPln.h"
00014 #include "REROOT_Classes/REROOT_EmuDigit.h"
00015 #include "REROOT_Classes/REROOT_EmuHit.h"
00016 #include "REROOT_Classes/REROOT_EventHistory.h"
00017 #include "REROOT_Classes/REROOT_FLSDigiCell.h"
00018 #include "REROOT_Classes/REROOT_FLSDigiPln.h"
00019 #include "REROOT_Classes/REROOT_FLSDigit.h"
00020 #include "REROOT_Classes/REROOT_FLSDigiView.h"
00021 #include "REROOT_Classes/REROOT_FLSHit.h"
00022 #include "REROOT_Classes/REROOT_FluxInfo.h"
00023 #include "REROOT_Classes/REROOT_FluxWgt.h"
00024 #include "REROOT_Classes/REROOT_GAFKey.h"
00025 #include "REROOT_Classes/REROOT_HitPln.h"
00026 #include "REROOT_Classes/REROOT_LSTHit.h"
00027 #include "REROOT_Classes/REROOT_LSTProto.h"
00028 #include "REROOT_Classes/REROOT_LSTStrip.h"
00029 #include "REROOT_Classes/REROOT_LSTWire.h"
00030 #include "REROOT_Classes/REROOT_MuonTrkHeader.h"
00031 #include "REROOT_Classes/REROOT_MuonTrkPoint.h"
00032 #include "REROOT_Classes/REROOT_NeuKin.h"
00033 #include "REROOT_Classes/REROOT_NeuVtx.h"
00034 #include "REROOT_Classes/REROOT_PEArrival.h"
00035 #include "REROOT_Classes/REROOT_RecoMuon.h"
00036 #include "REROOT_Classes/REROOT_RecoShwDir.h"
00037 #include "REROOT_Classes/REROOT_RecoShwEnergy.h"
00038 #include "REROOT_Classes/REROOT_RecoVtx.h"
00039 #include "REROOT_Classes/REROOT_RPCHit.h"
00040 #include "REROOT_Classes/REROOT_StdHep.h"
00041 #include "REROOT_Classes/REROOT_StdHepHead.h"
00042 #include "REROOT_Classes/REROOT_TstHit.h"
00043 
00044 #include "REROOT_Classes/REROOT_Record.h"
00045 #include "REROOT_Classes/ADAMO_Shell.h"
00046 #include "REROOT_Classes/REROOT_Visitor.h"
00047 
00048 class REROOT_Event : public REROOT_Record
00049 {
00050 private:
00051   Int_t m_idcurgeom;                   // C Index of current REROOT_Geom
00052 
00053   TClonesArray   *m_digitplns;       //-> Ptr to static storage location
00054   TClonesArray   *m_emudigits;       //-> Ptr to static storage location
00055   TClonesArray   *m_emuhits;         //-> Ptr to static storage location
00056   TClonesArray   *m_eventhistorys;   //-> Ptr to static storage location
00057   TClonesArray   *m_flsdigicells;    //-> Ptr to static storage location
00058   TClonesArray   *m_flsdigiplns;     //-> Ptr to static storage location
00059   TClonesArray   *m_flsdigits;       //-> Ptr to static storage location
00060   TClonesArray   *m_flsdigiviews;    //-> Ptr to static storage location
00061   TClonesArray   *m_flshits;         //-> Ptr to static storage location
00062   TClonesArray   *m_fluxinfos;       //-> Ptr to static storage location
00063   TClonesArray   *m_fluxwgts;        //-> Ptr to static storage location
00064   TClonesArray   *m_gafkeys;         //-> Ptr to static storage location
00065   TClonesArray   *m_hitplns;         //-> Ptr to static storage location
00066   TClonesArray   *m_lsthits;         //-> Ptr to static storage location
00067   TClonesArray   *m_lstprotos;       //-> Ptr to static storage location
00068   TClonesArray   *m_lststrips;       //-> Ptr to static storage location
00069   TClonesArray   *m_lstwires;        //-> Ptr to static storage location
00070   TClonesArray   *m_muontrkheaders;  //-> Ptr to static storage location
00071   TClonesArray   *m_muontrkpoints;   //-> Ptr to static storage location
00072   TClonesArray   *m_neukins;         //-> Ptr to static storage location
00073   TClonesArray   *m_neuvtxs;         //-> Ptr to static storage location
00074   TClonesArray   *m_pearrivals;      //-> Ptr to static storage location
00075   TClonesArray   *m_recomuons;       //-> Ptr to static storage location
00076   TClonesArray   *m_recoshwdirs;     //-> Ptr to static storage location
00077   TClonesArray   *m_recoshwenergys;  //-> Ptr to static storage location
00078   TClonesArray   *m_recovtxs;        //-> Ptr to static storage location
00079   TClonesArray   *m_rpchits;         //-> Ptr to static storage location
00080   TClonesArray   *m_stdheps;         //-> Ptr to static storage location
00081   TClonesArray   *m_stdhepheads;     //-> Ptr to static storage location
00082   TClonesArray   *m_tsthits;         //-> Ptr to static storage location
00083 
00084   static TClonesArray   *s_digitplns;
00085   static TClonesArray   *s_emudigits;
00086   static TClonesArray   *s_emuhits;
00087   static TClonesArray   *s_eventhistorys;
00088   static TClonesArray   *s_flsdigicells;
00089   static TClonesArray   *s_flsdigiplns;
00090   static TClonesArray   *s_flsdigits;
00091   static TClonesArray   *s_flsdigiviews;
00092   static TClonesArray   *s_flshits;
00093   static TClonesArray   *s_fluxinfos;
00094   static TClonesArray   *s_fluxwgts;
00095   static TClonesArray   *s_gafkeys;
00096   static TClonesArray   *s_hitplns;
00097   static TClonesArray   *s_lsthits;
00098   static TClonesArray   *s_lstprotos;
00099   static TClonesArray   *s_lststrips;
00100   static TClonesArray   *s_lstwires;
00101   static TClonesArray   *s_muontrkheaders;
00102   static TClonesArray   *s_muontrkpoints;
00103   static TClonesArray   *s_neukins;
00104   static TClonesArray   *s_neuvtxs;
00105   static TClonesArray   *s_pearrivals;
00106   static TClonesArray   *s_recomuons;
00107   static TClonesArray   *s_recoshwdirs;
00108   static TClonesArray   *s_recoshwenergys;
00109   static TClonesArray   *s_recovtxs;
00110   static TClonesArray   *s_rpchits;
00111   static TClonesArray   *s_stdheps;
00112   static TClonesArray   *s_stdhepheads;
00113   static TClonesArray   *s_tsthits;
00114 
00115   static REROOT_Event *s_curevent;
00116 
00117   static Bool_t DigitPln_isWanted;
00118   static Bool_t EmuDigit_isWanted;
00119   static Bool_t EmuHit_isWanted;
00120   static Bool_t EventHistory_isWanted;
00121   static Bool_t FLSDigiCell_isWanted;
00122   static Bool_t FLSDigiPln_isWanted;
00123   static Bool_t FLSDigit_isWanted;
00124   static Bool_t FLSDigiView_isWanted;
00125   static Bool_t FLSHit_isWanted;
00126   static Bool_t FluxInfo_isWanted;
00127   static Bool_t FluxWgt_isWanted;
00128   static Bool_t GAFKey_isWanted;
00129   static Bool_t HitPln_isWanted;
00130   static Bool_t LSTHit_isWanted;
00131   static Bool_t LSTProto_isWanted;
00132   static Bool_t LSTStrip_isWanted;
00133   static Bool_t LSTWire_isWanted;
00134   static Bool_t MuonTrkHeader_isWanted;
00135   static Bool_t MuonTrkPoint_isWanted;
00136   static Bool_t NeuKin_isWanted;
00137   static Bool_t NeuVtx_isWanted;
00138   static Bool_t PEArrival_isWanted;
00139   static Bool_t RecoMuon_isWanted;
00140   static Bool_t RecoShwDir_isWanted;
00141   static Bool_t RecoShwEnergy_isWanted;
00142   static Bool_t RecoVtx_isWanted;
00143   static Bool_t RPCHit_isWanted;
00144   static Bool_t StdHepHead_isWanted;
00145   static Bool_t StdHep_isWanted;
00146   static Bool_t TstHit_isWanted;
00147 
00148 public:
00149   REROOT_Event();
00150  ~REROOT_Event();
00151 
00152   void init();
00153   void Clear(Option_t *option="");
00154   void fill_objects_from_GAF(ADAMO_Shell*);
00155 
00156   void Print(Option_t *option="") const;
00157 
00158   void Setidcurgeom(Int_t idcurgeom) {m_idcurgeom = idcurgeom;}
00159   Int_t idcurgeom() {return m_idcurgeom;}
00160 
00161   virtual void accept(REROOT_Visitor& v) {v.visit(this);}
00162 
00163   static void Set_curevent(REROOT_Event *revt) {s_curevent = revt;}
00164   static REROOT_Event *curevent() {return s_curevent;}
00165 
00166   static void set_DigitPln_isWanted(Bool_t lj) {DigitPln_isWanted = lj;}
00167   static void set_EmuDigit_isWanted(Bool_t lj) {EmuDigit_isWanted = lj;}
00168   static void set_EmuHit_isWanted(Bool_t lj)     {EmuHit_isWanted = lj;}
00169   static void set_EventHistory_isWanted(Bool_t lj)
00170                                            {EventHistory_isWanted = lj;}
00171   static void set_FLSDigiCell_isWanted(Bool_t lj)
00172                                             {FLSDigiCell_isWanted = lj;}
00173   static void set_FLSDigiPln_isWanted(Bool_t lj)
00174                                              {FLSDigiPln_isWanted = lj;}
00175   static void set_FLSDigit_isWanted(Bool_t lj) {FLSDigit_isWanted = lj;}
00176   static void set_FLSDigiView_isWanted(Bool_t lj)
00177                                             {FLSDigiView_isWanted = lj;}
00178   static void set_FLSHit_isWanted(Bool_t lj)     {FLSHit_isWanted = lj;}
00179   static void set_FluxInfo_isWanted(Bool_t lj) {FluxInfo_isWanted = lj;}
00180   static void set_FluxWgt_isWanted(Bool_t lj)   {FluxWgt_isWanted = lj;}
00181   static void set_GAFKey_isWanted(Bool_t lj)     {GAFKey_isWanted = lj;}
00182   static void set_HitPln_isWanted(Bool_t lj)     {HitPln_isWanted = lj;}
00183   static void set_LSTHit_isWanted(Bool_t lj)     {LSTHit_isWanted = lj;}
00184   static void set_LSTProto_isWanted(Bool_t lj) {LSTProto_isWanted = lj;}
00185   static void set_LSTStrip_isWanted(Bool_t lj) {LSTStrip_isWanted = lj;}
00186   static void set_LSTWire_isWanted(Bool_t lj)   {LSTWire_isWanted = lj;}
00187   static void set_MuonTrkHeader_isWanted(Bool_t lj)
00188                                           {MuonTrkHeader_isWanted = lj;}
00189   static void set_MuonTrkPoint_isWanted(Bool_t lj)
00190                                            {MuonTrkPoint_isWanted = lj;}
00191   static void set_NeuKin_isWanted(Bool_t lj)     {NeuKin_isWanted = lj;}
00192   static void set_NeuVtx_isWanted(Bool_t lj)     {NeuVtx_isWanted = lj;}
00193   static void set_PEArrival_isWanted(Bool_t lj)
00194                                               {PEArrival_isWanted = lj;}
00195   static void set_RecoMuon_isWanted(Bool_t lj) {RecoMuon_isWanted = lj;}
00196   static void set_RecoShwDir_isWanted(Bool_t lj)
00197                                              {RecoShwDir_isWanted = lj;}
00198   static void set_RecoShwEnergy_isWanted(Bool_t lj)
00199                                           {RecoShwEnergy_isWanted = lj;}
00200   static void set_RecoVtx_isWanted(Bool_t lj)   {RecoVtx_isWanted = lj;}
00201   static void set_RPCHit_isWanted(Bool_t lj)     {RPCHit_isWanted = lj;}
00202   static void set_StdHep_isWanted(Bool_t lj)     {StdHep_isWanted = lj;}
00203   static void set_StdHepHead_isWanted(Bool_t lj)
00204                                                {StdHepHead_isWanted=lj;}
00205   static void set_TstHit_isWanted(Bool_t lj)       {TstHit_isWanted=lj;}
00206 
00207   static Bool_t get_DigitPln_isWanted()      {return DigitPln_isWanted;}
00208   static Bool_t get_EmuDigit_isWanted()      {return EmuDigit_isWanted;}
00209   static Bool_t get_EmuHit_isWanted()          {return EmuHit_isWanted;}
00210   static Bool_t get_EventHistory_isWanted()
00211                                          {return EventHistory_isWanted;}
00212   static Bool_t get_FLSDigiCell_isWanted(){return FLSDigiCell_isWanted;}
00213   static Bool_t get_FLSDigiPln_isWanted()  {return FLSDigiPln_isWanted;}
00214   static Bool_t get_FLSDigit_isWanted()      {return FLSDigit_isWanted;}
00215   static Bool_t get_FLSDigiView_isWanted(){return FLSDigiView_isWanted;}
00216   static Bool_t get_FLSHit_isWanted()          {return FLSHit_isWanted;}
00217   static Bool_t get_FluxInfo_isWanted()      {return FluxInfo_isWanted;}
00218   static Bool_t get_FluxWgt_isWanted()        {return FluxWgt_isWanted;}
00219   static Bool_t get_GAFKey_isWanted()          {return GAFKey_isWanted;}
00220   static Bool_t get_HitPln_isWanted()          {return HitPln_isWanted;}
00221   static Bool_t get_LSTHit_isWanted()          {return LSTHit_isWanted;}
00222   static Bool_t get_LSTProto_isWanted()      {return LSTProto_isWanted;}
00223   static Bool_t get_LSTStrip_isWanted()      {return LSTStrip_isWanted;}
00224   static Bool_t get_LSTWire_isWanted()        {return LSTWire_isWanted;}
00225   static Bool_t get_MuonTrkHeader_isWanted()
00226                                         {return MuonTrkHeader_isWanted;}
00227   static Bool_t get_MuonTrkPoint_isWanted()
00228                                          {return MuonTrkPoint_isWanted;}
00229   static Bool_t get_NeuKin_isWanted()          {return NeuKin_isWanted;}
00230   static Bool_t get_NeuVtx_isWanted()          {return NeuVtx_isWanted;}
00231   static Bool_t get_RecoMuon_isWanted()      {return RecoMuon_isWanted;}
00232   static Bool_t get_RecoShwDir_isWanted()  {return RecoShwDir_isWanted;}
00233   static Bool_t get_RecoShwEnergy_isWanted()
00234                                         {return RecoShwEnergy_isWanted;}
00235   static Bool_t get_RecoVtx_isWanted()        {return RecoVtx_isWanted;}
00236   static Bool_t get_RPCHit_isWanted()          {return RPCHit_isWanted;}
00237   static Bool_t get_StdHep_isWanted()          {return StdHep_isWanted;}
00238   static Bool_t get_StdHepHead_isWanted()  {return StdHepHead_isWanted;}
00239   static Bool_t get_TstHit_isWanted()          {return TstHit_isWanted;}
00240 
00241   typedef Int_t        DigitPln_list_size_type;
00242   typedef Int_t        EmuDigit_list_size_type;
00243   typedef Int_t        EmuHit_list_size_type;
00244   typedef Int_t        EventHistory_list_size_type;
00245   typedef Int_t        FLSDigiCell_list_size_type;
00246   typedef Int_t        FLSDigiPln_list_size_type;
00247   typedef Int_t        FLSDigit_list_size_type;
00248   typedef Int_t        FLSDigiView_list_size_type;
00249   typedef Int_t        FLSHit_list_size_type;
00250   typedef Int_t        FluxInfo_list_size_type;
00251   typedef Int_t        FluxWgt_list_size_type;
00252   typedef Int_t        GAFKey_list_size_type;
00253   typedef Int_t        HitPln_list_size_type;
00254   typedef Int_t        LSTHit_list_size_type;
00255   typedef Int_t        LSTProto_list_size_type;
00256   typedef Int_t        LSTStrip_list_size_type;
00257   typedef Int_t        LSTWire_list_size_type;
00258   typedef Int_t        MuonTrkHeader_list_size_type;
00259   typedef Int_t        MuonTrkPoint_list_size_type;
00260   typedef Int_t        NeuKin_list_size_type;
00261   typedef Int_t        NeuVtx_list_size_type;
00262   typedef Int_t        PEArrival_list_size_type;
00263   typedef Int_t        RecoMuon_list_size_type;
00264   typedef Int_t        RecoShwDir_list_size_type;
00265   typedef Int_t        RecoShwEnergy_list_size_type;
00266   typedef Int_t        RecoVtx_list_size_type;
00267   typedef Int_t        RPCHit_list_size_type;
00268   typedef Int_t        StdHep_list_size_type;
00269   typedef Int_t        StdHepHead_list_size_type;
00270   typedef Int_t        TstHit_list_size_type;
00271 
00272   DigitPln_list_size_type       n_digitplns()        const;
00273   EmuDigit_list_size_type       n_emudigits()        const;
00274   EmuHit_list_size_type         n_emuhits()          const;
00275   EventHistory_list_size_type   n_eventhistorys()    const;
00276   FLSDigiCell_list_size_type    n_flsdigicells()     const;
00277   FLSDigiPln_list_size_type     n_flsdigiplns()      const;
00278   FLSDigit_list_size_type       n_flsdigits()        const;
00279   FLSDigiView_list_size_type    n_flsdigiviews()     const;
00280   FLSHit_list_size_type         n_flshits()          const;
00281   FluxInfo_list_size_type       n_fluxinfos()        const;
00282   FluxWgt_list_size_type        n_fluxwgts()         const;
00283   GAFKey_list_size_type         n_gafkeys()          const;
00284   HitPln_list_size_type         n_hitplns()          const;
00285   LSTHit_list_size_type         n_lsthits()          const;
00286   LSTProto_list_size_type       n_lstprotos()        const;
00287   LSTStrip_list_size_type       n_lststrips()        const;
00288   LSTWire_list_size_type        n_lstwires()         const;
00289   MuonTrkHeader_list_size_type  n_muontrkheaders()   const;
00290   MuonTrkPoint_list_size_type   n_muontrkpoints()    const;
00291   NeuKin_list_size_type         n_neukins()          const;
00292   NeuVtx_list_size_type         n_neuvtxs()          const;
00293   PEArrival_list_size_type      n_pearrivals()       const;
00294   RecoMuon_list_size_type       n_recomuons()        const;
00295   RecoShwDir_list_size_type     n_recoshwdirs()      const;
00296   RecoShwEnergy_list_size_type  n_recoshwenergys()   const;
00297   RecoVtx_list_size_type        n_recovtxs()         const;
00298   RPCHit_list_size_type         n_rpchits()          const;
00299   StdHep_list_size_type         n_stdheps()          const;
00300   StdHepHead_list_size_type     n_stdhepheads()      const;
00301   TstHit_list_size_type         n_tsthits()          const;
00302 
00303   const TClonesArray *digitplns()      const {return m_digitplns;}
00304   const TClonesArray *emudigits()      const {return m_emudigits;}
00305   const TClonesArray *emuhits()        const {return m_emuhits;}
00306   const TClonesArray *eventhistorys()  const {return m_eventhistorys;}
00307   const TClonesArray *flsdigicells()   const {return m_flsdigicells;}
00308   const TClonesArray *flsdigiplns()    const {return m_flsdigiplns;}
00309   const TClonesArray *flsdigits()      const {return m_flsdigits;}
00310   const TClonesArray *flsdigiviews()   const {return m_flsdigiviews;}
00311   const TClonesArray *flshits()        const {return m_flshits;}
00312   const TClonesArray *fluxinfos()      const {return m_fluxinfos;}
00313   const TClonesArray *fluxwgts()       const {return m_fluxwgts;}
00314   const TClonesArray *gafkeys()        const {return m_gafkeys;}
00315   const TClonesArray *hitplns()        const {return m_hitplns;}
00316   const TClonesArray *lsthits()        const {return m_lsthits;}
00317   const TClonesArray *lstprotos()      const {return m_lstprotos;}
00318   const TClonesArray *lststrips()      const {return m_lststrips;}
00319   const TClonesArray *lstwires()       const {return m_lstwires;}
00320   const TClonesArray *muontrkheaders() const {return m_muontrkheaders;}
00321   const TClonesArray *muontrkpoints()  const {return m_muontrkpoints;}
00322   const TClonesArray *neukins()        const {return m_neukins;}
00323   const TClonesArray *neuvtxs()        const {return m_neuvtxs;}
00324   const TClonesArray *pearrivals()     const {return m_pearrivals;}
00325   const TClonesArray *recomuons()      const {return m_recomuons;}
00326   const TClonesArray *recoshwdirs()    const {return m_recoshwdirs;}
00327   const TClonesArray *recoshwenergys() const {return m_recoshwenergys;}
00328   const TClonesArray *recovtxs()       const {return m_recovtxs;}
00329   const TClonesArray *rpchits()        const {return m_rpchits;}
00330   const TClonesArray *stdheps()        const {return m_stdheps;}
00331   const TClonesArray *stdhepheads()    const {return m_stdhepheads;}
00332   const TClonesArray *tsthits()        const {return m_tsthits;}
00333 
00334 ClassDef(REROOT_Event,2)                           // REROOT_Event Class
00335 
00336 };
00337 
00338 #endif // REROOT_EVENT_H

Generated on Fri Mar 28 15:39:12 2008 for loon by  doxygen 1.3.9.1