Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

AnalysisSkeleton.h

Go to the documentation of this file.
00001 // ================================================
00002 // AnalysisSkeleton class descriptionn
00003 // ================================================
00004 //
00005 // THIS TEXT TO BE REPLACED BY ATLAS STANDARD FORMAT
00006 //
00007 // Namespace Atlfast::
00008 //
00009 // class: AnalysisSkeleton
00010 //
00011 // Description: 
00012 //
00013 //  This is an example Algorithm designed to show new users
00014 //  of Athena/Atlfast how to access and use Atlfast objects from
00015 //  the TES.
00016 //
00017 //
00018 // ................................................................
00019 //
00020 
00021 
00022 #ifndef ATLFAST_ANALYSISSKELETON_H
00023 #define ATLFAST_ANALYSISSKELETON_H
00024 
00025 #include "AtlfastCode/KinematicHelper.h"
00026 
00027 // STL
00028 #include <string>
00029 #include <vector>
00030 
00031 // Athena/Gaudi 
00032 #include "GaudiKernel/Algorithm.h"  //needed for inheritance
00033 class ISvcLocator;
00034 
00035 
00036 
00037 //***************************************************************
00038 //                 AnalysisSkeleton class declaration
00039 //
00040 // An "Athena algorithm" is something which gets scheduled and controlled
00041 // by the framework. In its simplest definition it is something which
00042 //  - gets called for each event 
00043 //  - can get anything it wants out of the Transient Event Store"
00044 //  - can put anything it makes into the store.
00045 //
00046 // It must inherit from the  Algorithm base class
00047 //****************************************************************
00048 
00049 namespace Atlfast {
00054 class AnalysisSkeleton : public Algorithm
00055 {
00056 
00057  public:
00058 
00059   //-------------------------
00060   // Constructors/Destructors
00061   //
00062   // Athena requires that the constructor takes certain arguments
00063   // (and passes them directly to the constructor of the base class)
00064   //-------------------------
00066   AnalysisSkeleton( const std::string& name, ISvcLocator* pSvcLocator ) ; 
00068   virtual ~AnalysisSkeleton();
00069 
00070 
00071   //------------------------------------------------------
00072   // Methods used by Athena to run the algorithm
00073   //------------------------------------------------------
00075   StatusCode initialize() ;
00077   StatusCode execute() ;
00079   StatusCode finalize() ;
00080 
00081 
00082 
00083  private:
00084 
00085   //---------------------------------------------------
00086   // Member variables
00087   //---------------------------------------------------
00088 
00089 
00090   //---------------------------------------------------
00091   // Parameters of this algorithm
00092   //---------------------------------------------------
00093 
00094 
00095 
00096   //-------------------------------
00097   // Objects used by this class to do its job
00098   //-------------------------------
00099 
00100   // This contains some trivial but oft used procedures
00101   // See the WWW documentation for details.
00103   KinematicHelper m_kinehelp ; 
00104 
00105 
00106 
00107   //-------------------------------
00108   // Private methods
00109   //-------------------------------
00110 
00111 
00112 };
00113 
00114 } // end of namespace bracket
00115 
00116 
00117 #endif
00118 
00119 
00120 
00121 
00122 
00123 
00124 
00125 
00126 
00127 
00128 

Generated on Mon Feb 4 15:54:22 2002 for Atlfast by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001