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

ICsIClusters.h

Go to the documentation of this file.
00001 #ifndef ICsIClusterList_H
00002 #define ICsIClusterList_H
00003 
00004 #include <vector>
00005 #include "geometry/Point.h"
00006 #include "geometry/Vector.h"
00007 #include "GaudiKernel/DataObject.h"
00008 
00009 extern const CLID& CLID_CalClusterList;
00010 
00011 
00012 //----------------------------------------------
00013 //
00014 //   ICsICluster
00015 //
00016 //   Interface for Transient Storage Data
00017 //----------------------------------------------
00018 //   Invented for the use of TkrRecon
00019 //----------------------------------------------
00020 //            LSR  09/14/2001
00021 //----------------------------------------------
00022 
00023 
00024 //#####################################
00025 class ICsICluster
00026 //#####################################
00027 {
00028 protected:
00030         ICsICluster() {};
00031 
00032 public:
00034     virtual ~ICsICluster() {};
00035 
00036     // TkrRecon uses only Energy and position so far, but might as
00037     //   well keep all the access functions for now.
00038 
00039         // access
00040         virtual double energySum()        const = 0;
00041         virtual double energyLeak()       const = 0;
00042         virtual double energyCorrected()  const = 0;
00043         virtual double getEneLayer(int i) const = 0;
00044         virtual const  Vector& getPosLayer(int i)         const = 0;
00045         virtual const  std::vector<double>& getEneLayer() const = 0;
00046         virtual const  std::vector<Vector>& getPosLayer() const = 0;
00047         virtual const  std::vector<Vector>& getRmsLayer() const = 0;
00048         virtual double getRmsLong()               const = 0;
00049         virtual double getRmsTrans()      const = 0;
00050     virtual double getTransvOffset()  const = 0;
00051 
00052         virtual Point  position()         const = 0;
00053         virtual Vector direction()        const = 0;
00054         virtual double getFitEnergy()     const = 0;
00055         virtual double getProfChisq()     const = 0;
00056         virtual double getCsiAlpha()      const = 0;
00057         virtual double getCsiLambda()     const = 0;
00058         virtual double getCsiStart()      const = 0;
00059         // operations
00060         virtual void   writeOut() const = 0;
00061 
00062 };
00063 
00064 
00066 
00079 //#####################################
00080 class ICsIClusterList : public DataObject
00081 //#####################################
00082 {
00083 protected:
00084     ICsIClusterList() {};
00085 
00086 public:
00087     virtual ~ICsIClusterList() {};
00088 
00089         // GAUDI members to be use by the converters
00090         static const CLID& classID() {return CLID_CalClusterList;}
00091         virtual const CLID& clID() const {return classID();}
00092 
00093         // access
00094         virtual int num()                   const = 0;
00095         virtual ICsICluster* Cluster(int i) const = 0;
00096 
00097 };
00098 #endif  
00099 
00100 
00101 
00102 
00103 
00104 

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