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

FigureOfMerit.h

Go to the documentation of this file.
00001 //  $Header: /nfs/slac/g/glast/ground/cvs/merit/src/FigureOfMerit.h,v 1.2 2001/11/01 17:28:00 burnett Exp $
00002 //  Project: glast analysis
00003 //   Author: Toby Burnett
00004 //
00005 //  Analyzes the glast tuple to determine a figure of merit that is relevant
00006 // for the point source discovery potential of the instrument. For a gaussian
00007 // point spread function it is
00008 //    sqrt(Aeff)/sigma
00009 
00010 
00011 #ifndef FIGUREOFMERIT_H
00012 #define FIGUREOFMERIT_H
00013 
00014 #ifdef __GNUG__
00015 #pragma interface
00016 #endif
00017 
00018 #include "LayerGroup.h"
00019 #include "PSFanalysis.h"
00020 #include "EnergyAnalysis.h"
00021 #include "AnalysisList.h"
00022 #include <vector>
00023 
00024 
00025 //====================================================================================
00026 class FigureOfMerit {
00027 public:
00028     FigureOfMerit(const Tuple& t, std::string cutstring="");
00029 
00030     void setCuts(std::string);
00031     // associate a sequence of cuts, identifed by characters in the string
00032 
00033     void execute();
00034     // analyze the current tuple row
00035 
00036     void report(std::ostream&);
00037     // write results, return acceptacnce
00038 
00039     void    accept();
00040     // process an accepted event
00041 
00042     unsigned accepted() const;// { return m_accepted; }
00043 
00044     static float area(); //{return s_area;}
00045     static unsigned generated();//  { return s_generated; }
00046     // data access
00047 
00048 private:
00049     AnalysisList*   m_cuts;     // list of cuts to employ in analysis
00050 
00051     std::vector<LayerGroup>    m_layers;        // PSF analysis objects, for range of layers
00052 
00053     unsigned        m_accepted; // number passing analysis cuts
00054 
00055     static const Tuple* s_tuple;
00056     // reference to the Glast tuple
00057 
00058 
00059     static unsigned s_generated;    // number generated, from tuple title
00060     static double   s_area;         //  cross-sectional area, from title
00061 
00062 };
00063 #endif

Generated at Wed Nov 21 12:20:39 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000