Event.hpp

Go to the documentation of this file.
00001 #ifndef EVENT_HPP__
00002 #define EVENT_HPP__
00003 
00004 #include "cafe/EventBase.hpp"
00005 
00006 // Global 
00007 #include "tmb_tree/TMBGlobal.hpp"
00008 #include "tmb_tree/TMBHistory.hpp"
00009 #include "tmb_tree/TMBTrigger.hpp"
00010 #include "tmb_tree/TMBEventFlags.hpp"
00011 
00012 // Reco
00013 #include "tmb_tree/TMBMuon.hpp"
00014 #include "tmb_tree/TMBEMCluster.hpp"
00015 #include "tmb_tree/TMBJet.hpp"
00016 #include "tmb_tree/TMBMet.hpp"
00017 #include "tmb_tree/TMBParticleJet.hpp"
00018 #include "tmb_tree/TMBMetEx.hpp"
00019 #include "tmb_tree/TMBTrack.hpp"
00020 #include "tmb_tree/TMBTau.hpp"
00021 #include "tmb_tree/TMBIsoTrack.hpp"
00022 #include "tmb_tree/TMBPrimaryVertex.hpp"
00023 #include "tmb_tree/TMBLeBob.hpp"
00024 #include "tmb_tree/TMBTrackCal.hpp"
00025 #include "tmb_tree/TMBTrackCalJet.hpp"
00026 
00027 #include "tmb_tree/TMBCps.hpp"
00028 #include "tmb_tree/TMBFps.hpp"
00029 
00030 // B-Tagging
00031 #include "tmb_tree/TMBBTag.hpp"
00032 #include "tmb_tree/TMBBTagSLT.hpp"
00033 #include "tmb_tree/TMBBTagJLIP.hpp"
00034 #include "tmb_tree/TMBBTagSVT.hpp"
00035 #include "tmb_tree/TMBBTagNN.hpp"
00036 
00037 // Compact
00038 #include "tmb_tree/TMBTrigBits.hpp"
00039 #include "tmb_tree/TMBHiPt.hpp"
00040 
00041 // MC
00042 #include "tmb_tree/TMBMCpart.hpp"
00043 #include "tmb_tree/TMBMCvtx.hpp"
00044 #include "tmb_tree/TMBMCevtInfo.hpp"
00045 
00046 // Trigger
00047 
00048 // L1
00049 #include "tmb_tree/TMBL1AndOr.hpp"
00050 #include "tmb_tree/TMBL1Names.hpp"
00051 #include "tmb_tree/TMBL2Names.hpp"
00052 #include "tmb_tree/TMBL1Cal.hpp"
00053 #include "tmb_tree/TMBL1CalTile.hpp"
00054 #include "tmb_tree/TMBL1CalTower.hpp"
00055 #include "tmb_tree/TMBL1CTT.hpp"
00056 #include "tmb_tree/TMBL1Muon.hpp"
00057 #include "tmb_tree/TMBL1Track.hpp"
00058 #include "tmb_tree/TMBL1toL2CTT.hpp"
00059 
00060 // L2 Preprocessor objects
00061 #include "tmb_tree/TMBL2CPS.hpp"
00062 #include "tmb_tree/TMBL2EM.hpp"
00063 #include "tmb_tree/TMBL2FPS.hpp"
00064 #include "tmb_tree/TMBL2Muon.hpp"
00065 #include "tmb_tree/TMBL2Track.hpp"
00066 #include "tmb_tree/TMBL2Jet.hpp"
00067 #include "tmb_tree/TMBL2MEt.hpp"
00068 
00069 // L2 Global objects
00070 #include "tmb_tree/TMBL2GblEM.hpp"
00071 #include "tmb_tree/TMBL2GblHt.hpp"
00072 #include "tmb_tree/TMBL2GblInvMass.hpp"
00073 #include "tmb_tree/TMBL2GblJet.hpp"
00074 #include "tmb_tree/TMBL2GblMEt.hpp"
00075 #include "tmb_tree/TMBL2GblMJt.hpp"
00076 #include "tmb_tree/TMBL2GblMuon.hpp"
00077 #include "tmb_tree/TMBL2GblTau.hpp"
00078 #include "tmb_tree/TMBL2GblTrack.hpp"
00079 #include "tmb_tree/TMBL2GblTransMass.hpp"
00080 
00081 // L3
00082 #include "tmb_tree/TMBL3BTagIP.hpp"
00083 #include "tmb_tree/TMBL3CFTVtx.hpp"
00084 #include "tmb_tree/TMBL3Ele.hpp"
00085 #include "tmb_tree/TMBL3IPTrack.hpp"
00086 #include "tmb_tree/TMBL3Isolation.hpp"
00087 #include "tmb_tree/TMBL3Jet.hpp"
00088 #include "tmb_tree/TMBL3MEt.hpp"
00089 #include "tmb_tree/TMBL3Muon.hpp"
00090 #include "tmb_tree/TMBL3Photon.hpp"
00091 #include "tmb_tree/TMBL3Tau.hpp"
00092 #include "tmb_tree/TMBL3Track.hpp"
00093 
00094 // Detector
00095 #include "tmb_tree/TMBCalNada.hpp"
00096 #include "tmb_tree/TMBCellContainer.hpp"
00097 #include "tmb_tree/TMBCps.hpp"
00098 #include "tmb_tree/TMBCpsDigi.hpp"
00099 #include "tmb_tree/TMBFps.hpp"
00100 #include "tmb_tree/TMBFpsData.hpp"
00101 #include "tmb_tree/TMBFpd.hpp"
00102 #include "tmb_tree/TMBFPDTrack.hpp"
00103 #include "tmb_tree/TMBTdc.hpp" 
00104 
00105 
00106 
00107 #include "tmb_tree/TMBLum.hpp"
00108 #include "tmb_tree/TMBLumV.hpp"
00109 
00110 #include "tmb_tree/TMBSimCAEP.hpp"
00111 
00112 // Weights
00113 #include "tmb_tree/TMBHiPtWeight.hpp"
00114 #include "cafe/EventWeight.hpp"
00115 
00116 namespace cafe {
00117 
00126     class Event : public EventBase {
00127     public:
00128         Event();
00129 
00131 
00132 
00134 
00135         bool isMC() const;
00136         bool isRun2b() const;
00137         bool isRun2a() const {return !isRun2b();}
00138 
00140         const TMBGlobal *getGlobal(const Variables& vars = cafe::detail::empty) const 
00141         { 
00142             return get<TMBGlobal>("Global", vars); 
00143         }
00144 
00146         const Collection<TMBHistory> getHistory(const Variables& vars = cafe::detail::empty) const 
00147         { 
00148             return getCollection<TMBHistory>("History"); 
00149         }
00150 
00152         const TMBEventFlags *getEventFlags(const Variables& vars = cafe::detail::empty) const
00153         {
00154             return get<TMBEventFlags>("EventFlags", vars);
00155         }
00156 
00158         
00159 
00161 
00163 
00165         Collection<TMBMuon> getMuons(const Variables& vars = cafe::detail::empty)    const 
00166         { 
00167             return getCollection<TMBMuon>("Muon", vars); 
00168         }
00169 
00172         Collection<TMBEMCluster> getEM(const std::string& branchName, const Variables& vars = cafe::detail::empty)    const 
00173         { 
00174             return getCollection<TMBEMCluster>(branchName, vars); 
00175         }
00176 
00178         Collection<TMBEMCluster> getEMscone(const Variables& vars = cafe::detail::empty) const
00179         { 
00180             return getEM("EMscone", vars); 
00181         }
00182 
00184         Collection<TMBEMCluster> getEMcnn(const Variables& vars = cafe::detail::empty) const
00185         { 
00186             return getEM("EMcnn", vars);
00187         }
00188 
00190         Collection<TMBJet> getJets(const std::string &branchName, const Variables& vars = cafe::detail::empty) const
00191         {
00192             return getCollection<TMBJet>(branchName, vars);
00193         }
00194 
00196         Collection<TMBJet> getJCCA(const Variables& vars = cafe::detail::empty) const
00197         {
00198             return getJets("JCCA", vars);
00199         }
00200 
00202         Collection<TMBJet> getJCCB(const Variables& vars = cafe::detail::empty) const
00203         {
00204             return getJets("JCCB", vars);
00205         }
00206 
00208         Collection<TMBLeBob> getLeBob(const Variables& vars = cafe::detail::empty)   const 
00209         { 
00210             return getCollection<TMBLeBob>("LeBob", vars); 
00211         }
00213         const TMBLeBob* getTMBLeBob(const std::string &branchName, const Variables& vars = cafe::detail::empty) const
00214         {
00215             Collection<TMBLeBob> lebobs=getLeBob(vars);
00216             int nsize=lebobs.size();
00217             for(int i=0; i<nsize; ++i){
00218               if(std::string(lebobs[i].algoname())==branchName) return &lebobs[i];
00219             }
00220             return 0;
00221         }
00223         const TMBLeBob* getJCCALeBob(const Variables& vars = cafe::detail::empty) const
00224         {
00225             return getTMBLeBob("JCCA", vars);
00226         }
00227 
00229         const TMBLeBob* getJCCBLeBob(const Variables& vars = cafe::detail::empty) const
00230         {
00231             return getTMBLeBob("JCCB", vars);
00232         }
00233 
00235         Collection<TMBParticleJet> 
00236         getParticleJets(const std::string &branchName, const Variables& vars = cafe::detail::empty) const
00237         {
00238             return getCollection<TMBParticleJet>(branchName, vars);
00239         }
00240         
00242         Collection<TMBParticleJet> getParticlesJCCA(const Variables& vars = cafe::detail::empty) const
00243         {
00244             return getParticleJets("particlesJCCA", vars);
00245         }
00246         
00248         Collection<TMBParticleJet> getParticlesJCCB(const Variables& vars = cafe::detail::empty) const
00249         {
00250             return getParticleJets("particlesJCCB", vars);
00251         }
00252 
00254         Collection<TMBTrack> getTracks(const Variables& vars = cafe::detail::empty)   const 
00255         { 
00256             return getCollection<TMBTrack>("Track", vars); 
00257         }
00258 
00260         Collection<TMBIsoTrack> getIsoTracks(const Variables& vars = cafe::detail::empty)   const 
00261         { 
00262             return getCollection<TMBIsoTrack>("IsoTrack", vars); 
00263         }
00264 
00266         Collection<TMBTau> getTaus(const Variables& vars = cafe::detail::empty) const
00267         {
00268             return getCollection<TMBTau>("Tau", vars);
00269         }
00270         
00272         Collection<TMBPrimaryVertex> getPrimaryVertices(const Variables& vars = cafe::detail::empty) const 
00273         { 
00274             return getCollection<TMBPrimaryVertex>("PrimaryVertex", vars); 
00275         }
00276         
00277 
00279         Collection<TMBPrimaryVertex> getPrimaryVertices(const std::string& type, const Variables& vars = cafe::detail::empty) const 
00280         { 
00281             return getCollection<TMBPrimaryVertex>("PrimaryVertex_" + type, vars); 
00282         }
00283         
00284 
00286         Collection<TMBTrackCal> getTrackCals(const Variables& vars = cafe::detail::empty) const
00287         {
00288             return  getCollection<TMBTrackCal>("TrackCal", vars);
00289         }
00290 
00292         Collection<TMBTrackCalJet> getTrackCalJCCA(const Variables& vars = cafe::detail::empty) const
00293         {
00294             return  getCollection<TMBTrackCalJet>("TrackCalJet_JCCA", vars);
00295         }
00296 
00298         Collection<TMBTrackCalJet> getTrackCalJCCB(const Variables& vars = cafe::detail::empty) const
00299         {
00300             return  getCollection<TMBTrackCalJet>("TrackCalJet_JCCB", vars);
00301         }
00302 
00304         const TMBMet  *getMet(const Variables& vars = cafe::detail::empty) const     
00305         { 
00306             return  get<TMBMet>("Met", vars); 
00307         }
00308 
00310         const TMBMetEx  *getMetEx(const Variables& vars = cafe::detail::empty) const     
00311         { 
00312             return  get<TMBMetEx>("MetEx", vars); 
00313         }
00314 
00316         Collection<TMBCps> getCPS(const Variables& vars = cafe::detail::empty) const
00317         {
00318             return getCollection<TMBCps>("Cps", vars);
00319         }
00320 
00322         Collection<TMBFps> getFPS(const Variables& vars = cafe::detail::empty) const
00323         {
00324             return getCollection<TMBFps>("Fps", vars);
00325         }
00326 
00328         Collection<TMBFpd> getFPD(const Variables& vars = cafe::detail::empty) const
00329         {
00330             return getCollection<TMBFpd>("Fpd", vars);
00331         }
00332 
00334 
00339 
00341 
00342 
00343         Collection<TMBBTag> getCSIP(const std::string& jetAlgo,
00344                                      const std::string& qual, const Variables& vars = cafe::detail::empty)
00345         {
00346             return getCollection<TMBBTag>("BTag_" + jetAlgo + 
00347                                           "_CSIP_" + qual, vars);
00348         }
00349                                     
00350 
00351         Collection<TMBBTagSLT> getSLT(const std::string& jetAlgo,
00352                                       const std::string& qual, const Variables& vars = cafe::detail::empty)
00353         {
00354             return getCollection<TMBBTagSLT>("BTag_" + jetAlgo + 
00355                                           "_SLT_" + qual, vars);
00356         }
00357                                     
00358 
00359         Collection<TMBBTagJLIP> getJLIP(const std::string& jetAlgo,
00360                                         const std::string& qual, const Variables& vars = cafe::detail::empty)
00361         {
00362             return getCollection<TMBBTagJLIP>("BTag_" + jetAlgo + 
00363                                               "_JLIP_" + qual, vars);
00364         }
00365 
00366         Collection<TMBBTagSVT> getSVT(const std::string& jetAlgo,
00367                                       const std::string& qual, const Variables& vars = cafe::detail::empty)
00368         {
00369             return getCollection<TMBBTagSVT>("BTag_" + jetAlgo + 
00370                                              "_SVT_" + qual, vars);
00371         }
00372 
00373                 Collection<TMBBTagNN> getNN(const std::string& jetAlgo,
00374                                       const std::string& qual, const Variables& vars = cafe::detail::empty)
00375         {
00376             return getCollection<TMBBTagNN>("BTag_" + jetAlgo + 
00377                                              "_NN_" + qual, vars);
00378         }
00379 
00381 
00383 
00384 
00386         const TMBMCevtInfo *getMCEventInfo(const Variables& vars = cafe::detail::empty) const
00387         {
00388             return get<TMBMCevtInfo>("MCevtInfo", vars);
00389         }
00390 
00392         Collection<TMBMCvtx> getMCVertices(const Variables& vars = cafe::detail::empty) const
00393         {
00394             return getCollection<TMBMCvtx> ("MCvtx", vars);
00395         }
00396         
00398         Collection<TMBMCpart> getMCParticles(const Variables& vars = cafe::detail::empty) const
00399         {
00400             return getCollection<TMBMCpart> ("MCpart", vars);
00401         }
00402 
00404 
00406         
00408 
00410         Collection<TMBTrigger> getTriggers(const Variables& vars = cafe::detail::empty) const
00411         {
00412             return  getCollection<TMBTrigger>("Trigger", vars);
00413         }
00414 
00415 
00417         const TMBTrigBits *getTrigBits(const Variables& vars = cafe::detail::empty) const
00418         {
00419             return get<TMBTrigBits>("TrigBits", vars);
00420         }
00421 
00423         const TMBL1AndOr *getL1AndOr(const Variables& vars = cafe::detail::empty) const
00424         {
00425             return get<TMBL1AndOr>("L1AndOr", vars);
00426         }
00427 
00429         const TMBL1Names *getL1Names(const Variables& vars = cafe::detail::empty) const
00430         {
00431             return get<TMBL1Names>("L1Names", vars);
00432         }
00433         
00435         const TMBL2Names *getL2Names(const Variables& vars = cafe::detail::empty) const
00436         {
00437             return get<TMBL2Names>("L2Names", vars);
00438         }
00439 
00441         const TMBL1Cal *getL1Cal(const Variables& vars = cafe::detail::empty) const
00442         {
00443             return get<TMBL1Cal>("L1Cal", vars);
00444         }
00445 
00446 
00448         Collection<TMBL1CalTile> getL1CalTiles(const Variables& vars = cafe::detail::empty) const
00449         {
00450             return getCollection<TMBL1CalTile> ("L1CalTiles", vars);
00451         }
00452 
00454         Collection<TMBL1CalTower> getL1CalTotalTowers(const Variables& vars = cafe::detail::empty) const
00455         {
00456             return getCollection<TMBL1CalTower> ("L1CalTotalTowers", vars);
00457         }
00458 
00460         Collection<TMBL1CalTower> getL1CalEMTowers(const Variables& vars = cafe::detail::empty) const
00461         {
00462             return getCollection<TMBL1CalTower> ("L1CalEMTowers", vars);
00463         }
00464 
00466         const TMBL1Muon *getL1Muon(const Variables& vars = cafe::detail::empty) const
00467         {
00468             return get<TMBL1Muon>("L1Muon", vars);
00469         }
00470 
00472         const TMBL1CTT *getL1CTT(const Variables& vars = cafe::detail::empty) const
00473         {
00474             return get<TMBL1CTT>("L1CTT", vars);
00475         }
00476 
00478         Collection<TMBL1toL2CTT> getL1toL2CTT(const Variables& vars = cafe::detail::empty) const
00479         {
00480             return getCollection<TMBL1toL2CTT>("L1toL2CTT", vars);
00481         }
00482 
00484         Collection<TMBL1Track> getL1Tracks(const Variables& vars = cafe::detail::empty) const
00485         {
00486             return getCollection<TMBL1Track> ("L1Track", vars);
00487         }
00488 
00489 
00491         Collection<TMBL2CPS> getL2CPSs(const Variables& vars = cafe::detail::empty) const
00492         {
00493             return getCollection<TMBL2CPS> ("L2CPS", vars);
00494         }
00495 
00497         Collection<TMBL2EM> getL2EMs(const Variables& vars = cafe::detail::empty) const
00498         {
00499             return getCollection<TMBL2EM> ("L2EM", vars);
00500         }
00501 
00503         Collection<TMBL2Muon> getL2Muons(const Variables& vars = cafe::detail::empty) const
00504         {
00505             return getCollection<TMBL2Muon> ("L2Muon", vars);
00506         }
00507 
00509         Collection<TMBL2Jet> getL2Jets(const Variables& vars = cafe::detail::empty) const
00510         {
00511             return getCollection<TMBL2Jet> ("L2Jet", vars);
00512         }
00513 
00515         Collection<TMBL2Track> getL2STTPT(const Variables& vars = cafe::detail::empty) const
00516         {
00517             return getCollection<TMBL2Track> ("STTPT", vars);
00518         }
00519 
00521         Collection<TMBL2Track> getL2STTIP(const Variables& vars = cafe::detail::empty) const
00522         {
00523             return getCollection<TMBL2Track> ("STTIP", vars);
00524         }
00525 
00527         Collection<TMBL2Track> getL2CTT(const Variables& vars = cafe::detail::empty) const
00528         {
00529             return getCollection<TMBL2Track> ("CTT", vars);
00530         }
00531 
00533         Collection<TMBL2GblJet> getL2GblJets(const Variables& vars = cafe::detail::empty) const
00534         {
00535             return getCollection<TMBL2GblJet> ("L2GblJet", vars);
00536         }
00537 
00539         Collection<TMBL2GblEM> getL2GblEMs(const Variables& vars = cafe::detail::empty) const
00540         {
00541             return getCollection<TMBL2GblEM> ("L2GblEM", vars);
00542         }
00543 
00545         Collection<TMBL2GblMuon> getL2GblMuons(const Variables& vars = cafe::detail::empty) const
00546         {
00547             return getCollection<TMBL2GblMuon> ("L2GblMuon", vars);
00548         }
00549 
00551         Collection<TMBL2GblTrack> getL2GblTracks(const Variables& vars = cafe::detail::empty) const
00552         {
00553             return getCollection<TMBL2GblTrack> ("L2GblTrack", vars);
00554         }
00555 
00557         Collection<TMBL2GblInvMass> getL2GblInvMass(const Variables& vars = cafe::detail::empty) const
00558         {
00559             return getCollection<TMBL2GblInvMass> ("L2GblInvMass", vars);
00560         }
00561 
00563         Collection<TMBL2GblMJt> getL2GblMJts(const Variables& vars = cafe::detail::empty) const
00564         {
00565             return getCollection<TMBL2GblMJt> ("L2GblMJt", vars);
00566         }
00567 
00569         Collection<TMBL2GblHt> getL2GblHts(const Variables& vars = cafe::detail::empty) const
00570         {
00571             return getCollection<TMBL2GblHt> ("L2GblHt", vars);
00572         }
00573 
00574 
00576         Collection<TMBL3BTagIP> getL3BTagIPs(const Variables& vars = cafe::detail::empty) const
00577         {
00578             return getCollection<TMBL3BTagIP> ("L3BTagIP", vars);
00579         }
00580 
00582         Collection<TMBL3CFTVtx> getL3CFTVtxs(const Variables& vars = cafe::detail::empty) const
00583         {
00584             return getCollection<TMBL3CFTVtx> ("L3CFTVertex", vars);
00585         }
00586 
00588         Collection<TMBL3Ele> getL3Eles(const Variables& vars = cafe::detail::empty) const
00589         {
00590             return getCollection<TMBL3Ele> ("L3Electron", vars);
00591         }
00592 
00594         Collection<TMBL3IPTrack> getL3IPTracks(const Variables& vars = cafe::detail::empty) const
00595         {
00596             return getCollection<TMBL3IPTrack> ("L3IPTrack", vars);
00597         }
00598 
00600         Collection<TMBL3Isolation> getL3Isolations(const Variables& vars = cafe::detail::empty) const
00601         {
00602             return getCollection<TMBL3Isolation> ("L3Isolation", vars);
00603         }
00604 
00606         Collection<TMBL3Jet> getL3Jets(const Variables& vars = cafe::detail::empty) const
00607         {
00608             return getCollection<TMBL3Jet> ("L3Jet", vars);
00609         }
00610 
00612         Collection<TMBL3Muon> getL3Muons(const Variables& vars = cafe::detail::empty) const
00613         {
00614             return getCollection<TMBL3Muon> ("L3Muon", vars);
00615         }
00616 
00618         Collection<TMBL3Photon> getL3Photons(const Variables& vars = cafe::detail::empty) const
00619         {
00620             return getCollection<TMBL3Photon> ("L3Photon", vars);
00621         }
00622 
00624         Collection<TMBL3Tau> getL3Taus(const Variables& vars = cafe::detail::empty) const
00625         {
00626             return getCollection<TMBL3Tau> ("L3Tau", vars);
00627         }
00628 
00630         Collection<TMBL3Track> getL3Tracks(const Variables& vars = cafe::detail::empty) const
00631         {
00632             return getCollection<TMBL3Track> ("L3Track", vars);
00633         }
00634 
00636         Collection<TMBL3MEt> getL3MEts(const Variables& vars = cafe::detail::empty) const
00637         {
00638             return getCollection<TMBL3MEt> ("L3MEt", vars);
00639         }
00640 
00642 
00644         const TMBCellContainer *getCaloCells(const Variables& vars = cafe::detail::empty) const
00645         {
00646             return get<TMBCellContainer>("CaloCells", vars);
00647         }
00648 
00650         Collection<TMBLum> getLum(const Variables& vars = cafe::detail::empty) const
00651         {
00652             return getCollection<TMBLum>("Lum", vars);
00653         }
00654         
00656         Collection<TMBLumV> getLumV(const Variables& vars = cafe::detail::empty) const
00657         {
00658             return getCollection<TMBLumV>("LumV", vars);
00659         }
00660 
00662         Collection<TMBSimCAEP> getSimCAEP(const Variables& vars = cafe::detail::empty) const
00663         {
00664             return getCollection<TMBSimCAEP>("CAEP", vars);
00665         }
00666         
00668         Collection<EventWeight> getEventWeights(const Variables& vars = cafe::detail::empty) const
00669         {
00670             return getCollection<EventWeight>("EventWeight", vars);
00671         }
00672 
00674         Collection<TMBHiPt> getHiPt(const Variables& vars = cafe::detail::empty) const
00675                 {
00676                     return getCollection<TMBHiPt>("HiPt", vars);
00677                  }
00678 
00680         Collection<TMBFPDTrack> getFPDTrack(const Variables& vars = cafe::detail::empty) const
00681         {
00682             return getCollection<TMBFPDTrack>("FPDTrack", vars);
00683         }
00684 
00685 
00687         Collection<TMBTdc> getTdc(const Variables& vars = cafe::detail::empty) const
00688         {
00689             return getCollection<TMBTdc>("FPDTdc", vars);
00690         }
00691 
00692     public:
00693         ClassDef(Event, 0);
00694     };
00695 
00696 }
00697 
00698 #endif // EVENT_HPP__

Generated on Thu Apr 3 04:14:23 2008 for CAF by doxygen 1.3.4