which included commits to RCS files with non-trunk default branches.
--- /dev/null
+#ifndef ALIPHOS_H
+#define ALIPHOS_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Base Class for PHOS
+//
+//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+// --- AliRoot header files ---
+
+#include "AliDetector.h"
+#include "AliPHOSGeometry.h"
+
+
+class AliPHOS : public AliDetector {
+
+ public:
+
+ AliPHOS(const char* name, const char* title): AliDetector(name,title) {}
+ AliPHOS() : AliDetector() {}
+ virtual ~AliPHOS() ;
+
+ virtual void CreateMaterials() ; // defines the material of the detector
+ virtual AliPHOSGeometry * GetGeometry() = 0 ; // hands the pointer to the unique geometry object
+
+ ClassDef(AliPHOS,2) // Photon Spectrometer Detector (base class)
+
+} ;
+
+#endif // ALIPHOS_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:47 2000 -->
+<!-- -->
+<head>
+<title>AliPHOS</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOS</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOS:description>class description</a> - <a href="src/AliPHOS.cxx.html">source file</a> - <a href="AliPHOS_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOS" href="AliPHOS.h">AliPHOS</a> : public AliDetector</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOS:~AliPHOS">~AliPHOS</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOS:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOS:CreateMaterials">CreateMaterials</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a href="#AliPHOS:GetGeometry">GetGeometry</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOS:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOS:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOS:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOS:Data Members">Data Members</a></h3>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSv0.html">AliPHOSv0</a>, <a href="./AliPHOSvFast.html">AliPHOSvFast</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOS:description">Class Description</a></h2>
+<pre> Base Class for PHOS description:
+ PHOS consists of a PbWO4 calorimeter (EMCA) and a gazeous charged
+ particles detector (CPV or PPSD).
+ The only provided method here is CreateMaterials,
+ which defines the materials common to all PHOS versions.
+
+*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
+
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOS:~AliPHOS" href="src/AliPHOS.cxx.html#AliPHOS:~AliPHOS">~AliPHOS</a>()
+<br>
+<hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOS:CreateMaterials" href="src/AliPHOS.cxx.html#AliPHOS:CreateMaterials">CreateMaterials</a>()
+<br>
+<pre> Definitions of materials to build PHOS and associated tracking media.
+ media number in idtmed are 699 to 798.
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <a name="AliPHOS:GetGeometry" href="AliPHOS.h">GetGeometry</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOS:Class" href="AliPHOS.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOS:IsA" href="AliPHOS.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOS:ShowMembers" href="AliPHOS.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOS:Streamer" href="AliPHOS.h">Streamer</a>(TBuffer& b)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+#ifndef ALIPHOSANALYZE_H
+#define ALIPHOSANALYZE_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Algorithm class to analyze PHOSv0 events
+//*-- Author : Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TFile.h"
+#include "TH1.h"
+#include "TH2.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSv0.h"
+#include "AliPHOSGeometry.h"
+#include "AliPHOSPID.h"
+
+class AliPHOSAnalyze : public TObject {
+
+public:
+
+ AliPHOSAnalyze() ; // ctor
+ AliPHOSAnalyze(Text_t * name) ; // ctor
+ virtual ~AliPHOSAnalyze() ; // dtor
+
+ void AnalyzeOneEvent(Int_t evt = -999) ; // analyzes a single event ;
+ void AnalyzeManyEvents(Int_t Nevtents = 100, Int_t Module=0) ; // analyzes many events ;
+ void BookingHistograms() ; // booking histograms for the ManyEvent analysis ;
+ Bool_t Init(Int_t evt) ; // does various initialisations
+ void DisplayKineEvent(Int_t evt = -999) ; // displays the Kine events in ALICE coordinate
+ void DisplayRecParticles() ; // displays RecParticles in ALICE coordinate
+ void DisplayRecPoints() ; // displays RecPoints in module coordinate
+ void DisplayTrackSegments() ; // displays TrackSegments in module coordinate
+ Bool_t OpenRootFile(Text_t * name) ; // opens the root file
+ void SavingHistograms() ; // Save histograms in a root file
+
+private:
+
+ AliPHOSClusterizer * fClu ; // a clusterizer
+ Int_t fEvt ; // the evt number being processed
+ AliPHOSGeometry * fGeom ; // the PHOS Geometry object
+ AliPHOSv0 * fPHOS ; // the PHOS object from the root file
+ AliPHOSPID * fPID ; // a particle identifier
+ AliPHOSReconstructioner * fRec ; // a reconstructioner
+ TFile * fRootFile ; // the root file that contains the data
+ AliPHOSTrackSegmentMaker * fTrs ; // a tracksegmentmaker ;
+ TH1F * fhEmcDigit ; // Histo of digit energies in the Emc
+ TH1F * fhVetoDigit ; // Histo of digit energies in the Veto
+ TH1F * fhConvertorDigit ; // Histo of digit energies in the Convertor
+ TH1F * fhEmcCluster ; // Histo of Cluster energies in Emc
+ TH1F * fhVetoCluster ; // Histo of Cluster energies in Veto
+ TH1F * fhConvertorCluster ; // Histo of Cluster energies in Convertor
+ TH2F * fhConvertorEmc ; // 2d Convertor versus Emc energies
+ TH1F * fhPhotonEnergy ; // Spectrum of detected photons
+ TH1F * fhElectronEnergy ; // Spectrum of detected electrons
+ TH1F * fhNeutralHadronEnergy ; // Spectrum of detected neutral hadron
+ TH1F * fhNeutralEMEnergy ; // Spectrum of detected neutral EM
+ TH1F * fhChargedHadronEnergy ; // Spectrum of detected charged
+ TH1F * fhPhotonHadronEnergy ; // Spectrum of detected Photon-Hadron
+ TH1F * fhPhotonPositionX ; // X distribution of detected photons
+ TH1F * fhElectronPositionX ; // X distribution of detected electrons
+ TH1F * fhNeutralHadronPositionX ; // X distribution of detected neutral hadron
+ TH1F * fhNeutralEMPositionX ; // X distribution of detected neutral EM
+ TH1F * fhChargedHadronPositionX ; // X distribution of detected charged
+ TH1F * fhPhotonHadronPositionX ; // X distribution of detected Photon-Hadron
+ TH1F * fhPhotonPositionY ; // Y distribution of detected photons
+ TH1F * fhElectronPositionY ; // Y distribution of detected electrons
+ TH1F * fhNeutralHadronPositionY ; // Y distribution of detected neutral hadron
+ TH1F * fhNeutralEMPositionY ; // Y distribution of detected neutral EM
+ TH1F * fhChargedHadronPositionY ; // Y distribution of detected charged
+ TH1F * fhPhotonHadronPositionY ; // Y distribution of detected Photon-Hadron
+
+
+ClassDef(AliPHOSAnalyze,1) // PHOSv0 event analyzis algorithm
+
+};
+
+#endif // AliPHOSANALYZE_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:54 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSAnalyze</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSAnalyze</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSAnalyze:description>class description</a> - <a href="src/AliPHOSAnalyze.cxx.html">source file</a> - <a href="AliPHOSAnalyze_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSAnalyze" href="AliPHOSAnalyze.h">AliPHOSAnalyze</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze</a><!--PLAIN-->(<a href="ListOfTypes.html#Text_t">Text_t</a>* name)
+<!--TAB6--> <a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze</a><!--PLAIN-->(<a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:~AliPHOSAnalyze">~AliPHOSAnalyze</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:AnalyzeManyEvents">AnalyzeManyEvents</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> Nevtents = 100, <a href="ListOfTypes.html#Int_t">Int_t</a> Module = 0)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:AnalyzeOneEvent">AnalyzeOneEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> evt = -999)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:BookingHistograms">BookingHistograms</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:DisplayKineEvent">DisplayKineEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> evt = -999)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:DisplayRecParticles">DisplayRecParticles</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:DisplayRecPoints">DisplayRecPoints</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:DisplayTrackSegments">DisplayTrackSegments</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:Init">Init</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> evt)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:OpenRootFile">OpenRootFile</a><!--PLAIN-->(<a href="ListOfTypes.html#Text_t">Text_t</a>* name)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:SavingHistograms">SavingHistograms</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSAnalyze:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSAnalyze:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fClu">fClu</a><!--PLAIN--> <!--TAB--><i><a name="Title:fClu">a clusterizer </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fEvt">fEvt</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEvt">the evt number being processed </a></i>
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fGeom">fGeom</a><!--PLAIN--> <!--TAB--><i><a name="Title:fGeom">the PHOS Geometry object</a></i>
+<!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fPHOS">fPHOS</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPHOS">the PHOS object from the root file </a></i>
+<!--TAB6--> <a href="./AliPHOSPID.html">AliPHOSPID</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fPID">fPID</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPID">a particle identifier</a></i>
+<!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fRec">fRec</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRec">a reconstructioner </a></i>
+<!--TAB6--> TFile* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fRootFile">fRootFile</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRootFile">the root file that contains the data</a></i>
+<!--TAB6--> <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fTrs">fTrs</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTrs">a tracksegmentmaker ;</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhEmcDigit">Histo of digit energies in the Emc </a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhVetoDigit">Histo of digit energies in the Veto </a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhConvertorDigit">Histo of digit energies in the Convertor</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhEmcCluster">Histo of Cluster energies in Emc</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhVetoCluster">Histo of Cluster energies in Veto</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhConvertorCluster">Histo of Cluster energies in Convertor</a></i>
+<!--TAB6--> TH2F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhConvertorEmc">2d Convertor versus Emc energies</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonEnergy">fhPhotonEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonEnergy">Spectrum of detected photons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhElectronEnergy">fhElectronEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhElectronEnergy">Spectrum of detected electrons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralHadronEnergy">fhNeutralHadronEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralHadronEnergy">Spectrum of detected neutral hadron</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralEMEnergy">fhNeutralEMEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralEMEnergy">Spectrum of detected neutral EM</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhChargedHadronEnergy">fhChargedHadronEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhChargedHadronEnergy">Spectrum of detected charged</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonHadronEnergy">fhPhotonHadronEnergy</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonHadronEnergy">Spectrum of detected Photon-Hadron</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonPositionX">X distribution of detected photons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhElectronPositionX">X distribution of detected electrons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralHadronPositionX">X distribution of detected neutral hadron</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralEMPositionX">X distribution of detected neutral EM</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhChargedHadronPositionX">X distribution of detected charged</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonHadronPositionX">X distribution of detected Photon-Hadron</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonPositionY">fhPhotonPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonPositionY">Y distribution of detected photons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhElectronPositionY">fhElectronPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhElectronPositionY">Y distribution of detected electrons</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralHadronPositionY">fhNeutralHadronPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralHadronPositionY">Y distribution of detected neutral hadron</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhNeutralEMPositionY">fhNeutralEMPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhNeutralEMPositionY">Y distribution of detected neutral EM</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhChargedHadronPositionY">fhChargedHadronPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhChargedHadronPositionY">Y distribution of detected charged</a></i>
+<!--TAB6--> TH1F* <!--TAB--><!--BOLD--><a name="AliPHOSAnalyze:fhPhotonHadronPositionY">fhPhotonHadronPositionY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fhPhotonHadronPositionY">Y distribution of detected Photon-Hadron</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSAnalyze:description">Class Description</a></h2>
+<pre> Algorythm class to analyze PHOSv0 events:
+ Construct histograms and displays them.
+ Use the macro EditorBar.C for best access to the functionnalities
+
+*-- Author: Y. Schutz (SUBATECH)
+
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSAnalyze:AliPHOSAnalyze" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze</a>()
+<br>
+<pre> default ctor (useless)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSAnalyze:AliPHOSAnalyze" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze</a>(<a href="ListOfTypes.html#Text_t">Text_t</a> * name)
+<br>
+<pre> ctor: analyze events from root file: name
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSAnalyze:~AliPHOSAnalyze" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:~AliPHOSAnalyze">~AliPHOSAnalyze</a>()
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:AnalyzeOneEvent" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:AnalyzeOneEvent">AnalyzeOneEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> evt)
+<br>
+<pre> analyze one single event with id=evt
+</pre><hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:AnalyzeManyEvents" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:AnalyzeManyEvents">AnalyzeManyEvents</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> Nevents, <a href="ListOfTypes.html#Int_t">Int_t</a> module)
+<br>
+<pre> analyzes Nevents events in a single PHOS module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:BookingHistograms" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:BookingHistograms">BookingHistograms</a>()
+<br>
+<pre> Books the histograms where the results of the analysis are stored (to be changed)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSAnalyze:Init" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:Init">Init</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> evt)
+<br>
+<pre> Do a few initializations: open the root file
+ get the AliRun object
+ defines the clusterizer, tracksegment maker and particle identifier
+ sets the associated parameters
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:DisplayKineEvent" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:DisplayKineEvent">DisplayKineEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> evt)
+<br>
+<pre> Display particles from the Kine Tree in global Alice (theta, phi) coordinates.
+ One PHOS module at the time.
+ The particle type can be selected.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:DisplayRecParticles" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:DisplayRecParticles">DisplayRecParticles</a>()
+<br>
+<pre> Display reconstructed particles in global Alice(theta, phi) coordinates.
+ One PHOS module at the time.
+ Click on symbols indicate the reconstructed particle type.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:DisplayRecPoints" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:DisplayRecPoints">DisplayRecPoints</a>()
+<br>
+<pre> Display reconstructed points in local PHOS-module (x, z) coordinates.
+ One PHOS module at the time.
+ Click on symbols displays the EMC cluster, or PPSD information.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:DisplayTrackSegments" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:DisplayTrackSegments">DisplayTrackSegments</a>()
+<br>
+<pre> Display track segments in local PHOS-module (x, z) coordinates.
+ One PHOS module at the time.
+ One symbol per PHOS subsystem: EMC, upper PPSD, lower PPSD.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSAnalyze:OpenRootFile" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:OpenRootFile">OpenRootFile</a>(<a href="ListOfTypes.html#Text_t">Text_t</a> * name)
+<br>
+<pre> Open the root file named "name"
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:SavingHistograms" href="src/AliPHOSAnalyze.cxx.html#AliPHOSAnalyze:SavingHistograms">SavingHistograms</a>()
+<br>
+<pre> Saves the histograms in a root file named "name.analyzed"
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSAnalyze:Class" href="AliPHOSAnalyze.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSAnalyze:IsA" href="AliPHOSAnalyze.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:ShowMembers" href="AliPHOSAnalyze.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSAnalyze:Streamer" href="AliPHOSAnalyze.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> <a name="AliPHOSAnalyze:AliPHOSAnalyze" href="AliPHOSAnalyze.h">AliPHOSAnalyze</a>(<a href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSAnalyze_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 17:11:30 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1070 1114 1101 bf black [] 0 sd 3 lw 1132 1101 m -11 Y 1001 X 1063 Y -12 X -1052 Y f [] 0 sd 3 lw 1114 1101 m 1070 Y 1007 X -1070 Y
+ -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (AliPHOSAnalyze) /Helvetica-Bold 32 stwn gsave 1618 2120
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSAnalyze) show gr
+ gsave 1145 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fClu) show gr
+ gsave 1145 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEvt) show gr
+ gsave 1145 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 1145 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPHOS) show gr
+ gsave 1145 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPID) show gr
+ gsave 1145 1891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRec) show gr
+ gsave 1145 1855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRootFile) show gr
+ gsave 1145 1819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrs) show gr
+ gsave 1145 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhEmcDigit) show gr
+ gsave 1145 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhVetoDigit) show gr
+ gsave 1145 1710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhConvertorDigit) show gr
+ gsave 1145 1674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhEmcCluster) show gr
+ gsave 1145 1638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhVetoCluster) show gr
+ gsave 1145 1601
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhConvertorCluster) show gr
+ gsave 1145 1565
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhConvertorEmc) show gr
+ gsave 1145 1529
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonEnergy) show gr
+ gsave 1145 1493
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhElectronEnergy) show gr
+ gsave 1145 1457
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralHadronEnergy) show gr
+ gsave 1648 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralEMEnergy) show gr
+ gsave 1648 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhChargedHadronEnergy) show gr
+ gsave 1648 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonHadronEnergy) show gr
+ gsave 1648 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonPositionX) show gr
+ gsave 1648 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhElectronPositionX) show gr
+ gsave 1648 1891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralHadronPositionX) show gr
+ gsave 1648 1855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralEMPositionX) show gr
+ gsave 1648 1819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhChargedHadronPositionX) show gr
+ gsave 1648 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonHadronPositionX) show gr
+ gsave 1648 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonPositionY) show gr
+ gsave 1648 1710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhElectronPositionY) show gr
+ gsave 1648 1674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralHadronPositionY) show gr
+ gsave 1648 1638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhNeutralEMPositionY) show gr
+ gsave 1648 1601
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhChargedHadronPositionY) show gr
+ gsave 1648 1565
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fhPhotonHadronPositionY) show gr
+ gsave 1648 1529
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1463 m 1007 X s 0 0 1 c
+ gsave 1145 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSAnalyze) show gr
+ gsave 1145 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSAnalyze) show gr
+ gsave 1145 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AnalyzeOneEvent) show gr
+ gsave 1145 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AnalyzeManyEvents) show gr
+ gsave 1145 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BookingHistograms) show gr
+ gsave 1145 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 1145 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DisplayKineEvent) show gr
+ gsave 1145 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DisplayRecParticles) show gr
+ gsave 1145 1113
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DisplayRecPoints) show gr
+ gsave 1648 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DisplayTrackSegments) show gr
+ gsave 1648 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (OpenRootFile) show gr
+ gsave 1648 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavingHistograms) show gr
+ gsave 1648 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1648 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1648 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1648 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSCLUSTERIZER_H
+#define ALIPHOSCLUSTERIZER_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Base class for the clusterization algorithm (pure abstract)
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+#include "TClonesArray.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSDigit.h"
+
+typedef TClonesArray RecPointsList ;
+typedef TClonesArray DigitsList ;
+
+class AliPHOSClusterizer : public TObject {
+
+public:
+
+ AliPHOSClusterizer() ; // ctor
+ virtual ~AliPHOSClusterizer() ; // dtor
+
+ virtual Float_t Calibrate(Int_t Amp) = 0 ;
+ virtual Bool_t IsInEmc(AliPHOSDigit * digit)= 0 ;
+ virtual void GetNumberOfClustersFound(Int_t * numb) = 0 ;
+ virtual void GetCalibrationParameters(Float_t & A, Float_t &B) = 0 ;
+ virtual Float_t GetEmcClusteringThreshold() = 0 ;
+ virtual Float_t GetEmcEnergyThreshold() = 0 ;
+ virtual Float_t GetLocalMaxCut() = 0 ;
+ virtual Float_t GetLogWeightCut() = 0 ;
+ virtual Float_t GetPpsdClusteringThreshold() = 0 ;
+ virtual Float_t GetPpsdEnergyThreshold() = 0 ;
+
+ virtual void MakeClusters(const DigitsList * dl, RecPointsList * emccl, RecPointsList * ppsdl) = 0 ;
+ virtual void PrintParameters() = 0 ;
+ virtual void SetCalibrationParameters(Float_t A, Float_t B) = 0 ;
+ virtual void SetEmcClusteringThreshold(Float_t cluth) = 0 ;
+ virtual void SetEmcEnergyThreshold(Float_t enth) = 0 ;
+ virtual void SetLocalMaxCut(Float_t cut) = 0 ;
+ virtual void SetLogWeightCut(Float_t w) = 0 ;
+ virtual void SetPpsdClusteringThreshold(Float_t cluth) = 0 ;
+ virtual void SetPpsdEnergyThreshold(Float_t enth) = 0 ;
+
+ ClassDef(AliPHOSClusterizer,1) // Clusterization algorithm class (abstract base class)
+
+} ;
+
+#endif // AliPHOSCLUSTERIZER_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSClusterizer</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSClusterizer</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSClusterizer:description>class description</a> - <a href="src/AliPHOSClusterizer.cxx.html">source file</a> - <a href="AliPHOSClusterizer_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSClusterizer" href="AliPHOSClusterizer.h">AliPHOSClusterizer</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:~AliPHOSClusterizer">~AliPHOSClusterizer</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:Calibrate">Calibrate</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetCalibrationParameters">GetCalibrationParameters</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a>& A, <a href="ListOfTypes.html#Float_t">Float_t</a>& B)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetEmcClusteringThreshold">GetEmcClusteringThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetEmcEnergyThreshold">GetEmcEnergyThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetLocalMaxCut">GetLocalMaxCut</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetLogWeightCut">GetLogWeightCut</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetNumberOfClustersFound">GetNumberOfClustersFound</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>* numb)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetPpsdClusteringThreshold">GetPpsdClusteringThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:GetPpsdEnergyThreshold">GetPpsdEnergyThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:IsInEmc">IsInEmc</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a>* digit)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:MakeClusters">MakeClusters</a><!--PLAIN-->(const <a href="ListOfTypes.html#DigitsList">DigitsList</a>* dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emccl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:PrintParameters">PrintParameters</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetCalibrationParameters">SetCalibrationParameters</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> A, <a href="ListOfTypes.html#Float_t">Float_t</a> B)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetEmcClusteringThreshold">SetEmcClusteringThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetEmcEnergyThreshold">SetEmcEnergyThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetLocalMaxCut">SetLocalMaxCut</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cut)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetLogWeightCut">SetLogWeightCut</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> w)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetPpsdClusteringThreshold">SetPpsdClusteringThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:SetPpsdEnergyThreshold">SetPpsdEnergyThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizer:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSClusterizer:Data Members">Data Members</a></h3>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSClusterizer:description">Class Description</a></h2>
+<pre> Base class for the clusterization algorithm (pure abstract)
+
+*-- Author: Yves Schutz SUBATECH
+
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSClusterizer:~AliPHOSClusterizer" href="src/AliPHOSClusterizer.cxx.html#AliPHOSClusterizer:~AliPHOSClusterizer">~AliPHOSClusterizer</a>()
+<br>
+<pre> dtor
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:Calibrate" href="AliPHOSClusterizer.h">Calibrate</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSClusterizer:IsInEmc" href="AliPHOSClusterizer.h">IsInEmc</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a>* digit)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:GetNumberOfClustersFound" href="AliPHOSClusterizer.h">GetNumberOfClustersFound</a>(<a href="ListOfTypes.html#Int_t">Int_t</a>* numb)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:GetCalibrationParameters" href="AliPHOSClusterizer.h">GetCalibrationParameters</a>(<a href="ListOfTypes.html#Float_t">Float_t</a>& A, <a href="ListOfTypes.html#Float_t">Float_t</a>& B)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetEmcClusteringThreshold" href="AliPHOSClusterizer.h">GetEmcClusteringThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetEmcEnergyThreshold" href="AliPHOSClusterizer.h">GetEmcEnergyThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetLocalMaxCut" href="AliPHOSClusterizer.h">GetLocalMaxCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetLogWeightCut" href="AliPHOSClusterizer.h">GetLogWeightCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetPpsdClusteringThreshold" href="AliPHOSClusterizer.h">GetPpsdClusteringThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizer:GetPpsdEnergyThreshold" href="AliPHOSClusterizer.h">GetPpsdEnergyThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:MakeClusters" href="AliPHOSClusterizer.h">MakeClusters</a>(const <a href="ListOfTypes.html#DigitsList">DigitsList</a>* dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emccl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:PrintParameters" href="AliPHOSClusterizer.h">PrintParameters</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetCalibrationParameters" href="AliPHOSClusterizer.h">SetCalibrationParameters</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> A, <a href="ListOfTypes.html#Float_t">Float_t</a> B)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetEmcClusteringThreshold" href="AliPHOSClusterizer.h">SetEmcClusteringThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetEmcEnergyThreshold" href="AliPHOSClusterizer.h">SetEmcEnergyThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetLocalMaxCut" href="AliPHOSClusterizer.h">SetLocalMaxCut</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cut)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetLogWeightCut" href="AliPHOSClusterizer.h">SetLogWeightCut</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> w)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetPpsdClusteringThreshold" href="AliPHOSClusterizer.h">SetPpsdClusteringThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:SetPpsdEnergyThreshold" href="AliPHOSClusterizer.h">SetPpsdEnergyThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSClusterizer:Class" href="AliPHOSClusterizer.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSClusterizer:IsA" href="AliPHOSClusterizer.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:ShowMembers" href="AliPHOSClusterizer.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizer:Streamer" href="AliPHOSClusterizer.h">Streamer</a>(TBuffer& b)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSClusterizer_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:48 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 961 1114 1210 bf black [] 0 sd 3 lw 1132 1210 m -12 Y 498 X 955 Y -12 X -943 Y f [] 0 sd 3 lw 1114 1210 m 961 Y 504 X -961 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSClusterizer) /Helvetica-Bold 32 stwn gsave 1366 2121
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSClusterizer) show gr
+ gsave 1130 2073
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0 0 1 c
+ gsave 1130 1982
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Calibrate) show gr
+ gsave 1130 1946
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsInEmc) show gr
+ gsave 1130 1910
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNumberOfClustersFound) show gr
+ gsave 1130 1874
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCalibrationParameters) show gr
+ gsave 1130 1838
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcClusteringThreshold) show gr
+ gsave 1130 1801
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcEnergyThreshold) show gr
+ gsave 1130 1765
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalMaxCut) show gr
+ gsave 1130 1729
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLogWeightCut) show gr
+ gsave 1130 1693
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdClusteringThreshold) show gr
+ gsave 1130 1657
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdEnergyThreshold) show gr
+ gsave 1130 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeClusters) show gr
+ gsave 1130 1584
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PrintParameters) show gr
+ gsave 1130 1548
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetCalibrationParameters) show gr
+ gsave 1130 1512
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcClusteringThreshold) show gr
+ gsave 1130 1476
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcEnergyThreshold) show gr
+ gsave 1130 1440
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLocalMaxCut) show gr
+ gsave 1130 1403
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLogWeightCut) show gr
+ gsave 1130 1367
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdClusteringThreshold) show gr
+ gsave 1130 1331
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdEnergyThreshold) show gr
+ gsave 1130 1295
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1259
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSCLUSTERIZERV1_H
+#define ALIPHOSCLUSTERIZERV1_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Implementation version 1 of the clusterization algorithm
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSClusterizer.h"
+#include "AliPHOSDigit.h"
+
+
+
+class AliPHOSClusterizerv1 : public AliPHOSClusterizer {
+
+public:
+
+ AliPHOSClusterizerv1() ; // ctor
+ virtual ~AliPHOSClusterizerv1(){} ; // dtor
+
+ Int_t AreNeighbours(AliPHOSDigit * d1, AliPHOSDigit * d2) ; // Checks if digits are in neighbour cells
+ Float_t Calibrate(Int_t Amp){ return (fA + fB * Amp) ;} // Tranforms Amp to energy
+ void FillandSort(const DigitsList * dl, TObjArray * tl) ; // Sorts the list according to increasing id
+ virtual void GetNumberOfClustersFound(Int_t * numb) ;
+
+ virtual void GetCalibrationParameters(Float_t & A, Float_t &B) { A = fA; B = fB; }
+ virtual Float_t GetEmcClusteringThreshold() { return fEmcClusteringThreshold;}
+ virtual Float_t GetEmcEnergyThreshold() { return fEmcEnergyThreshold; }
+ virtual Float_t GetLocalMaxCut() { return fLocMaxCut;}
+ virtual Float_t GetLogWeightCut() { return fW0;}
+ virtual Float_t GetPpsdClusteringThreshold() { return fPpsdClusteringThreshold; }
+ virtual Float_t GetPpsdEnergyThreshold() { return fPpsdEnergyThreshold; }
+
+ virtual Bool_t IsInEmc(AliPHOSDigit * digit) ; // Tells if id digit is in EMC
+ virtual void MakeClusters(const DigitsList * dl, RecPointsList * emcl, RecPointsList * ppsdl) ; // does the job
+ virtual void PrintParameters() ;
+ virtual void SetCalibrationParameters(Float_t A,Float_t B){ fA = A ; fB = B;}
+ virtual void SetEmcClusteringThreshold(Float_t cluth) { fEmcClusteringThreshold = cluth ; }
+ virtual void SetEmcEnergyThreshold(Float_t enth) { fEmcEnergyThreshold = enth ; }
+ virtual void SetLocalMaxCut(Float_t cut) { fLocMaxCut = cut ; }
+ virtual void SetLogWeightCut(Float_t w) { fW0 = w ; }
+ virtual void SetPpsdClusteringThreshold(Float_t cluth) { fPpsdClusteringThreshold = cluth ; }
+ virtual void SetPpsdEnergyThreshold(Float_t enth) { fPpsdEnergyThreshold = enth ; }
+
+private:
+
+ Float_t fA ; // offset of the energy calibration
+ Float_t fB ; // gain of the energy calibration
+ Float_t fEmcClusteringThreshold ; // minimum energy to include a EMC digit in a cluster
+ Float_t fEmcEnergyThreshold ; // minimum energy of EMC digit to be considered
+ Float_t fLocMaxCut ; // minimum energy difference to distinguish local maxima in a cluster
+ Int_t fNumberOfEmcClusters ; // number of EMC clusters found
+ Int_t fNumberOfPpsdClusters ; // number of PPSD clusters found
+ Float_t fPpsdClusteringThreshold ; // minimum energy to include a PPSD digit in a cluster
+ Float_t fPpsdEnergyThreshold ; // minimum energy of PPSD digit to be considered
+ Float_t fW0 ; // logarithmic weight for the cluster center of gravity calculation
+
+ ClassDef(AliPHOSClusterizerv1,1) // Clusterizer implementation version 1
+
+};
+
+#endif // AliPHOSCLUSTERIZERV1_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSClusterizerv1</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSClusterizerv1</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSClusterizerv1:description>class description</a> - <a href="src/AliPHOSClusterizerv1.cxx.html">source file</a> - <a href="AliPHOSClusterizerv1_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSClusterizerv1" href="AliPHOSClusterizerv1.h">AliPHOSClusterizerv1</a> : public <a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:AliPHOSClusterizerv1">AliPHOSClusterizerv1</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:AliPHOSClusterizerv1">AliPHOSClusterizerv1</a><!--PLAIN-->(<a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:~AliPHOSClusterizerv1">~AliPHOSClusterizerv1</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:AreNeighbours">AreNeighbours</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a>* d1, <a href="./AliPHOSDigit.html">AliPHOSDigit</a>* d2)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:FillandSort">FillandSort</a><!--PLAIN-->(const <a href="ListOfTypes.html#DigitsList">DigitsList</a>* dl, TObjArray* tl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetCalibrationParameters">GetCalibrationParameters</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a>& A, <a href="ListOfTypes.html#Float_t">Float_t</a>& B)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetEmcClusteringThreshold">GetEmcClusteringThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetEmcEnergyThreshold">GetEmcEnergyThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetLocalMaxCut">GetLocalMaxCut</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetLogWeightCut">GetLogWeightCut</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetNumberOfClustersFound">GetNumberOfClustersFound</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>* numb)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetPpsdClusteringThreshold">GetPpsdClusteringThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:GetPpsdEnergyThreshold">GetPpsdEnergyThreshold</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a>* digit)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:MakeClusters">MakeClusters</a><!--PLAIN-->(const <a href="ListOfTypes.html#DigitsList">DigitsList</a>* dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:PrintParameters">PrintParameters</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetCalibrationParameters">SetCalibrationParameters</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> A, <a href="ListOfTypes.html#Float_t">Float_t</a> B)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetEmcClusteringThreshold">SetEmcClusteringThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetEmcEnergyThreshold">SetEmcEnergyThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetLocalMaxCut">SetLocalMaxCut</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cut)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetLogWeightCut">SetLogWeightCut</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> w)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetPpsdClusteringThreshold">SetPpsdClusteringThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:SetPpsdEnergyThreshold">SetPpsdEnergyThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSClusterizerv1:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSClusterizerv1:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fA">fA</a><!--PLAIN--> <!--TAB--><i><a name="Title:fA">offset of the energy calibration</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fB">fB</a><!--PLAIN--> <!--TAB--><i><a name="Title:fB">gain of the energy calibration</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fEmcClusteringThreshold">fEmcClusteringThreshold</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEmcClusteringThreshold">minimum energy to include a EMC digit in a cluster</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fEmcEnergyThreshold">fEmcEnergyThreshold</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEmcEnergyThreshold">minimum energy of EMC digit to be considered</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fLocMaxCut">fLocMaxCut</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLocMaxCut">minimum energy difference to distinguish local maxima in a cluster</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfEmcClusters">number of EMC clusters found </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfPpsdClusters">number of PPSD clusters found</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fPpsdClusteringThreshold">fPpsdClusteringThreshold</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdClusteringThreshold">minimum energy to include a PPSD digit in a cluster</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fPpsdEnergyThreshold">fPpsdEnergyThreshold</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdEnergyThreshold">minimum energy of PPSD digit to be considered</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSClusterizerv1:fW0">fW0</a><!--PLAIN--> <!--TAB--><i><a name="Title:fW0">logarithmic weight for the cluster center of gravity calculation</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSClusterizerv1:description">Class Description</a></h2>
+<pre> Implementation version 1 of the clusterization algorithm
+
+*-- Author: Yves Schutz (SUBATECH)
+
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSClusterizerv1:AliPHOSClusterizerv1" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:AliPHOSClusterizerv1">AliPHOSClusterizerv1</a>()
+<br>
+<pre> default ctor (to be used)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSClusterizerv1:AreNeighbours" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:AreNeighbours">AreNeighbours</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> * d1, <a href="./AliPHOSDigit.html">AliPHOSDigit</a> * d2)
+<br>
+<pre> Gives the neighbourness of two digits = 0 are not neighbour but continue searching
+ = 1 are neighbour
+ = 2 are not neighbour but do not continue searching
+ neighbours are defined as digits having at least common vertex
+ The order of d1 and d2 is important: first (d1) should be a digit already in a cluster
+ which is compared to a digit (d2) not yet in a cluster
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:FillandSort" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:FillandSort">FillandSort</a>(const <a href="ListOfTypes.html#DigitsList">DigitsList</a> * dl, TObjArray * tl)
+<br>
+<pre> Copies the digits with energy above thershold and sorts the list
+ according to increasing Id number
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:GetNumberOfClustersFound" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:GetNumberOfClustersFound">GetNumberOfClustersFound</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> * numb)
+<br>
+<pre> Fills numb with the number of EMC (numb[0]) clusters found
+ PPSD (numb[1]) clusters found
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSClusterizerv1:IsInEmc" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> * digit)
+<br>
+<pre> Tells if (true) or not (false) the digit is in a PHOS-EMC module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:MakeClusters" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:MakeClusters">MakeClusters</a>(const <a href="ListOfTypes.html#DigitsList">DigitsList</a> * dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * emcl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl)
+<br>
+<pre> Steering method to construct the clusters stored in a list of Reconstructed Points
+ A cluster is defined as a list of neighbour digits
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:PrintParameters" href="src/AliPHOSClusterizerv1.cxx.html#AliPHOSClusterizerv1:PrintParameters">PrintParameters</a>()
+<br>
+<pre> Print the energy thresholds
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:Calibrate" href="AliPHOSClusterizerv1.h">Calibrate</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:GetCalibrationParameters" href="AliPHOSClusterizerv1.h">GetCalibrationParameters</a>(<a href="ListOfTypes.html#Float_t">Float_t</a>& A, <a href="ListOfTypes.html#Float_t">Float_t</a>& B)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetEmcClusteringThreshold" href="AliPHOSClusterizerv1.h">GetEmcClusteringThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetEmcEnergyThreshold" href="AliPHOSClusterizerv1.h">GetEmcEnergyThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetLocalMaxCut" href="AliPHOSClusterizerv1.h">GetLocalMaxCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetLogWeightCut" href="AliPHOSClusterizerv1.h">GetLogWeightCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetPpsdClusteringThreshold" href="AliPHOSClusterizerv1.h">GetPpsdClusteringThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSClusterizerv1:GetPpsdEnergyThreshold" href="AliPHOSClusterizerv1.h">GetPpsdEnergyThreshold</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetCalibrationParameters" href="AliPHOSClusterizerv1.h">SetCalibrationParameters</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> A, <a href="ListOfTypes.html#Float_t">Float_t</a> B)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetEmcClusteringThreshold" href="AliPHOSClusterizerv1.h">SetEmcClusteringThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetEmcEnergyThreshold" href="AliPHOSClusterizerv1.h">SetEmcEnergyThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetLocalMaxCut" href="AliPHOSClusterizerv1.h">SetLocalMaxCut</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cut)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetLogWeightCut" href="AliPHOSClusterizerv1.h">SetLogWeightCut</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> w)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetPpsdClusteringThreshold" href="AliPHOSClusterizerv1.h">SetPpsdClusteringThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> cluth)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:SetPpsdEnergyThreshold" href="AliPHOSClusterizerv1.h">SetPpsdEnergyThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> enth)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSClusterizerv1:Class" href="AliPHOSClusterizerv1.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSClusterizerv1:IsA" href="AliPHOSClusterizerv1.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:ShowMembers" href="AliPHOSClusterizerv1.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:Streamer" href="AliPHOSClusterizerv1.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a> <a name="AliPHOSClusterizerv1:AliPHOSClusterizerv1" href="AliPHOSClusterizerv1.h">AliPHOSClusterizerv1</a>(<a href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSClusterizerv1:~AliPHOSClusterizerv1" href="AliPHOSClusterizerv1.h">~AliPHOSClusterizerv1</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSClusterizerv1_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 18:17:40 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 961 1114 1210 bf black [] 0 sd 3 lw 1132 1210 m -12 Y 498 X 955 Y -12 X -943 Y f [] 0 sd 3 lw 1114 1210 m 961 Y 504 X -961 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSClusterizer) /Helvetica-Bold 32 stwn gsave 1366 2121
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSClusterizer) show gr
+ gsave 1130 2073
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0.6 0.6 0.6 c
+ gsave 1130 1982
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Calibrate) show gr
+ gsave 1130 1946
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsInEmc) show gr
+ gsave 1130 1910
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNumberOfClustersFound) show gr
+ gsave 1130 1874
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCalibrationParameters) show gr
+ gsave 1130 1838
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcClusteringThreshold) show gr
+ gsave 1130 1801
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcEnergyThreshold) show gr
+ gsave 1130 1765
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalMaxCut) show gr
+ gsave 1130 1729
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLogWeightCut) show gr
+ gsave 1130 1693
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdClusteringThreshold) show gr
+ gsave 1130 1657
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdEnergyThreshold) show gr
+ gsave 1130 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeClusters) show gr
+ gsave 1130 1584
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PrintParameters) show gr
+ gsave 1130 1548
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetCalibrationParameters) show gr
+ gsave 1130 1512
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcClusteringThreshold) show gr
+ gsave 1130 1476
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcEnergyThreshold) show gr
+ gsave 1130 1440
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLocalMaxCut) show gr
+ gsave 1130 1403
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLogWeightCut) show gr
+ gsave 1130 1367
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdClusteringThreshold) show gr
+ gsave 1130 1331
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdEnergyThreshold) show gr
+ gsave 1130 1295
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1259
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1467 1690 704 bf black [] 0 sd 3 lw 1707 704 m -12 Y 498 X 1461 Y -12 X -1449 Y f [] 0 sd 3 lw 1690 704 m 1467 Y 503 X -1467 Y -503 X cl
+ s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSClusterizerv1) /Helvetica-Bold 32 stwn gsave 1941 2117
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSClusterizerv1) show gr
+ gsave 1705 2068
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fA) show gr
+ gsave 1705 2032
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fB) show gr
+ gsave 1705 1996
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcClusteringThreshold) show gr
+ gsave 1705 1960
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcEnergyThreshold) show gr
+ gsave 1705 1924
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocMaxCut) show gr
+ gsave 1705 1887
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNumberOfEmcClusters) show gr
+ gsave 1705 1851
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNumberOfPpsdClusters) show gr
+ gsave 1705 1815
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdClusteringThreshold) show gr
+ gsave 1705 1779
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdEnergyThreshold) show gr
+ gsave 1705 1743
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fW0) show gr
+ gsave 1705 1707
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1680 m 503 X s 0 0 1 c
+ gsave 1705 1616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSClusterizerv1) show gr
+ gsave 1705 1580
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AreNeighbours) show gr
+ gsave 1705 1544
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Calibrate) show gr
+ gsave 1705 1508
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FillandSort) show gr
+ gsave 1705 1471
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNumberOfClustersFound) show gr
+ gsave 1705 1435
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCalibrationParameters) show gr
+ gsave 1705 1399
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcClusteringThreshold) show gr
+ gsave 1705 1363
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcEnergyThreshold) show gr
+ gsave 1705 1327
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalMaxCut) show gr
+ gsave 1705 1290
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLogWeightCut) show gr
+ gsave 1705 1254
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdClusteringThreshold) show gr
+ gsave 1705 1218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdEnergyThreshold) show gr
+ gsave 1705 1182
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsInEmc) show gr
+ gsave 1705 1146
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeClusters) show gr
+ gsave 1705 1110
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PrintParameters) show gr
+ gsave 1705 1073
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetCalibrationParameters) show gr
+ gsave 1705 1037
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcClusteringThreshold) show gr
+ gsave 1705 1001
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEmcEnergyThreshold) show gr
+ gsave 1705 965
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLocalMaxCut) show gr
+ gsave 1705 929
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLogWeightCut) show gr
+ gsave 1705 892
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdClusteringThreshold) show gr
+ gsave 1705 856
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPpsdEnergyThreshold) show gr
+ gsave 1705 820
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 784
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 748
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1705 712
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSDIGIT_H
+#define ALIPHOSDIGIT_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// PHOS digit: Id
+// energy
+// 3 identifiers for the primary particle(s) at the origine of the digit
+// The digits are made in FinishEvent() by summing all the hits in a single PHOS crystal or PPSD gas cell
+// It would be nice to replace the 3 identifiers by an array, but, because digits are kept in a TClonesQArray,
+// it is not possible to stream such an array... (beyond my understqnding!)
+//
+//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliDigitNew.h"
+
+class AliPHOSDigit : public AliDigitNew {
+
+public:
+
+ AliPHOSDigit() ;
+ AliPHOSDigit(Int_t primary, Int_t id, Int_t DigEnergy) ;
+ AliPHOSDigit(const AliPHOSDigit & digit) ;
+ virtual ~AliPHOSDigit(){}
+
+ Bool_t operator==(AliPHOSDigit const &rValue) const;
+ AliPHOSDigit& operator+(AliPHOSDigit const &rValue) ;
+
+ friend ostream& operator << ( ostream& , const AliPHOSDigit&) ;
+
+ Int_t Compare(TObject * obj) ;
+ Int_t GetNprimary() const { return fNprimary ; }
+ Int_t GetPrimary(Int_t index) const ;
+ Bool_t IsSortable() const { return kTRUE ; }
+ void SetAmp(Int_t Amp) { fAmp=Amp ; }
+
+private:
+
+ Int_t fPrimary1 ; // first primary (because I do not know how to stream *fPrimary)
+ Int_t fPrimary2 ; // second primary (because I do not know how to stream *fPrimary)
+ Int_t fPrimary3 ; // third primary (because I do not know how to stream *fPrimary)
+ Int_t fNprimary ; // Number of primaries
+
+ ClassDef(AliPHOSDigit,1) // Digit in PHOS
+
+} ;
+
+#endif // ALIPHOSDIGIT_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSDigit</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSDigit</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSDigit:description>class description</a> - <a href="src/AliPHOSDigit.cxx.html">source file</a> - <a href="AliPHOSDigit_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSDigit" href="AliPHOSDigit.h">AliPHOSDigit</a> : public AliDigitNew</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSDigit.html">AliPHOSDigit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSDigit.html">AliPHOSDigit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Int_t">Int_t</a> DigEnergy)
+<!--TAB6--> <a href="./AliPHOSDigit.html">AliPHOSDigit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a><!--PLAIN-->(const <a href="./AliPHOSDigit.html">AliPHOSDigit</a>& digit)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:~AliPHOSDigit">~AliPHOSDigit</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:Compare">Compare</a><!--PLAIN-->(TObject* obj)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:GetNprimary">GetNprimary</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:GetPrimary">GetPrimary</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:IsSortable">IsSortable</a><!--PLAIN-->() const
+<!--TAB6--> <a href="./AliPHOSDigit.html">AliPHOSDigit</a>& <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:operator+">operator+</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> const& rValue)
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:operator==">operator==</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> const& rValue) const
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:SetAmp">SetAmp</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSDigit:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSDigit:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSDigit:fPrimary1">fPrimary1</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPrimary1">first primary (because I do not know how to stream *fPrimary) </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSDigit:fPrimary2">fPrimary2</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPrimary2">second primary (because I do not know how to stream *fPrimary) </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSDigit:fPrimary3">fPrimary3</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPrimary3">third primary (because I do not know how to stream *fPrimary) </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSDigit:fNprimary">fNprimary</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNprimary">Number of primaries</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSDigit:description">Class Description</a></h2>
+<pre> PHOS digit: Id
+ energy
+ 3 identifiers for the primary particle(s) at the origine of the digit
+ The digits are made in FinishEvent() by summing all the hits in a single PHOS crystal or PPSD gas cell
+ It would be nice to replace the 3 identifiers by an array, but, because digits are kept in a TClonesQArray,
+ it is not possible to stream such an array... (beyond my understqnding!)
+
+*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSDigit:AliPHOSDigit" href="src/AliPHOSDigit.cxx.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a>()
+<br>
+<pre> default ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSDigit:AliPHOSDigit" href="src/AliPHOSDigit.cxx.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Int_t">Int_t</a> DigEnergy)
+<br>
+<pre> ctor with all data
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSDigit:AliPHOSDigit" href="src/AliPHOSDigit.cxx.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit</a>(const <a href="./AliPHOSDigit.html">AliPHOSDigit</a> & digit)
+<br>
+<pre> copy ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSDigit:Compare" href="src/AliPHOSDigit.cxx.html#AliPHOSDigit:Compare">Compare</a>(TObject * obj)
+<br>
+<pre> Compares two digits with respect to its Id
+ to sort according increasing Id
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSDigit:GetPrimary" href="src/AliPHOSDigit.cxx.html#AliPHOSDigit:GetPrimary">GetPrimary</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<br>
+<pre> Returns the primary particle id index =1,2,3
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSDigit:operator==" href="AliPHOSDigit.h">operator==</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> const& rValue) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSDigit.html">AliPHOSDigit</a>& <a name="AliPHOSDigit:operator+" href="AliPHOSDigit.h">operator+</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> const& rValue)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSDigit:GetNprimary" href="AliPHOSDigit.h">GetNprimary</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSDigit:IsSortable" href="AliPHOSDigit.h">IsSortable</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSDigit:SetAmp" href="AliPHOSDigit.h">SetAmp</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> Amp)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSDigit:Class" href="AliPHOSDigit.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSDigit:IsA" href="AliPHOSDigit.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSDigit:ShowMembers" href="AliPHOSDigit.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSDigit:Streamer" href="AliPHOSDigit.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSDigit:~AliPHOSDigit" href="AliPHOSDigit.h">~AliPHOSDigit</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSDigit_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 18:38:38 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0 0 1 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 491 1114 1680 bf black [] 0 sd 3 lw 1132 1680 m -11 Y 498 X 484 Y -12 X -473 Y f [] 0 sd 3 lw 1114 1680 m 491 Y 504 X -491 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliDigitNew) /Helvetica-Bold 32 stwn gsave 1366 2125
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliDigitNew) show gr
+ gsave 1130 2077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fId) show gr
+ gsave 1130 2041
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fAmp) show gr
+ gsave 1130 2004
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1970 m 504 X s 0 0 1 c
+ gsave 1130 1914
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliDigitNew) show gr
+ gsave 1130 1878
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetAmp) show gr
+ gsave 1130 1842
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetId) show gr 0.6 0.6 0.6 c
+ gsave 1130 1805
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1769
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1733
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1697
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 780 1690 1391 bf black [] 0 sd 3 lw 1707 1391 m -12 Y 498 X 774 Y -12 X -762 Y f [] 0 sd 3 lw 1690 1391 m 780 Y 503 X -780 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSDigit) /Helvetica-Bold 32 stwn gsave 1941 2123
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSDigit) show gr
+ gsave 1705 2074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPrimary1) show gr
+ gsave 1705 2038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPrimary2) show gr
+ gsave 1705 2002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPrimary3) show gr
+ gsave 1705 1966
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNprimary) show gr
+ gsave 1705 1930
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1897 m 503 X s 0 0 1 c
+ gsave 1705 1839
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSDigit) show gr
+ gsave 1705 1803
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSDigit) show gr
+ gsave 1705 1767
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSDigit) show gr
+ gsave 1705 1731
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator==) show gr
+ gsave 1705 1694
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator+) show gr
+ gsave 1705 1658
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 1705 1622
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNprimary) show gr
+ gsave 1705 1586
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimary) show gr
+ gsave 1705 1550
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetAmp) show gr
+ gsave 1705 1477
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1441
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1405
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSEMCRECPOINT_H
+#define ALIPHOSEMCRECPOINT_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// RecPoint implementation for PHOS-EMC
+// An EmcRecPoint is a cluster of digits
+//
+//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSDigit.h"
+#include "AliPHOSRecPoint.h"
+
+class AliPHOSEmcRecPoint : public AliPHOSRecPoint {
+
+public:
+
+ AliPHOSEmcRecPoint(){} ;
+ AliPHOSEmcRecPoint(Float_t W0, Float_t LocMaxCut) ;
+ virtual ~AliPHOSEmcRecPoint(){}
+
+ void AddDigit(AliDigitNew & digit, Float_t Energy) ; // add a digit to the digits list
+ Int_t Compare(TObject * obj) ; // method for sorting
+
+ Float_t GetDelta (){ return fDelta ; }
+ Float_t GetDispersion() ; // computes the dispersion of the shower
+ void GetElipsAxis(Float_t * lambda) ; // computes the axis of shower ellipsoide
+ Float_t * GetEnergiesList(){return fEnergyList ;}
+ virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) ;
+ Float_t GetLocMaxCut () {return fLocMaxCut ; }
+ Float_t GetLogWeightCut (){return fW0 ; }
+ Float_t GetMaximalEnergy(void) ; // get the highest energy in the cluster
+ Int_t GetMaximumMultiplicity() { return fMaxDigit ; }
+ Int_t GetMultiplicity(void) const { return fMulDigit ; }
+ Int_t GetMultiplicityAtLevel(const Float_t level) ; // computes multiplicity of digits with energy above relative level
+ Int_t GetNumberOfLocalMax(Int_t * maxAt, Float_t * maxAtEnergy) ; // searches for the local maxima
+
+ Float_t GetTotalEnergy(void) const { return fAmp ; } // in EMC RecPoint Amp = Energy
+ void GetLocalPosition(TVector3 &Lpos) ; // computes the position in the PHOS module
+ Bool_t IsEmc(void) {return kTRUE ; }
+ Bool_t IsSortable() const { return kTRUE ; }
+ void Print(Option_t * opt = "void") ;
+
+private:
+
+ Bool_t AreNeighbours(AliPHOSDigit * digit1, AliPHOSDigit * digit2 ) ;
+
+ Float_t fDelta ; // parameter used to sort the clusters
+ Float_t fLocMaxCut ; // minimum energy difference to distinguish two maxima
+ Float_t * fEnergyList ; // energy of digits
+ Float_t fW0 ; // logarithmic weight factor for center of gravity calculation
+
+ ClassDef(AliPHOSEmcRecPoint,1) // EMC RecPoint (cluster)
+
+};
+
+#endif // AliPHOSEMCRECPOINT_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSEmcRecPoint</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSEmcRecPoint</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSEmcRecPoint:description>class description</a> - <a href="src/AliPHOSEmcRecPoint.cxx.html">source file</a> - <a href="AliPHOSEmcRecPoint_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSEmcRecPoint" href="AliPHOSEmcRecPoint.h">AliPHOSEmcRecPoint</a> : public <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a></h2>
+<pre>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:AreNeighbours">AreNeighbours</a><!--PLAIN-->(<a href="./AliPHOSDigit.html">AliPHOSDigit</a>* digit1, <a href="./AliPHOSDigit.html">AliPHOSDigit</a>* digit2)
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:AliPHOSEmcRecPoint">AliPHOSEmcRecPoint</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:AliPHOSEmcRecPoint">AliPHOSEmcRecPoint</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> W0, <a href="ListOfTypes.html#Float_t">Float_t</a> LocMaxCut)
+<!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:AliPHOSEmcRecPoint">AliPHOSEmcRecPoint</a><!--PLAIN-->(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:~AliPHOSEmcRecPoint">~AliPHOSEmcRecPoint</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:AddDigit">AddDigit</a><!--PLAIN-->(AliDigitNew& digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:Compare">Compare</a><!--PLAIN-->(TObject* obj)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:ExecuteEvent">ExecuteEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetDelta">GetDelta</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetDispersion">GetDispersion</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetElipsAxis">GetElipsAxis</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a>* lambda)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetEnergiesList">GetEnergiesList</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a><!--PLAIN-->(TVector3& Lpos)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetLocMaxCut">GetLocMaxCut</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetLogWeightCut">GetLogWeightCut</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetMaximalEnergy">GetMaximalEnergy</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetMaximumMultiplicity">GetMaximumMultiplicity</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetMultiplicity">GetMultiplicity</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetMultiplicityAtLevel">GetMultiplicityAtLevel</a><!--PLAIN-->(const <a href="ListOfTypes.html#Float_t">Float_t</a> level)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetNumberOfLocalMax">GetNumberOfLocalMax</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>* maxAt, <a href="ListOfTypes.html#Float_t">Float_t</a>* maxAtEnergy)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:GetTotalEnergy">GetTotalEnergy</a><!--PLAIN-->() const
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:IsEmc">IsEmc</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:IsSortable">IsSortable</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:Print">Print</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt = <a href="ListOfTypes.html#void">void</a>)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSEmcRecPoint:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSEmcRecPoint:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSEmcRecPoint:fDelta">fDelta</a><!--PLAIN--> <!--TAB--><i><a name="Title:fDelta">parameter used to sort the clusters </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLocMaxCut">minimum energy difference to distinguish two maxima </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a>* <!--TAB--><!--BOLD--><a name="AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEnergyList">energy of digits</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSEmcRecPoint:fW0">fW0</a><!--PLAIN--> <!--TAB--><i><a name="Title:fW0">logarithmic weight factor for center of gravity calculation</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSEmcRecPoint:description">Class Description</a></h2>
+<pre> RecPoint implementation for PHOS-EMC
+ An EmcRecPoint is a cluster of digits
+
+*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSEmcRecPoint:AliPHOSEmcRecPoint" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:AliPHOSEmcRecPoint">AliPHOSEmcRecPoint</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> W0, <a href="ListOfTypes.html#Float_t">Float_t</a> LocMaxCut)
+ : <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a>()
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:AddDigit" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:AddDigit">AddDigit</a>(AliDigitNew & digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<br>
+<pre> Adds a digit to the RecPoint
+ and accumulates the total amplitude and the multiplicity
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSEmcRecPoint:AreNeighbours" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:AreNeighbours">AreNeighbours</a>(<a href="./AliPHOSDigit.html">AliPHOSDigit</a> * digit1, <a href="./AliPHOSDigit.html">AliPHOSDigit</a> * digit2 )
+<br>
+<pre> Tells if (true) or not (false) two digits are neighbors)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSEmcRecPoint:Compare" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:Compare">Compare</a>(TObject * obj)
+<br>
+<pre> Compares two RecPoints according to their position in the PHOS modules
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:ExecuteEvent" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:ExecuteEvent">ExecuteEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Execute action corresponding to one event
+ This member function is called when a <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> is clicked with the locator
+
+ If Left button is clicked on <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on
+ and switched off when the mouse button is released.
+
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetDispersion" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetDispersion">GetDispersion</a>()
+<br>
+<pre> Calculates the dispersion of the shower at the origine of the RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:GetElipsAxis" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetElipsAxis">GetElipsAxis</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> * lambda)
+<br>
+<pre> Calculates the axis of the shower ellipsoid
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:GetLocalPosition" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(TVector3 &LPos)
+<br>
+<pre> Calculates the center of gravity in the local PHOS-module coordinates
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetMaximalEnergy" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetMaximalEnergy">GetMaximalEnergy</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Finds the maximum energy in the cluster
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSEmcRecPoint:GetMultiplicityAtLevel" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetMultiplicityAtLevel">GetMultiplicityAtLevel</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> H)
+<br>
+<pre> Calculates the multiplicity of digits with energy larger than H*energy
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSEmcRecPoint:GetNumberOfLocalMax" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:GetNumberOfLocalMax">GetNumberOfLocalMax</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> * maxAt, <a href="ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy)
+<br>
+<pre> Calculates the number of local maxima in the cluster using fLocalMaxCut as the minimum
+ energy difference between two local maxima
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:Print" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:Print">Print</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> * option)
+<br>
+<pre> Print the list of digits belonging to the cluster
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:Streamer" href="src/AliPHOSEmcRecPoint.cxx.html#AliPHOSEmcRecPoint:Streamer">Streamer</a>(TBuffer &R__b)
+<br>
+<pre> Stream an object of class <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>.
+ Needed because of the array <a href="./AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> <a name="AliPHOSEmcRecPoint:AliPHOSEmcRecPoint" href="AliPHOSEmcRecPoint.h">AliPHOSEmcRecPoint</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> W0, <a href="ListOfTypes.html#Float_t">Float_t</a> LocMaxCut)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetDelta" href="AliPHOSEmcRecPoint.h">GetDelta</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a>* <a name="AliPHOSEmcRecPoint:GetEnergiesList" href="AliPHOSEmcRecPoint.h">GetEnergiesList</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetLocMaxCut" href="AliPHOSEmcRecPoint.h">GetLocMaxCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetLogWeightCut" href="AliPHOSEmcRecPoint.h">GetLogWeightCut</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSEmcRecPoint:GetMaximumMultiplicity" href="AliPHOSEmcRecPoint.h">GetMaximumMultiplicity</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSEmcRecPoint:GetMultiplicity" href="AliPHOSEmcRecPoint.h">GetMultiplicity</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSEmcRecPoint:GetTotalEnergy" href="AliPHOSEmcRecPoint.h">GetTotalEnergy</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSEmcRecPoint:IsEmc" href="AliPHOSEmcRecPoint.h">IsEmc</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSEmcRecPoint:IsSortable" href="AliPHOSEmcRecPoint.h">IsSortable</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSEmcRecPoint:Class" href="AliPHOSEmcRecPoint.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSEmcRecPoint:IsA" href="AliPHOSEmcRecPoint.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:ShowMembers" href="AliPHOSEmcRecPoint.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> <a name="AliPHOSEmcRecPoint:AliPHOSEmcRecPoint" href="AliPHOSEmcRecPoint.h">AliPHOSEmcRecPoint</a>(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSEmcRecPoint:~AliPHOSEmcRecPoint" href="AliPHOSEmcRecPoint.h">~AliPHOSEmcRecPoint</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSEmcRecPoint_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 18:58:39 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0 0 1 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1070 1114 1101 bf black [] 0 sd 3 lw 1132 1101 m -11 Y 498 X 1063 Y -12 X -1052 Y f [] 0 sd 3 lw 1114 1101 m 1070 Y 504 X -1070 Y -504 X
+ cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliRecPoint) /Helvetica-Bold 32 stwn gsave 1366 2120
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliRecPoint) show gr
+ gsave 1130 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fAmp) show gr
+ gsave 1130 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigitsList) show gr
+ gsave 1130 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 1130 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPos) show gr
+ gsave 1130 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPosM) show gr
+ gsave 1130 1891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxDigit) show gr
+ gsave 1130 1855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulDigit) show gr
+ gsave 1130 1819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxTrack) show gr
+ gsave 1130 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulTrack) show gr
+ gsave 1130 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTracksList) show gr
+ gsave 1130 1710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1680 m 504 X s 0.6 0.6 0.6 c
+ gsave 1130 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0 0 1 c
+ gsave 1130 1583
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCovarianceMatrix) show gr
+ gsave 1130 1547
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeom) show gr
+ gsave 1130 1511
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGlobalPosition) show gr
+ gsave 1130 1475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsList) show gr
+ gsave 1130 1439
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergy) show gr 0.6 0.6 0.6 c
+ gsave 1130 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalPosition) show gr 0 0 1 c
+ gsave 1130 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsMultiplicity) show gr
+ gsave 1130 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumDigitMultiplicity) show gr
+ gsave 1130 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumTrackMultiplicity) show gr
+ gsave 1130 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTracksMultiplicity) show gr 0.6 0.6 0.6 c
+ gsave 1130 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1130 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1113
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 708 1690 1463 bf black [] 0 sd 3 lw 1707 1463 m -11 Y 498 X 701 Y -12 X -690 Y f [] 0 sd 3 lw 1690 1463 m 708 Y 503 X -708 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSRecPoint) /Helvetica-Bold 32 stwn gsave 1941 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecPoint) show gr
+ gsave 1705 2075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPHOSMod) show gr
+ gsave 1705 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2006 m 503 X s 0.6 0.6 0.6 c
+ gsave 1705 1948
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0 0 1 c
+ gsave 1705 1912
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1705 1876
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0.6 0.6 0.6 c
+ gsave 1705 1840
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 1705 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPHOSMod) show gr
+ gsave 1705 1767
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimaries) show gr 0.6 0.6 0.6 c
+ gsave 1705 1731
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEmc) show gr 0 0 1 c
+ gsave 1705 1695
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0.6 0.6 0.6 c
+ gsave 1705 1659
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1705 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 1705 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 1705 1550
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1478
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1250 2265 921 bf black [] 0 sd 3 lw 2283 921 m -12 Y 497 X 1244 Y -12 X -1232 Y f [] 0 sd 3 lw 2265 921 m 1250 Y 503 X -1250 Y -503 X cl
+ s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2268 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSEmcRecPoint) /Helvetica-Bold 32 stwn gsave 2517 2119
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSEmcRecPoint) show gr
+ gsave 2280 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDelta) show gr
+ gsave 2280 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocMaxCut) show gr
+ gsave 2280 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEnergyList) show gr
+ gsave 2280 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fW0) show gr
+ gsave 2280 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2265 1897 m 503 X s 0 0 1 c
+ gsave 2280 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSEmcRecPoint) show gr
+ gsave 2280 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSEmcRecPoint) show gr
+ gsave 2280 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr
+ gsave 2280 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 2280 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDelta) show gr
+ gsave 2280 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDispersion) show gr
+ gsave 2280 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetElipsAxis) show gr
+ gsave 2280 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergiesList) show gr
+ gsave 2280 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 2280 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocMaxCut) show gr
+ gsave 2280 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLogWeightCut) show gr
+ gsave 2280 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximalEnergy) show gr
+ gsave 2280 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumMultiplicity) show gr
+ gsave 2280 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMultiplicity) show gr
+ gsave 2280 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMultiplicityAtLevel) show gr
+ gsave 2280 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNumberOfLocalMax) show gr
+ gsave 2280 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTotalEnergy) show gr
+ gsave 2280 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalPosition) show gr
+ gsave 2280 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEmc) show gr
+ gsave 2280 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 2280 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 2280 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AreNeighbours) show gr
+ gsave 2280 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2280 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2280 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 2280 931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSFASTRECPARTICLE_H
+#define ALIPHOSFASTRECPARTICLE_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// A Particle modified by PHOS response and produced by AliPHOSvFast
+// To become a general class of AliRoot ?
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TParticle.h"
+#include "TVector3.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+typedef TClonesArray FastRecParticlesList ;
+
+const static Int_t kUNDEFINED = -1;
+const static Int_t kGAMMA = 0 ;
+const static Int_t kELECTRON = 1 ;
+const static Int_t kNEUTRAL = 2 ;
+const static Int_t kCHARGED = 3 ;
+const static Int_t kCHARGEDHADRON = 4 ;
+const static Int_t kNEUTRALHADRON = 5 ;
+const static Int_t kNEUTRALEM = 6 ;
+const static Int_t kGAMMAHADRON = 7 ;
+
+
+class AliPHOSFastRecParticle : public TParticle {
+
+public:
+
+ AliPHOSFastRecParticle() {}; // ctor
+ AliPHOSFastRecParticle(const AliPHOSFastRecParticle & rp) ; // ctor
+ AliPHOSFastRecParticle(const TParticle & p) ; // ctor
+ virtual ~AliPHOSFastRecParticle(){} // dtor
+
+ virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) ;
+ virtual void Draw(Option_t *option) ;
+ virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) ;
+ virtual Int_t * GetPrimaries(Int_t & number) ;
+ Int_t GetType() { return fType ; }
+ TString Name() ;
+ virtual void Paint(Option_t * option="");
+ void Print() ;
+ void SetPrimary(Int_t index) { fPrimary = index ; }
+ void SetType(Int_t type) { fType = type ; }
+
+protected:
+
+ Int_t fType ; // particle type obtained by "virtual" reconstruction
+ Int_t fPrimary ; // (unique) primary particle index
+
+ ClassDef(AliPHOSFastRecParticle,1) // Reconstructed Particle produced by the fast simulation
+
+};
+
+#endif // AliPHOSFASTRECPARTICLE_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:55 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSFastRecParticle</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSFastRecParticle</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSFastRecParticle:description>class description</a> - <a href="src/AliPHOSFastRecParticle.cxx.html">source file</a> - <a href="AliPHOSFastRecParticle_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSFastRecParticle" href="AliPHOSFastRecParticle.h">AliPHOSFastRecParticle</a> : public TParticle</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle</a><!--PLAIN-->(const <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>& rp)
+<!--TAB6--> <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle</a><!--PLAIN-->(const TParticle& p)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:~AliPHOSFastRecParticle">~AliPHOSFastRecParticle</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:DistancetoPrimitive">DistancetoPrimitive</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Draw">Draw</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:ExecuteEvent">ExecuteEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:GetPrimaries">GetPrimaries</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:GetType">GetType</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> TString <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Name">Name</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Paint">Paint</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Print">Print</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:SetPrimary">SetPrimary</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:SetType">SetType</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> type)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSFastRecParticle:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSFastRecParticle:Data Members">Data Members</a></h3>
+
+<!--TAB4--> <b>protected:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSFastRecParticle:fType">fType</a><!--PLAIN--> <!--TAB--><i><a name="Title:fType">particle type obtained by "virtual" reconstruction</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSFastRecParticle:fPrimary">fPrimary</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPrimary">(unique) primary particle index </a></i>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSFastRecParticle:description">Class Description</a></h2>
+<pre> A Particle modified by PHOS response and produced by <a href="./AliPHOSvFast.html">AliPHOSvFast</a>
+ To become a general class of AliRoot ?
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSFastRecParticle:AliPHOSFastRecParticle" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle</a>(const <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+<br>
+<pre> copy ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSFastRecParticle:AliPHOSFastRecParticle" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle</a>(const TParticle & pp)
+<br>
+<pre> ctor from a TParticle (crummy?!)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSFastRecParticle:DistancetoPrimitive" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:DistancetoPrimitive">DistancetoPrimitive</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Compute distance from point px,py to a <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> considered as a Tmarker
+ Compute the closest distance of approach from point px,py to this marker.
+ The distance is computed in pixels units.
+</pre><hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:Draw" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:Draw">Draw</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *option)
+ <br>
+<pre> Draw this <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> with its current attributes
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:ExecuteEvent" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:ExecuteEvent">ExecuteEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Execute action corresponding to one event
+ This member function is called when a <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> is clicked with the locator
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSFastRecParticle:GetPrimaries" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:GetPrimaries">GetPrimaries</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Retrieves the unique primary particle at the origine of the present reconstruced particle
+</pre><hr>
+<!--FUNCTION-->TString <a name="AliPHOSFastRecParticle:Name" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:Name">Name</a>()
+<br>
+<pre> Returns the name of the particle type
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:Paint" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:Paint">Paint</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *)
+<br>
+<pre> Paint this ALiRecParticle in theta,phi coordinate as a TMarker with its current attributes
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:Print" href="src/AliPHOSFastRecParticle.cxx.html#AliPHOSFastRecParticle:Print">Print</a>()
+<br>
+<pre> Print the typr, energy and momentum
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> <a name="AliPHOSFastRecParticle:AliPHOSFastRecParticle" href="AliPHOSFastRecParticle.h">AliPHOSFastRecParticle</a>(const TParticle& p)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSFastRecParticle:GetType" href="AliPHOSFastRecParticle.h">GetType</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:SetPrimary" href="AliPHOSFastRecParticle.h">SetPrimary</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:SetType" href="AliPHOSFastRecParticle.h">SetType</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> type)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSFastRecParticle:Class" href="AliPHOSFastRecParticle.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSFastRecParticle:IsA" href="AliPHOSFastRecParticle.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:ShowMembers" href="AliPHOSFastRecParticle.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:Streamer" href="AliPHOSFastRecParticle.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSFastRecParticle:~AliPHOSFastRecParticle" href="AliPHOSFastRecParticle.h">~AliPHOSFastRecParticle</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSFastRecParticle_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Sun Mar 12 00:45:55 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr 0.6 0.6 0.6 c
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr 0 0 1 c
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr 0.6 0.6 0.6 c
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr 0 0 1 c
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1576 1114 595 bf black [] 0 sd 3 lw 1132 595 m -12 Y 1001 X 1570 Y -12 X -1558 Y f [] 0 sd 3 lw 1114 595 m 1576 Y 1007 X -1576 Y -1007
+ X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TParticle) /Helvetica-Bold 32 stwn gsave 1618 2116
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TParticle) show gr
+ gsave 1145 2067
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPdgCode) show gr
+ gsave 1145 2031
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fStatusCode) show gr
+ gsave 1145 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMother[2]) show gr
+ gsave 1145 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDaughter[2]) show gr
+ gsave 1145 1923
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fWeight) show gr
+ gsave 1145 1886
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fCalcMass) show gr
+ gsave 1145 1850
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPx) show gr
+ gsave 1145 1814
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPy) show gr
+ gsave 1145 1778
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPz) show gr
+ gsave 1145 1742
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fE) show gr
+ gsave 1648 2067
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fVx) show gr
+ gsave 1648 2031
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fVy) show gr
+ gsave 1648 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fVz) show gr
+ gsave 1648 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fVt) show gr
+ gsave 1648 1923
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPolarTheta) show gr
+ gsave 1648 1886
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPolarPhi) show gr
+ gsave 1648 1850
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fParticlePDG) show gr
+ gsave 1648 1814
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1753 m 1007 X s 0 0 1 c
+ gsave 1145 1687
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TParticle) show gr
+ gsave 1145 1651
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TParticle) show gr
+ gsave 1145 1615
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TParticle) show gr
+ gsave 1145 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetStatusCode) show gr
+ gsave 1145 1543
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPdgCode) show gr
+ gsave 1145 1507
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetFirstMother) show gr
+ gsave 1145 1470
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMother) show gr
+ gsave 1145 1434
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetSecondMother) show gr
+ gsave 1145 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetFirstDaughter) show gr
+ gsave 1145 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDaughter) show gr
+ gsave 1145 1326
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLastDaughter) show gr
+ gsave 1145 1289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCalcMass) show gr
+ gsave 1145 1253
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMass) show gr
+ gsave 1145 1217
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNDaughters) show gr
+ gsave 1145 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPolarisation) show gr
+ gsave 1145 1145
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetWeight) show gr
+ gsave 1145 1109
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPDG) show gr
+ gsave 1145 1072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Beauty) show gr
+ gsave 1145 1036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Charm) show gr
+ gsave 1145 1000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Strangeness) show gr
+ gsave 1145 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Momentum) show gr
+ gsave 1145 928
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ProductionVertex) show gr
+ gsave 1145 892
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Vx) show gr
+ gsave 1145 855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Vy) show gr
+ gsave 1145 819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Vz) show gr
+ gsave 1145 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (T) show gr
+ gsave 1145 747
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Px) show gr
+ gsave 1145 711
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Py) show gr
+ gsave 1145 674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pz) show gr
+ gsave 1145 638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (P) show gr
+ gsave 1145 602
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pt) show gr
+ gsave 1648 1687
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Energy) show gr
+ gsave 1648 1651
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Eta) show gr
+ gsave 1648 1615
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Phi) show gr
+ gsave 1648 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Theta) show gr
+ gsave 1648 1543
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetFirstMother) show gr
+ gsave 1648 1507
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMother) show gr
+ gsave 1648 1470
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLastMother) show gr
+ gsave 1648 1434
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetFirstDaughter) show gr
+ gsave 1648 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDaughter) show gr
+ gsave 1648 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLastDaughter) show gr
+ gsave 1648 1326
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetCalcMass) show gr
+ gsave 1648 1289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPolarisation) show gr
+ gsave 1648 1253
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPolarisation) show gr
+ gsave 1648 1217
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetWeight) show gr
+ gsave 1648 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMomentum) show gr
+ gsave 1648 1145
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMomentum) show gr
+ gsave 1648 1109
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetProductionVertex) show gr
+ gsave 1648 1072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetProductionVertex) show gr 0.6 0.6 0.6 c
+ gsave 1648 1036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 1648 1000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 1648 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Sizeof3D) show gr 0.6 0.6 0.6 c
+ gsave 1648 928
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1648 892
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 1648 855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 1648 819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr 0.6 0.6 0.6 c
+ gsave 1648 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1648 747
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1648 711
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1648 674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 450 1114 113 bf black [] 0 sd 3 lw 1132 113 m -12 Y 1001 X 444 Y -12 X -432 Y f [] 0 sd 3 lw 1114 113 m 450 Y 1007 X -450 Y -1007 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 1117 507 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 507 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttLine) /Helvetica-Bold 32 stwn gsave 1618 518
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 1145 473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineColor) show gr
+ gsave 1145 445
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineStyle) show gr
+ gsave 1145 417
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineWidth) show gr
+ gsave 1648 473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 422 m 1007 X s 0 0 1 c
+ gsave 1145 375
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 1145 347
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 1145 318
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 1145 290
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoLine) show gr
+ gsave 1145 262
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineColor) show gr
+ gsave 1145 234
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineStyle) show gr
+ gsave 1145 206
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineWidth) show gr
+ gsave 1145 178
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 1145 150
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttLine) show gr
+ gsave 1145 121
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveLineAttributes) show gr
+ gsave 1648 375
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineAttributes) show gr
+ gsave 1648 347
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineColor) show gr
+ gsave 1648 318
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineStyle) show gr
+ gsave 1648 290
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineWidth) show gr
+ gsave 1648 262
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1648 234
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1648 206
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1648 178
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 224 1114 -144 bf black [] 0 sd 3 lw 2133 0 m 63 Y -12 X -63 Y f [] 0 sd 3 lw 1114 0 m 80 Y s [] 0 sd 3 lw 1114 80 m 1007 X -80 Y s [] 0 sd
+ 3 lw 0.8 0.8 0.8 c 1004 55 1117 25 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 24 m 1007 X s 0 0 1 c
+ /xs 0 def (TAtt3D) /Helvetica-Bold 32 stwn gsave 1618 37
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAtt3D) show gr
+ gsave 1145 -6
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw 0 0 1 c
+ gsave 0 -48
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAtt3D) show gr
+ gsave 0 -77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Sizeof3D) show gr
+ gsave 0 -105
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 0 -133
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 0 -48
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 0 -77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 816 2193 1355 bf black [] 0 sd 3 lw 2211 1355 m -12 Y 497 X 810 Y -12 X -798 Y f [] 0 sd 3 lw 2193 1355 m 816 Y 503 X -816 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2196 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2193 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSFastRecParticle) /Helvetica-Bold 32 stwn gsave 2445 2123
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 2208 2074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fType) show gr
+ gsave 2208 2038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPrimary) show gr
+ gsave 2208 2002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2193 1970 m 503 X s 0 0 1 c
+ gsave 2208 1911
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 2208 1875
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 2208 1839
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 2208 1803
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 2208 1766
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 2208 1730
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 2208 1694
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimaries) show gr
+ gsave 2208 1658
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetType) show gr
+ gsave 2208 1622
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Name) show gr
+ gsave 2208 1586
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 2208 1549
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 2208 1513
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetPrimary) show gr
+ gsave 2208 1477
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetType) show gr
+ gsave 2208 1441
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2208 1405
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2208 1368
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSGeometry</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSGeometry</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSGeometry:description>class description</a> - <a href="src/AliPHOSGeometry.cxx.html">source file</a> - <a href="AliPHOSGeometry_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSGeometry" href="AliPHOSGeometry.h">AliPHOSGeometry</a> : public AliGeometry</h2>
+<pre>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:SetPHOSAngles">SetPHOSAngles</a><!--PLAIN-->()
+
+<!--TAB4--> <b>protected:</b><br>
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:AliPHOSGeometry">AliPHOSGeometry</a><!--PLAIN-->(const <a href="ListOfTypes.html#Text_t">Text_t</a>* name, const <a href="ListOfTypes.html#Text_t">Text_t</a>* title)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:Init">Init</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:InitPHOS">InitPHOS</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:InitPPSD">InitPPSD</a><!--PLAIN-->()
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:AliPHOSGeometry">AliPHOSGeometry</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:AliPHOSGeometry">AliPHOSGeometry</a><!--PLAIN-->(<a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:~AliPHOSGeometry">~AliPHOSGeometry</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a> AbsId, <a href="ListOfTypes.html#Int_t">Int_t</a>* RelId)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a> m, <a href="ListOfTypes.html#Double_t">Double_t</a>& tm, <a href="ListOfTypes.html#Double_t">Double_t</a>& tM, <a href="ListOfTypes.html#Double_t">Double_t</a>& pm, <a href="ListOfTypes.html#Double_t">Double_t</a>& pM, <a href="ListOfTypes.html#Option_t">Option_t</a>* opt = kRadian)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:EmcXtalCoverage">EmcXtalCoverage</a><!--PLAIN-->(<a href="ListOfTypes.html#Double_t">Double_t</a>& theta, <a href="ListOfTypes.html#Double_t">Double_t</a>& phi, <a href="ListOfTypes.html#Option_t">Option_t</a>* opt = kRadian)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetConversionGap">GetConversionGap</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetGlobal">GetGlobal</a><!--PLAIN-->(const AliRecPoint* RecPoint, TVector3& gpos, TMatrix& gmat)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetGlobal">GetGlobal</a><!--PLAIN-->(const AliRecPoint* RecPoint, TVector3& gpos)
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetInstance">GetInstance</a><!--PLAIN-->(const <a href="ListOfTypes.html#Text_t">Text_t</a>* name, const <a href="ListOfTypes.html#Text_t">Text_t</a>* title)
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetInstance">GetInstance</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetIPtoTopLidDistance">GetIPtoTopLidDistance</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetLidThickness">GetLidThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetLowerTextolitPlateThickness">GetLowerTextolitPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetLowerThermoPlateThickness">GetLowerThermoPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNModules">GetNModules</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetNZ">GetNZ</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetOuterBoxThickness">GetOuterBoxThickness</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPCThickness">GetPCThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPhiDisplacement">GetPhiDisplacement</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPinDiodeSize">GetPinDiodeSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetSupportPlateThickness">GetSupportPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetTextolitBoxThickness">GetTextolitBoxThickness</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:GetZDisplacement">GetZDisplacement</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a><!--PLAIN-->(const <a href="ListOfTypes.html#Double_t">Double_t</a> theta, const <a href="ListOfTypes.html#Double_t">Double_t</a> phi, <a href="ListOfTypes.html#Int_t">Int_t</a>& ModuleNumber, <a href="ListOfTypes.html#Double_t">Double_t</a>& x, <a href="ListOfTypes.html#Double_t">Double_t</a>& z)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:IsInitialized">IsInitialized</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:RelPosInAlice">RelPosInAlice</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a> AbsId, TVector3& pos)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:RelPosInModule">RelPosInModule</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a>* RelId, <a href="ListOfTypes.html#Float_t">Float_t</a>& y, <a href="ListOfTypes.html#Float_t">Float_t</a>& z)
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a>* RelId, <a href="ListOfTypes.html#Int_t">Int_t</a>& AbsId)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:SetLeadConverterThickness">SetLeadConverterThickness</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> e)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSGeometry:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSGeometry:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fAirFilledBoxSize">fAirFilledBoxSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fAirFilledBoxSize">Air filled box containing one module</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fAirThickness">fAirThickness[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fAirThickness">Space filled with air between the module box and the Textolit box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fCrystalSupportHeight">fCrystalSupportHeight</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCrystalSupportHeight">Height of the support of the crystal </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fCrystalWrapThickness">fCrystalWrapThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCrystalWrapThickness">Thickness of Tyvek wrapping the crystal</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fCrystalHolderThickness">fCrystalHolderThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCrystalHolderThickness">Titanium holder of the crystal</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fGapBetweenCrystals">fGapBetweenCrystals</a><!--PLAIN--> <!--TAB--><i><a name="Title:fGapBetweenCrystals">Total Gap between two adjacent crystals </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fInit">fInit</a><!--PLAIN--> <!--TAB--><i><a name="Title:fInit">Tells if geometry has been succesfully set up </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fIPtoOuterCoverDistance">fIPtoOuterCoverDistance</a><!--PLAIN--> <!--TAB--><i><a name="Title:fIPtoOuterCoverDistance">Distances from interaction point to outer cover </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fIPtoCrystalSurface">fIPtoCrystalSurface</a><!--PLAIN--> <!--TAB--><i><a name="Title:fIPtoCrystalSurface">Distances from interaction point to Xtal surface</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fModuleBoxThickness">fModuleBoxThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fModuleBoxThickness">Thickness of the thermo insulating box containing one crystals module </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fLowerTextolitPlateThickness">fLowerTextolitPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLowerTextolitPlateThickness">Thickness of lower textolit plate</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fLowerThermoPlateThickness">fLowerThermoPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLowerThermoPlateThickness">Thickness of lower thermo insulating plate</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNModules">fNModules</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNModules">Number of modules constituing PHOS</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNPhi">fNPhi</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNPhi">Number of crystal units in X (phi) direction</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNZ">fNZ</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNZ">Number of crystal units in Z direction</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fOuterBoxSize">Size of the outer thermo insulating foam box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fOuterBoxThickness">Thickness of the outer thermo insulating foam box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPHOSAngle">fPHOSAngle[4]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPHOSAngle">Position angles of modules</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPinDiodeSize">fPinDiodeSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPinDiodeSize">Size of the PIN Diode </a></i>
+<!--TAB6--> TObjArray* <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fRotMatrixArray">fRotMatrixArray</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRotMatrixArray">Liste of rotation matrices (one per phos module)</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fSecondUpperPlateThickness">fSecondUpperPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fSecondUpperPlateThickness">Thickness of upper polystyrene foam plate</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fSupportPlateThickness">fSupportPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fSupportPlateThickness">Thickness of the Aluminium support plate </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fUpperCoolingPlateThickness">fUpperCoolingPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fUpperCoolingPlateThickness">Thickness of the upper cooling plate </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fUpperPlateThickness">fUpperPlateThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fUpperPlateThickness">Thickness of the uper thermo insulating foam plate </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTextolitBoxSize">Size of the Textolit box inside the insulating foam box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTextolitBoxThickness">Thicknesses of th Textolit box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fXtlSize">fXtlSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fXtlSize">PWO4 crystal dimensions</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fAnodeThickness">fAnodeThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fAnodeThickness">Thickness of the copper layer which makes the anode </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fAvalancheGap">fAvalancheGap</a><!--PLAIN--> <!--TAB--><i><a name="Title:fAvalancheGap">Thickness of the gas in the avalanche stage</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fCathodeThickness">fCathodeThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCathodeThickness">Thickeness of composite material ensuring rigidity of cathode</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fCompositeThickness">fCompositeThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCompositeThickness">Thickeness of composite material ensuring rigidity of anode</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fConversionGap">fConversionGap</a><!--PLAIN--> <!--TAB--><i><a name="Title:fConversionGap">Thickness of the gas in the conversion stage</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fIPtoTopLidDistance">fIPtoTopLidDistance</a><!--PLAIN--> <!--TAB--><i><a name="Title:fIPtoTopLidDistance">Distance from interaction point to top lid of PPSD</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fLeadConverterThickness">fLeadConverterThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLeadConverterThickness">Thickness of the Lead converter </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fLeadToMicro2Gap">fLeadToMicro2Gap</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLeadToMicro2Gap">Thickness of the air gap between the Lead and Micromegas 2 </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fLidThickness">fLidThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLidThickness">Thickness of top lid </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fMicromegas1Thickness">fMicromegas1Thickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fMicromegas1Thickness">Thickness of the first downstream Micromegas </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fMicromegas2Thickness">fMicromegas2Thickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fMicromegas2Thickness">Thickness of the second downstream Micromegas </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fMicromegasWallThickness">fMicromegasWallThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fMicromegasWallThickness">Thickness of the Micromegas leak tight box</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fMicro1ToLeadGap">fMicro1ToLeadGap</a><!--PLAIN--> <!--TAB--><i><a name="Title:fMicro1ToLeadGap">Thickness of the air gap between Micromegas 1 and the Lead</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNumberOfPadsPhi">fNumberOfPadsPhi</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfPadsPhi">Number of pads on a micromegas module ; </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNumberOfPadsZ">fNumberOfPadsZ</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfPadsZ">Number of pads on a micromegas module ; </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfModulesPhi">Number of micromegas modules in phi</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNumberOfModulesZ">Number of micromegas modules in z</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPCThickness">fPCThickness</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPCThickness">Thickness of the printed circuit board of the anode </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPhiDisplacement">fPhiDisplacement</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPhiDisplacement">Phi displacement of micromegas1 with respect to micromegas2 </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPPSDBoxSize">fPPSDBoxSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPPSDBoxSize">Size of large box which contains PPSD; matches PHOS module size</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize[3]</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPPSDModuleSize">Size of an individual micromegas module</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fZDisplacement">fZDisplacement</a><!--PLAIN--> <!--TAB--><i><a name="Title:fZDisplacement">Z displacement of micromegas1 with respect to micromegas2 </a></i>
+<!--TAB6--> static <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a name="AliPHOSGeometry:fGeom">fGeom</a><!--PLAIN--> <!--TAB--><i><a name="Title:fGeom">pointer to the unique instance of the singleton </a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSGeometry:description">Class Description</a></h2>
+<pre> Geometry class for PHOS : singleton
+ The EMC modules are parametrized so that any configuration can be easily implemented
+ The title is used to identify the type of CPV used. So far only PPSD implemented
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSGeometry:~AliPHOSGeometry" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:~AliPHOSGeometry">~AliPHOSGeometry</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSGeometry:AbsToRelNumbering" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> AbsId, <a href="ListOfTypes.html#Int_t">Int_t</a> * relid)
+<br>
+<pre> Converts the absolute numbering into the following array
+ relid[0] = PHOS Module number 1:<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a>
+ relid[1] = 0 if PbW04
+ = PPSD Module number 1:<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a>*<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a>*2 (2->up and bottom level)
+ relid[2] = Row number inside a PHOS or PPSD module
+ relid[3] = Column number inside a PHOS or PPSD module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:EmcModuleCoverage" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> mod, <a href="ListOfTypes.html#Double_t">Double_t</a> & tm, <a href="ListOfTypes.html#Double_t">Double_t</a> & tM, <a href="ListOfTypes.html#Double_t">Double_t</a> & pm, <a href="ListOfTypes.html#Double_t">Double_t</a> & pM, <a href="ListOfTypes.html#Option_t">Option_t</a> * opt)
+<br>
+<pre> calculates the angular coverage in theta and phi of a EMC module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:EmcXtalCoverage" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:EmcXtalCoverage">EmcXtalCoverage</a>(<a href="ListOfTypes.html#Double_t">Double_t</a> & theta, <a href="ListOfTypes.html#Double_t">Double_t</a> & phi, <a href="ListOfTypes.html#Option_t">Option_t</a> * opt)
+<br>
+<pre> calculates the angular coverage in theta and phi of a single crystal in a EMC module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:ImpactOnEmc" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(const <a href="ListOfTypes.html#Double_t">Double_t</a> theta, const <a href="ListOfTypes.html#Double_t">Double_t</a> phi, <a href="ListOfTypes.html#Int_t">Int_t</a> & ModuleNumber, <a href="ListOfTypes.html#Double_t">Double_t</a> & z, <a href="ListOfTypes.html#Double_t">Double_t</a> & x)
+<br>
+<pre> calculates the impact coordinates of a neutral particle
+ emitted in direction theta and phi in ALICE
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:GetGlobal" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:GetGlobal">GetGlobal</a>(const AliRecPoint* RecPoint, TVector3 & gpos, TMatrix & gmat)
+<br>
+<pre> Calculates the ALICE global coordinates of a RecPoint and the error matrix
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:GetGlobal" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:GetGlobal">GetGlobal</a>(const AliRecPoint* RecPoint, TVector3 & gpos)
+<br>
+<pre> Calculates the ALICE global coordinates of a RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:Init" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:Init">Init</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Initializes the PHOS parameters
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:InitPHOS" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:InitPHOS">InitPHOS</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Initializes the EMC parameters
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:InitPPSD" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:InitPPSD">InitPPSD</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Initializes the PPSD parameters
+</pre><hr>
+<!--FUNCTION--><a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <a name="AliPHOSGeometry:GetInstance" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:GetInstance">GetInstance</a>()
+<br>
+<pre> Returns the pointer of the unique instance
+</pre><hr>
+<!--FUNCTION--><a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <a name="AliPHOSGeometry:GetInstance" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:GetInstance">GetInstance</a>(const <a href="ListOfTypes.html#Text_t">Text_t</a>* name, const <a href="ListOfTypes.html#Text_t">Text_t</a>* title)
+<br>
+<pre> Returns the pointer of the unique instance
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSGeometry:RelToAbsNumbering" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> * relid, <a href="ListOfTypes.html#Int_t">Int_t</a> & AbsId)
+<br>
+<pre> Converts the relative numbering into the absolute numbering
+ AbsId = 1:<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> * <a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNPhi">fNPhi</a> * <a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNZ">fNZ</a> -> PbWO4
+ AbsId = 1:<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> * 2 * (<a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a> * <a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a>) * <a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsPhi">fNumberOfPadsPhi</a> * <a href="./AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsZ">fNumberOfPadsZ</a> -> PPSD
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:RelPosInAlice" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:RelPosInAlice">RelPosInAlice</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> id, TVector3 & pos )
+<br>
+<pre> Converts the absolute numbering into the global ALICE coordinates
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:RelPosInModule" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:RelPosInModule">RelPosInModule</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> * relid, <a href="ListOfTypes.html#Float_t">Float_t</a> & x, <a href="ListOfTypes.html#Float_t">Float_t</a> & z)
+<br>
+<pre> Converts the relative numbering into the local PHOS-module (x, z) coordinates
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:SetPHOSAngles" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:SetPHOSAngles">SetPHOSAngles</a>()
+<br>
+<pre> Calculates the position in ALICE of the PHOS modules
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:SetLeadConverterThickness" href="src/AliPHOSGeometry.cxx.html#AliPHOSGeometry:SetLeadConverterThickness">SetLeadConverterThickness</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> e)
+<br>
+<pre> should ultimately disappear
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <a name="AliPHOSGeometry:AliPHOSGeometry" href="AliPHOSGeometry.h">AliPHOSGeometry</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <a name="AliPHOSGeometry:AliPHOSGeometry" href="AliPHOSGeometry.h">AliPHOSGeometry</a>(const <a href="ListOfTypes.html#Text_t">Text_t</a>* name, const <a href="ListOfTypes.html#Text_t">Text_t</a>* title)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSGeometry:IsInitialized" href="AliPHOSGeometry.h">IsInitialized</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetAirFilledBoxSize" href="AliPHOSGeometry.h">GetAirFilledBoxSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCrystalHolderThickness" href="AliPHOSGeometry.h">GetCrystalHolderThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCrystalSize" href="AliPHOSGeometry.h">GetCrystalSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCrystalSupportHeight" href="AliPHOSGeometry.h">GetCrystalSupportHeight</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCrystalWrapThickness" href="AliPHOSGeometry.h">GetCrystalWrapThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetGapBetweenCrystals" href="AliPHOSGeometry.h">GetGapBetweenCrystals</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetIPtoCrystalSurface" href="AliPHOSGeometry.h">GetIPtoCrystalSurface</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetIPtoOuterCoverDistance" href="AliPHOSGeometry.h">GetIPtoOuterCoverDistance</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetIPtoTopLidDistance" href="AliPHOSGeometry.h">GetIPtoTopLidDistance</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetLowerThermoPlateThickness" href="AliPHOSGeometry.h">GetLowerThermoPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetLowerTextolitPlateThickness" href="AliPHOSGeometry.h">GetLowerTextolitPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetModuleBoxThickness" href="AliPHOSGeometry.h">GetModuleBoxThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNPhi" href="AliPHOSGeometry.h">GetNPhi</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNZ" href="AliPHOSGeometry.h">GetNZ</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNModules" href="AliPHOSGeometry.h">GetNModules</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetOuterBoxSize" href="AliPHOSGeometry.h">GetOuterBoxSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetOuterBoxThickness" href="AliPHOSGeometry.h">GetOuterBoxThickness</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPHOSAngle" href="AliPHOSGeometry.h">GetPHOSAngle</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPinDiodeSize" href="AliPHOSGeometry.h">GetPinDiodeSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetSecondUpperPlateThickness" href="AliPHOSGeometry.h">GetSecondUpperPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetSupportPlateThickness" href="AliPHOSGeometry.h">GetSupportPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetTextolitBoxSize" href="AliPHOSGeometry.h">GetTextolitBoxSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetTextolitBoxThickness" href="AliPHOSGeometry.h">GetTextolitBoxThickness</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetUpperPlateThickness" href="AliPHOSGeometry.h">GetUpperPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetUpperCoolingPlateThickness" href="AliPHOSGeometry.h">GetUpperCoolingPlateThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetAnodeThickness" href="AliPHOSGeometry.h">GetAnodeThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetAvalancheGap" href="AliPHOSGeometry.h">GetAvalancheGap</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCathodeThickness" href="AliPHOSGeometry.h">GetCathodeThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetCompositeThickness" href="AliPHOSGeometry.h">GetCompositeThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetConversionGap" href="AliPHOSGeometry.h">GetConversionGap</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetLeadConverterThickness" href="AliPHOSGeometry.h">GetLeadConverterThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetLeadToMicro2Gap" href="AliPHOSGeometry.h">GetLeadToMicro2Gap</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetLidThickness" href="AliPHOSGeometry.h">GetLidThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetMicromegas1Thickness" href="AliPHOSGeometry.h">GetMicromegas1Thickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetMicromegas2Thickness" href="AliPHOSGeometry.h">GetMicromegas2Thickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetMicromegasWallThickness" href="AliPHOSGeometry.h">GetMicromegasWallThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetMicro1ToLeadGap" href="AliPHOSGeometry.h">GetMicro1ToLeadGap</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNumberOfPadsPhi" href="AliPHOSGeometry.h">GetNumberOfPadsPhi</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNumberOfPadsZ" href="AliPHOSGeometry.h">GetNumberOfPadsZ</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNumberOfModulesPhi" href="AliPHOSGeometry.h">GetNumberOfModulesPhi</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSGeometry:GetNumberOfModulesZ" href="AliPHOSGeometry.h">GetNumberOfModulesZ</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPCThickness" href="AliPHOSGeometry.h">GetPCThickness</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPhiDisplacement" href="AliPHOSGeometry.h">GetPhiDisplacement</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPPSDBoxSize" href="AliPHOSGeometry.h">GetPPSDBoxSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetPPSDModuleSize" href="AliPHOSGeometry.h">GetPPSDModuleSize</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSGeometry:GetZDisplacement" href="AliPHOSGeometry.h">GetZDisplacement</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSGeometry:Class" href="AliPHOSGeometry.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSGeometry:IsA" href="AliPHOSGeometry.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:ShowMembers" href="AliPHOSGeometry.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSGeometry:Streamer" href="AliPHOSGeometry.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a> <a name="AliPHOSGeometry:AliPHOSGeometry" href="AliPHOSGeometry.h">AliPHOSGeometry</a>(<a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSGeometry_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Fri Mar 10 09:44:24 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 765 1793 36 378 bf black [] 0 sd
+ 3 lw 54 378 m -12 Y 759 X 1787 Y -12 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 765 X -1793 Y -765 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 762 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 765 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 418 2116
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 59 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fUniqueID) show gr
+ gsave 59 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fBits) show gr
+ gsave 59 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgDtorOnly) show gr
+ gsave 59 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgDirLevel) show gr
+ gsave 59 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgObjectStat) show gr
+ gsave 59 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kIsOnHeap) show gr
+ gsave 59 1853
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kNotDeleted) show gr
+ gsave 441 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kZombie) show gr
+ gsave 441 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kBitMask) show gr
+ gsave 441 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kSingleKey) show gr
+ gsave 441 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kOverwrite) show gr
+ gsave 441 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 765 X s 0 0 1 c
+ gsave 59 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (MakeZombie) show gr
+ gsave 59 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 59 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr 0.6 0.6 0.6 c
+ gsave 59 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator=) show gr 0 0 1 c
+ gsave 59 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AppendPad) show gr
+ gsave 59 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Browse) show gr
+ gsave 59 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ClassName) show gr
+ gsave 59 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Clear) show gr
+ gsave 59 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Clone) show gr
+ gsave 59 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 59 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Compare) show gr
+ gsave 59 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Copy) show gr 0 0 1 c
+ gsave 59 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Delete) show gr
+ gsave 59 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 59 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Draw) show gr
+ gsave 59 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DrawClass) show gr
+ gsave 59 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DrawClone) show gr
+ gsave 59 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Dump) show gr
+ gsave 59 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Execute) show gr
+ gsave 59 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Execute) show gr
+ gsave 59 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ExecuteEvent) show gr
+ gsave 59 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDrawOption) show gr
+ gsave 59 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetUniqueID) show gr 0.6 0.6 0.6 c
+ gsave 59 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetName) show gr 0 0 1 c
+ gsave 59 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIconName) show gr
+ gsave 59 894
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetOption) show gr
+ gsave 59 858
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetObjectInfo) show gr 0.6 0.6 0.6 c
+ gsave 59 822
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTitle) show gr 0 0 1 c
+ gsave 59 786
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (HandleTimer) show gr 0.6 0.6 0.6 c
+ gsave 59 750
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Hash) show gr 0 0 1 c
+ gsave 59 713
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InheritsFrom) show gr
+ gsave 59 677
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InheritsFrom) show gr
+ gsave 59 641
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Inspect) show gr
+ gsave 59 605
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsFolder) show gr
+ gsave 59 569
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 59 533
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 59 496
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsModified) show gr
+ gsave 59 460
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsOnHeap) show gr
+ gsave 59 424
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsZombie) show gr
+ gsave 59 388
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Notify) show gr 0.6 0.6 0.6 c
+ gsave 441 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ls) show gr 0 0 1 c
+ gsave 441 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Modified) show gr
+ gsave 441 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Paint) show gr
+ gsave 441 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 441 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 441 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Read) show gr
+ gsave 441 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (RecursiveRemove) show gr
+ gsave 441 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SavePrimitive) show gr
+ gsave 441 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDrawOption) show gr
+ gsave 441 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetUniqueID) show gr
+ gsave 441 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 441 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Write) show gr
+ gsave 441 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator new) show gr
+ gsave 441 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator new) show gr
+ gsave 441 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator delete) show gr
+ gsave 441 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetBit) show gr
+ gsave 441 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetBit) show gr
+ gsave 441 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ResetBit) show gr
+ gsave 441 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TestBit) show gr
+ gsave 441 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InvertBit) show gr
+ gsave 441 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Warning) show gr
+ gsave 441 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Error) show gr
+ gsave 441 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SysError) show gr
+ gsave 441 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Fatal) show gr
+ gsave 441 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AbstractMethod) show gr
+ gsave 441 894
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (MayNotUse) show gr
+ gsave 441 858
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 441 822
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDtorOnly) show gr
+ gsave 441 786
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDtorOnly) show gr
+ gsave 441 750
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDirLevel) show gr
+ gsave 441 713
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDirLevel) show gr
+ gsave 441 677
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetObjectStat) show gr
+ gsave 441 641
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetObjectStat) show gr
+ gsave 441 605
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 441 569
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 441 533
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 441 496
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 441 460
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 382 997 873 1174 bf black [] 0 sd 3 lw 891 1174 m -12 Y 376 X 991 Y -12 X -979 Y f [] 0 sd 3 lw 873 1174 m 997 Y 382 X -997 Y -382 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 379 55 876 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 873 2115 m 382 X s 0 0 1 c
+ /xs 0 def (TNamed) /Helvetica-Bold 32 stwn gsave 1064 2122
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 884 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fName) show gr
+ gsave 884 2040
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fTitle) show gr
+ gsave 884 2004
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 873 1970 m 382 X s 0 0 1 c
+ gsave 884 1913
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 884 1877
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 884 1841
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 884 1805
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 884 1769
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator=) show gr
+ gsave 884 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Compare) show gr
+ gsave 884 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Copy) show gr
+ gsave 884 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (FillBuffer) show gr
+ gsave 884 1624
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetName) show gr
+ gsave 884 1588
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTitle) show gr
+ gsave 884 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Hash) show gr
+ gsave 884 1515
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsSortable) show gr
+ gsave 884 1479
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetName) show gr
+ gsave 884 1443
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetObject) show gr
+ gsave 884 1407
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetTitle) show gr
+ gsave 884 1371
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ls) show gr
+ gsave 884 1334
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Print) show gr
+ gsave 884 1298
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Sizeof) show gr 0.6 0.6 0.6 c
+ gsave 884 1262
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 884 1226
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 884 1190
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 383 346 1327 1825 bf black [] 0 sd 3 lw 1345 1825 m -12 Y 377 X 340 Y -12 X -328 Y f [] 0 sd 3 lw 1327 1825 m 346 Y 383 X -346 Y -383 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 380 55 1330 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1327 2115 m 383 X s 0 0 1 c
+ /xs 0 def (AliGeometry) /Helvetica-Bold 32 stwn gsave 1519 2127
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliGeometry) show gr
+ gsave 1339 2081
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1327 2042 m 383 X s 0.6 0.6 0.6 c
+ gsave 1339 1990
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetGlobal) show gr
+ gsave 1339 1954
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetGlobal) show gr
+ gsave 1339 1918
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 1339 1882
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 1339 1846
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1147 1648 1782 523 bf black [] 0 sd 3 lw 1799 523 m -12 Y 1142 X 1642 Y -12 X -1630 Y f [] 0 sd 3 lw 1782 523 m 1648 Y 1147 X -1648 Y -1147
+ X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1144 55 1785 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1782 2115 m 1147 X s 0 0 1 c
+ /xs 0 def (AliPHOSGeometry) /Helvetica-Bold 32 stwn gsave 2356 2117
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSGeometry) show gr
+ gsave 1816 2071
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fAirFilledBoxSize[3]) show gr
+ gsave 1816 2035
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fAirThickness[3]) show gr
+ gsave 1816 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCrystalSupportHeight) show gr
+ gsave 1816 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCrystalWrapThickness) show gr
+ gsave 1816 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCrystalHolderThickness) show gr
+ gsave 1816 1890
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fGapBetweenCrystals) show gr
+ gsave 1816 1854
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fInit) show gr
+ gsave 1816 1818
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fIPtoOuterCoverDistance) show gr
+ gsave 1816 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fIPtoCrystalSurface) show gr
+ gsave 1816 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fModuleBoxThickness) show gr
+ gsave 1816 1709
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLowerTextolitPlateThickness) show gr
+ gsave 1816 1673
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLowerThermoPlateThickness) show gr
+ gsave 1816 1637
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNModules) show gr
+ gsave 1816 1601
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNPhi) show gr
+ gsave 1816 1565
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNZ) show gr
+ gsave 1816 1529
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fOuterBoxSize[3]) show gr
+ gsave 1816 1492
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fOuterBoxThickness[3]) show gr
+ gsave 1816 1456
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPHOSAngle[4]) show gr
+ gsave 2199 2071
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPinDiodeSize[3]) show gr
+ gsave 2199 2035
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fRotMatrixArray) show gr
+ gsave 2199 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fSecondUpperPlateThickness) show gr
+ gsave 2199 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fSupportPlateThickness) show gr
+ gsave 2199 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fUpperCoolingPlateThickness) show gr
+ gsave 2199 1890
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fUpperPlateThickness) show gr
+ gsave 2199 1854
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fTextolitBoxSize[3]) show gr
+ gsave 2199 1818
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fTextolitBoxThickness[3]) show gr
+ gsave 2199 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fXtlSize[3]) show gr
+ gsave 2199 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fAnodeThickness) show gr
+ gsave 2199 1709
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fAvalancheGap) show gr
+ gsave 2199 1673
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCathodeThickness) show gr
+ gsave 2199 1637
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCompositeThickness) show gr
+ gsave 2199 1601
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fConversionGap) show gr
+ gsave 2199 1565
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fIPtoTopLidDistance) show gr
+ gsave 2199 1529
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLeadConverterThickness) show gr
+ gsave 2199 1492
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLeadToMicro2Gap) show gr
+ gsave 2199 1456
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLidThickness) show gr
+ gsave 2581 2071
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fMicromegas1Thickness) show gr
+ gsave 2581 2035
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fMicromegas2Thickness) show gr
+ gsave 2581 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fMicromegasWallThickness) show gr
+ gsave 2581 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fMicro1ToLeadGap) show gr
+ gsave 2581 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNumberOfPadsPhi) show gr
+ gsave 2581 1890
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNumberOfPadsZ) show gr
+ gsave 2581 1854
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNumberOfModulesPhi) show gr
+ gsave 2581 1818
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fNumberOfModulesZ) show gr
+ gsave 2581 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPCThickness) show gr
+ gsave 2581 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPhiDisplacement) show gr
+ gsave 2581 1709
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPPSDBoxSize[3]) show gr
+ gsave 2581 1673
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPPSDModuleSize[3]) show gr
+ gsave 2581 1637
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fZDisplacement) show gr
+ gsave 2581 1601
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fGeom) show gr
+ gsave 2581 1565
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1782 1463 m 1147 X s 0 0 1 c
+ gsave 1816 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSGeometry) show gr
+ gsave 1816 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetInstance) show gr
+ gsave 1816 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetInstance) show gr
+ gsave 1816 1293
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetGlobal) show gr
+ gsave 1816 1257
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetGlobal) show gr
+ gsave 1816 1221
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSGeometry) show gr
+ gsave 1816 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Init) show gr
+ gsave 1816 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InitPHOS) show gr
+ gsave 1816 1112
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InitPPSD) show gr
+ gsave 1816 1076
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AbsToRelNumbering) show gr
+ gsave 1816 1040
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (EmcModuleCoverage) show gr
+ gsave 1816 1004
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (EmcXtalCoverage) show gr
+ gsave 1816 968
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ImpactOnEmc) show gr
+ gsave 1816 932
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (RelPosInModule) show gr
+ gsave 1816 895
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (RelPosInAlice) show gr
+ gsave 1816 859
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (RelToAbsNumbering) show gr
+ gsave 1816 823
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsInitialized) show gr
+ gsave 1816 787
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetAirFilledBoxSize) show gr
+ gsave 1816 751
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCrystalHolderThickness) show gr
+ gsave 1816 714
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCrystalSize) show gr
+ gsave 1816 678
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCrystalSupportHeight) show gr
+ gsave 1816 642
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCrystalWrapThickness) show gr
+ gsave 1816 606
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetGapBetweenCrystals) show gr
+ gsave 1816 570
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIPtoCrystalSurface) show gr
+ gsave 2199 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIPtoOuterCoverDistance) show gr
+ gsave 2199 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIPtoPpsdUp) show gr
+ gsave 2199 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIPtoPpsdLow) show gr
+ gsave 2199 1293
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIPtoTopLidDistance) show gr
+ gsave 2199 1257
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLowerThermoPlateThickness) show gr
+ gsave 2199 1221
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLowerTextolitPlateThickness) show gr
+ gsave 2199 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetModuleBoxThickness) show gr
+ gsave 2199 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNPhi) show gr
+ gsave 2199 1112
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNZ) show gr
+ gsave 2199 1076
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNModules) show gr
+ gsave 2199 1040
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetOuterBoxSize) show gr
+ gsave 2199 1004
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetOuterBoxThickness) show gr
+ gsave 2199 968
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPHOSAngle) show gr
+ gsave 2199 932
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPinDiodeSize) show gr
+ gsave 2199 895
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetSecondUpperPlateThickness) show gr
+ gsave 2199 859
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetSupportPlateThickness) show gr
+ gsave 2199 823
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTextolitBoxSize) show gr
+ gsave 2199 787
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTextolitBoxThickness) show gr
+ gsave 2199 751
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetUpperPlateThickness) show gr
+ gsave 2199 714
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetUpperCoolingPlateThickness) show gr
+ gsave 2199 678
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetPHOSAngles) show gr
+ gsave 2199 642
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetAnodeThickness) show gr
+ gsave 2199 606
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetAvalancheGap) show gr
+ gsave 2199 570
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCathodeThickness) show gr
+ gsave 2581 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCompositeThickness) show gr
+ gsave 2581 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetConversionGap) show gr
+ gsave 2581 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLeadConverterThickness) show gr
+ gsave 2581 1293
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLeadToMicro2Gap) show gr
+ gsave 2581 1257
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLidThickness) show gr
+ gsave 2581 1221
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMicromegas1Thickness) show gr
+ gsave 2581 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMicromegas2Thickness) show gr
+ gsave 2581 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMicromegasWallThickness) show gr
+ gsave 2581 1112
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMicro1ToLeadGap) show gr
+ gsave 2581 1076
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNumberOfPadsPhi) show gr
+ gsave 2581 1040
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNumberOfPadsZ) show gr
+ gsave 2581 1004
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNumberOfModulesPhi) show gr
+ gsave 2581 968
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNumberOfModulesZ) show gr
+ gsave 2581 932
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPCThickness) show gr
+ gsave 2581 895
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPhiDisplacement) show gr
+ gsave 2581 859
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPPSDBoxSize) show gr
+ gsave 2581 823
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPPSDModuleSize) show gr
+ gsave 2581 787
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetZDisplacement) show gr
+ gsave 2581 751
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLeadConverterThickness) show gr
+ gsave 2581 714
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 2581 678
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 2581 642
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr
+ gsave 2581 606
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSHIT_H
+#define ALIPHOSHIT_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Hits class for PHOS
+// A hit in PHOS is the sum of all hits in a single crystal
+//
+//*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+// --- AliRoot header files ---
+#include "AliHit.h"
+
+// --- Standard library ---
+
+#include <iostream>
+
+class AliPHOSHit : public AliHit {
+
+public:
+
+ AliPHOSHit() {}
+ AliPHOSHit(Int_t primary, Int_t id, Float_t *hits) ;
+ virtual ~AliPHOSHit(void) {}
+
+ Float_t GetEnergy(void) const { return fELOS ; }
+ Int_t GetId(void) const { return fId ; }
+ Int_t GetPrimary(void) const { return fPrimary ; }
+
+ Bool_t operator == (AliPHOSHit const &rValue) const ;
+ AliPHOSHit operator + (const AliPHOSHit& rValue) const ;
+
+ friend ostream& operator << (ostream&, const AliPHOSHit&) ;
+
+private:
+
+ Int_t fId ; // Absolute Id number of PHOS Xtal or PPSD pad
+ Float_t fELOS ; // Energy deposited
+ Int_t fPrimary ; // Primary particles at the origine of the hit
+
+ ClassDef(AliPHOSHit,1) // Hit for PHOS
+
+} ;
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif // ALIPHOSHIT_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSHit</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSHit</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSHit:description>class description</a> - <a href="src/AliPHOSHit.cxx.html">source file</a> - <a href="AliPHOSHit_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSHit" href="AliPHOSHit.h">AliPHOSHit</a> : public AliHit</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:AliPHOSHit">AliPHOSHit</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:AliPHOSHit">AliPHOSHit</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Float_t">Float_t</a>* hits)
+<!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:operator+">operator+</a><!--PLAIN-->(const <a href="./AliPHOSHit.html">AliPHOSHit</a>& rValue) const
+<!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:AliPHOSHit">AliPHOSHit</a><!--PLAIN-->(<a href="./AliPHOSHit.html">AliPHOSHit</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:~AliPHOSHit">~AliPHOSHit</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSHit:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:GetEnergy">GetEnergy</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:GetId">GetId</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:GetPrimary">GetPrimary</a><!--PLAIN-->() const
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSHit:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:operator==">operator==</a><!--PLAIN-->(<a href="./AliPHOSHit.html">AliPHOSHit</a> const& rValue) const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSHit:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSHit:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSHit:fId">fId</a><!--PLAIN--> <!--TAB--><i><a name="Title:fId">Absolute Id number of PHOS Xtal or PPSD pad</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSHit:fELOS">fELOS</a><!--PLAIN--> <!--TAB--><i><a name="Title:fELOS">Energy deposited</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSHit:fPrimary">fPrimary</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPrimary">Primary particles at the origine of the hit</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSHit:description">Class Description</a></h2>
+<pre> Hits class for PHOS
+ A hit in PHOS is the sum of all hits in a single crystal
+
+*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSHit:AliPHOSHit" href="src/AliPHOSHit.cxx.html#AliPHOSHit:AliPHOSHit">AliPHOSHit</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Float_t">Float_t</a> *hits)
+<br>
+<pre> ctor
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <a name="AliPHOSHit:AliPHOSHit" href="AliPHOSHit.h">AliPHOSHit</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Float_t">Float_t</a>* hits)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSHit:GetEnergy" href="AliPHOSHit.h">GetEnergy</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSHit:GetId" href="AliPHOSHit.h">GetId</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSHit:GetPrimary" href="AliPHOSHit.h">GetPrimary</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSHit:operator==" href="AliPHOSHit.h">operator==</a>(<a href="./AliPHOSHit.html">AliPHOSHit</a> const& rValue) const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <a name="AliPHOSHit:operator+" href="AliPHOSHit.h">operator+</a>(const <a href="./AliPHOSHit.html">AliPHOSHit</a>& rValue) const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSHit:Class" href="AliPHOSHit.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSHit:IsA" href="AliPHOSHit.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSHit:ShowMembers" href="AliPHOSHit.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSHit:Streamer" href="AliPHOSHit.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSHit.html">AliPHOSHit</a> <a name="AliPHOSHit:AliPHOSHit" href="AliPHOSHit.h">AliPHOSHit</a>(<a href="./AliPHOSHit.html">AliPHOSHit</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSHit:~AliPHOSHit" href="AliPHOSHit.h">~AliPHOSHit</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSHit_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 19:32:59 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 599 1114 1572 bf black [] 0 sd 3 lw 1132 1572 m -12 Y 498 X 593 Y -12 X -581 Y f [] 0 sd 3 lw 1114 1572 m 599 Y 504 X -599 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliHit) /Helvetica-Bold 32 stwn gsave 1366 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliHit) show gr
+ gsave 1130 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrack) show gr
+ gsave 1130 2040
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fX) show gr
+ gsave 1130 2004
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fY) show gr
+ gsave 1130 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fZ) show gr
+ gsave 1130 1931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1897 m 504 X s 0 0 1 c
+ gsave 1130 1841
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliHit) show gr
+ gsave 1130 1805
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliHit) show gr
+ gsave 1130 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTrack) show gr
+ gsave 1130 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTrack) show gr 0.6 0.6 0.6 c
+ gsave 1130 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1624
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 672 1690 1499 bf black [] 0 sd 3 lw 1707 1499 m -11 Y 498 X 665 Y -12 X -654 Y f [] 0 sd 3 lw 1690 1499 m 672 Y 503 X -672 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSHit) /Helvetica-Bold 32 stwn gsave 1941 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSHit) show gr
+ gsave 1705 2075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fId) show gr
+ gsave 1705 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fELOS) show gr
+ gsave 1705 2003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPrimary) show gr
+ gsave 1705 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1934 m 503 X s 0 0 1 c
+ gsave 1705 1876
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSHit) show gr
+ gsave 1705 1840
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSHit) show gr
+ gsave 1705 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergy) show gr
+ gsave 1705 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetId) show gr
+ gsave 1705 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimary) show gr
+ gsave 1705 1695
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator==) show gr
+ gsave 1705 1659
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator+) show gr
+ gsave 1705 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSLINK_H
+#define ALIPHOSLINK_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Algorithm class used only by AliPHOSTrackSegmentMaker
+//
+//*-- Author: Dmitri Peressounko (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+class AliPHOSLink : public TObject{
+
+public:
+
+ AliPHOSLink( Float_t r, Int_t EMC, Int_t PPSD) ; // ctor
+ virtual ~AliPHOSLink(){} // dtor
+
+ Int_t Compare(TObject * obj) ;
+ Int_t GetEmc(void) { return fEmcN; }
+ Int_t GetPpsd(void) { return fPpsdN ; }
+ Float_t GetR(void) { return fR ; }
+ Bool_t IsSortable() const{ return kTRUE ; }
+
+private:
+
+ Int_t fEmcN ; // Emc index
+ Int_t fPpsdN ; // Ppsd index
+ Float_t fR ; // Distance between EMC and PPSD RecPoints in a track segment
+
+ ClassDef(AliPHOSLink,1) // Auxilliary algorithm class used by AliPHOSTrackSegmentMaker
+
+};
+
+#endif // AliPHOSLINK_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSLink</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSLink</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSLink:description>class description</a> - <a href="src/AliPHOSLink.cxx.html">source file</a> - <a href="AliPHOSLink_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSLink" href="AliPHOSLink.h">AliPHOSLink</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSLink.html">AliPHOSLink</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:AliPHOSLink">AliPHOSLink</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> r, <a href="ListOfTypes.html#Int_t">Int_t</a> EMC, <a href="ListOfTypes.html#Int_t">Int_t</a> PPSD)
+<!--TAB6--> <a href="./AliPHOSLink.html">AliPHOSLink</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:AliPHOSLink">AliPHOSLink</a><!--PLAIN-->(<a href="./AliPHOSLink.html">AliPHOSLink</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:~AliPHOSLink">~AliPHOSLink</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSLink:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:Compare">Compare</a><!--PLAIN-->(TObject* obj)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:GetEmc">GetEmc</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:GetPpsd">GetPpsd</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:GetR">GetR</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSLink:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:IsSortable">IsSortable</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSLink:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSLink:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSLink:fEmcN">fEmcN</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEmcN">Emc index</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSLink:fPpsdN">fPpsdN</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdN">Ppsd index </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSLink:fR">fR</a><!--PLAIN--> <!--TAB--><i><a name="Title:fR">Distance between EMC and PPSD RecPoints in a track segment </a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSLink:description">Class Description</a></h2>
+<pre> Algorithm class used only by <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>
+
+*-- Author: Dmitri Peressounko (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSLink:AliPHOSLink" href="src/AliPHOSLink.cxx.html#AliPHOSLink:AliPHOSLink">AliPHOSLink</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> r, <a href="ListOfTypes.html#Int_t">Int_t</a> Emc, <a href="ListOfTypes.html#Int_t">Int_t</a> Ppsd)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSLink:Compare" href="src/AliPHOSLink.cxx.html#AliPHOSLink:Compare">Compare</a>(TObject * obj)
+<br>
+<pre> Compare according to the distance between EMC and PPSD RecPoints in a track segment
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSLink:GetEmc" href="AliPHOSLink.h">GetEmc</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSLink:GetPpsd" href="AliPHOSLink.h">GetPpsd</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSLink:GetR" href="AliPHOSLink.h">GetR</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSLink:IsSortable" href="AliPHOSLink.h">IsSortable</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSLink:Class" href="AliPHOSLink.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSLink:IsA" href="AliPHOSLink.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSLink:ShowMembers" href="AliPHOSLink.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSLink:Streamer" href="AliPHOSLink.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSLink.html">AliPHOSLink</a> <a name="AliPHOSLink:AliPHOSLink" href="AliPHOSLink.h">AliPHOSLink</a>(<a href="./AliPHOSLink.html">AliPHOSLink</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSLink:~AliPHOSLink" href="AliPHOSLink.h">~AliPHOSLink</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSLink_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:50 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0 0 1 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 635 1114 1536 bf black [] 0 sd 3 lw 1132 1536 m -12 Y 498 X 629 Y -12 X -617 Y f [] 0 sd 3 lw 1114 1536 m 635 Y 504 X -635 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSLink) /Helvetica-Bold 32 stwn gsave 1366 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSLink) show gr
+ gsave 1130 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcN) show gr
+ gsave 1130 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdN) show gr
+ gsave 1130 2003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fR) show gr
+ gsave 1130 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1934 m 504 X s 0 0 1 c
+ gsave 1130 1877
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSLink) show gr
+ gsave 1130 1840
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 1130 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmc) show gr
+ gsave 1130 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsd) show gr
+ gsave 1130 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetR) show gr
+ gsave 1130 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 1130 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSPID_H
+#define ALIPHOSPID_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Algorithm class for the identification of particles detected in PHOS
+// base class
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+#include "TClonesArray.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSTrackSegmentMaker.h"
+
+
+typedef TClonesArray RecParticlesList ;
+
+class AliPHOSPID : public TObject {
+
+public:
+
+ AliPHOSPID() ; // ctor
+ virtual ~AliPHOSPID() ; // dtor
+
+ virtual void MakeParticles(TrackSegmentsList * trsl, RecParticlesList * rpl) {} ;
+ virtual void SetShowerProfileCuts(Float_t, Float_t, Float_t, Float_t) {} ;
+ virtual void SetDispersionCutOff(Float_t ) {}
+
+ ClassDef(AliPHOSPID,1) // Particle Identifier algorithm (base class)
+
+} ;
+
+#endif // ALIPHOSPID_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPID</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSPID</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSPID:description>class description</a> - <a href="src/AliPHOSPID.cxx.html">source file</a> - <a href="AliPHOSPID_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSPID" href="AliPHOSPID.h">AliPHOSPID</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSPID.html">AliPHOSPID</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:AliPHOSPID">AliPHOSPID</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSPID.html">AliPHOSPID</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:AliPHOSPID">AliPHOSPID</a><!--PLAIN-->(<a href="./AliPHOSPID.html">AliPHOSPID</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:~AliPHOSPID">~AliPHOSPID</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPID:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPID:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:MakeParticles">MakeParticles</a><!--PLAIN-->(<a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* rpl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:SetDispersionCutOff">SetDispersionCutOff</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a>)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:SetShowerProfileCuts">SetShowerProfileCuts</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPID:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSPID:Data Members">Data Members</a></h3>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSPID:description">Class Description</a></h2>
+<pre> Algorithm class for the identification of particles detected in PHOS
+ base class
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSPID:AliPHOSPID" href="src/AliPHOSPID.cxx.html#AliPHOSPID:AliPHOSPID">AliPHOSPID</a>()
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSPID:~AliPHOSPID" href="src/AliPHOSPID.cxx.html#AliPHOSPID:~AliPHOSPID">~AliPHOSPID</a>()
+<br>
+<pre> dtor
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPID:MakeParticles" href="AliPHOSPID.h">MakeParticles</a>(<a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* rpl)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPID:SetShowerProfileCuts" href="AliPHOSPID.h">SetShowerProfileCuts</a>(<a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>, <a href="ListOfTypes.html#Float_t">Float_t</a>)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPID:SetDispersionCutOff" href="AliPHOSPID.h">SetDispersionCutOff</a>(<a href="ListOfTypes.html#Float_t">Float_t</a>)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPID:Class" href="AliPHOSPID.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPID:IsA" href="AliPHOSPID.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPID:ShowMembers" href="AliPHOSPID.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPID:Streamer" href="AliPHOSPID.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPID.html">AliPHOSPID</a> <a name="AliPHOSPID:AliPHOSPID" href="AliPHOSPID.h">AliPHOSPID</a>(<a href="./AliPHOSPID.html">AliPHOSPID</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSPID_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 19:43:54 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 454 1114 1717 bf black [] 0 sd 3 lw 1132 1717 m -12 Y 498 X 448 Y -12 X -436 Y f [] 0 sd 3 lw 1114 1717 m 454 Y 504 X -454 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSPID) /Helvetica-Bold 32 stwn gsave 1366 2126
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSPID) show gr
+ gsave 1130 2077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0 0 1 c
+ gsave 1130 1987
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSPID) show gr
+ gsave 1130 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeParticles) show gr
+ gsave 1130 1914
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetShowerProfileCuts) show gr
+ gsave 1130 1878
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDispersionCutOff) show gr
+ gsave 1130 1842
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1806
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1770
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1733
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSPIDV1_H
+#define ALIPHOSPIDV1_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+
+//_________________________________________________________________________
+// Implementation version v1 of the PHOS particle identifier
+// Identification is based on information from PPSD and EMC
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSPID.h"
+
+class AliPHOSPIDv1 : public AliPHOSPID {
+
+public:
+
+ AliPHOSPIDv1(): fCutOnDispersion(1.5){}
+ virtual ~ AliPHOSPIDv1(){} ; // dtor
+
+ virtual void MakeParticles(TrackSegmentsList * trsl, RecParticlesList * rpl ) ; // does the job
+ void Print() ;
+ virtual void SetDispersionCutOff(Float_t Dcut) {fCutOnDispersion = Dcut ; }
+ virtual void SetShowerProfileCuts(Float_t l1m, Float_t l1M, Float_t l2m, Float_t l2M) ;
+
+ private:
+
+ // cuts on the shower profile
+ Float_t fLambda1m ; // minimum value for first elips axis
+ Float_t fLambda1M ; // maximum value for first elips axis
+ Float_t fLambda2m ; // minimum value for second elips axis
+ Float_t fLambda2M ; // maximum value for second elips axis
+ Float_t fCutOnDispersion ; // cut on the shower dispersion to distinguish hadronic from EM showers
+
+ ClassDef( AliPHOSPIDv1,1) // Particle identifier implementation version 1
+
+};
+
+#endif // AliPHOSPIDV1_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPIDv1</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSPIDv1</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSPIDv1:description>class description</a> - <a href="src/AliPHOSPIDv1.cxx.html">source file</a> - <a href="AliPHOSPIDv1_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSPIDv1" href="AliPHOSPIDv1.h">AliPHOSPIDv1</a> : public <a href="./AliPHOSPID.html">AliPHOSPID</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:AliPHOSPIDv1">AliPHOSPIDv1</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:AliPHOSPIDv1">AliPHOSPIDv1</a><!--PLAIN-->(<a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:~AliPHOSPIDv1">~AliPHOSPIDv1</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:MakeParticles">MakeParticles</a><!--PLAIN-->(<a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* rpl)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:Print">Print</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:SetDispersionCutOff">SetDispersionCutOff</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> Dcut)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:SetShowerProfileCuts">SetShowerProfileCuts</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> l1m, <a href="ListOfTypes.html#Float_t">Float_t</a> l1M, <a href="ListOfTypes.html#Float_t">Float_t</a> l2m, <a href="ListOfTypes.html#Float_t">Float_t</a> l2M)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPIDv1:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSPIDv1:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPIDv1:fLambda1m">fLambda1m</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLambda1m">minimum value for first elips axis</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPIDv1:fLambda1M">fLambda1M</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLambda1M">maximum value for first elips axis</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPIDv1:fLambda2m">fLambda2m</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLambda2m">minimum value for second elips axis</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPIDv1:fLambda2M">fLambda2M</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLambda2M">maximum value for second elips axis</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPIDv1:fCutOnDispersion">fCutOnDispersion</a><!--PLAIN--> <!--TAB--><i><a name="Title:fCutOnDispersion">cut on the shower dispersion to distinguish hadronic from EM showers</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSPIDv1:description">Class Description</a></h2>
+<pre> Implementation version v1 of the PHOS particle identifier
+ Identification is based on information from PPSD and EMC
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:MakeParticles" href="src/AliPHOSPIDv1.cxx.html#AliPHOSPIDv1:MakeParticles">MakeParticles</a>(<a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a> * rpl)
+<br>
+<pre> Makes a RecParticle out of a TrackSegment
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:Print" href="src/AliPHOSPIDv1.cxx.html#AliPHOSPIDv1:Print">Print</a>()
+<br>
+<pre> Print the parameters used for the particle type identification
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:SetShowerProfileCuts" href="src/AliPHOSPIDv1.cxx.html#AliPHOSPIDv1:SetShowerProfileCuts">SetShowerProfileCuts</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> l1m, <a href="ListOfTypes.html#Float_t">Float_t</a> l1M, <a href="ListOfTypes.html#Float_t">Float_t</a> l2m, <a href="ListOfTypes.html#Float_t">Float_t</a> l2M)
+<br>
+<pre> Modifies the parameters used for the particle type identification
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> <a name="AliPHOSPIDv1:AliPHOSPIDv1" href="AliPHOSPIDv1.h">AliPHOSPIDv1</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:SetDispersionCutOff" href="AliPHOSPIDv1.h">SetDispersionCutOff</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> Dcut)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPIDv1:Class" href="AliPHOSPIDv1.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPIDv1:IsA" href="AliPHOSPIDv1.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:ShowMembers" href="AliPHOSPIDv1.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:Streamer" href="AliPHOSPIDv1.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> <a name="AliPHOSPIDv1:AliPHOSPIDv1" href="AliPHOSPIDv1.h">AliPHOSPIDv1</a>(<a href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPIDv1:~AliPHOSPIDv1" href="AliPHOSPIDv1.h">~AliPHOSPIDv1</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSPIDv1_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:50 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 454 1114 1717 bf black [] 0 sd 3 lw 1132 1717 m -12 Y 498 X 448 Y -12 X -436 Y f [] 0 sd 3 lw 1114 1717 m 454 Y 504 X -454 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSPID) /Helvetica-Bold 32 stwn gsave 1366 2126
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSPID) show gr
+ gsave 1130 2077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0 0 1 c
+ gsave 1130 1987
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSPID) show gr 0.6 0.6 0.6 c
+ gsave 1130 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeParticles) show gr
+ gsave 1130 1914
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetShowerProfileCuts) show gr
+ gsave 1130 1878
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDispersionCutOff) show gr
+ gsave 1130 1842
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1806
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1770
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1733
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 672 1690 1499 bf black [] 0 sd 3 lw 1707 1499 m -11 Y 498 X 665 Y -12 X -654 Y f [] 0 sd 3 lw 1690 1499 m 672 Y 503 X -672 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSPIDv1) /Helvetica-Bold 32 stwn gsave 1941 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSPIDv1) show gr
+ gsave 1705 2075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLambda1m) show gr
+ gsave 1705 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLambda1M) show gr
+ gsave 1705 2003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLambda2m) show gr
+ gsave 1705 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLambda2M) show gr
+ gsave 1705 1931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fCutOnDispersion) show gr
+ gsave 1705 1894
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1861 m 503 X s 0 0 1 c
+ gsave 1705 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSPIDv1) show gr
+ gsave 1705 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeParticles) show gr
+ gsave 1705 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1705 1695
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDispersionCutOff) show gr
+ gsave 1705 1659
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetShowerProfileCuts) show gr
+ gsave 1705 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSPPSDRECPOINT_H
+#define ALIPHOSPPSDRECPOINT_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// A RecPoint (cluster) in the PPSD
+// A PPSD RecPoint ends up to be a single digit
+//
+//*-- Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSDigit.h"
+#include "AliPHOSRecPoint.h"
+
+class AliPHOSPpsdRecPoint : public AliPHOSRecPoint {
+
+public:
+
+ AliPHOSPpsdRecPoint() ; // ctor
+ virtual ~AliPHOSPpsdRecPoint(){} // dtor
+
+ void AddDigit(AliDigitNew & digit, Float_t Energy) ;
+ Int_t Compare(TObject * obj) ; // method to sort clusters
+
+ Float_t GetDelta(void) {return fDelta ;}
+ Int_t GetMultiplicity(void) const { return fMulDigit ; }
+ Int_t GetMaximumMultiplicity() { return fMaxDigit ; }
+ void GetLocalPosition(TVector3 &LPos) ; // computes the position in the module of the cluster center
+ Float_t GetTotalEnergy(void) const { return fAmp ; } // in Ppsd EMC RecPoint Amp = Energy
+ Bool_t GetUp() ; // true if cluster is in upper ppsd
+ Bool_t IsEmc(void) {return kFALSE ; }
+ Bool_t IsSortable() const { return kTRUE ; }
+ virtual void Paint(Option_t * option="");
+ void Print(Option_t * opt = "void") ;
+
+private:
+
+ Float_t fDelta ; // parameter used for sorting
+
+ ClassDef(AliPHOSPpsdRecPoint,1) // PPSD RecPoint
+
+};
+
+#endif // AliPHOSPPSDRECPOINT_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPpsdRecPoint</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSPpsdRecPoint</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSPpsdRecPoint:description>class description</a> - <a href="src/AliPHOSPpsdRecPoint.cxx.html">source file</a> - <a href="AliPHOSPpsdRecPoint_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSPpsdRecPoint" href="AliPHOSPpsdRecPoint.h">AliPHOSPpsdRecPoint</a> : public <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint">AliPHOSPpsdRecPoint</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint">AliPHOSPpsdRecPoint</a><!--PLAIN-->(<a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:~AliPHOSPpsdRecPoint">~AliPHOSPpsdRecPoint</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:AddDigit">AddDigit</a><!--PLAIN-->(AliDigitNew& digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:Compare">Compare</a><!--PLAIN-->(TObject* obj)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetDelta">GetDelta</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a><!--PLAIN-->(TVector3& LPos)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetMaximumMultiplicity">GetMaximumMultiplicity</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetMultiplicity">GetMultiplicity</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetTotalEnergy">GetTotalEnergy</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:GetUp">GetUp</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:IsEmc">IsEmc</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:IsSortable">IsSortable</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:Paint">Paint</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:Print">Print</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt = <a href="ListOfTypes.html#void">void</a>)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSPpsdRecPoint:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSPpsdRecPoint:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSPpsdRecPoint:fDelta">fDelta</a><!--PLAIN--> <!--TAB--><i><a name="Title:fDelta">parameter used for sorting</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSPpsdRecPoint:description">Class Description</a></h2>
+<pre> A RecPoint (cluster) in the PPSD
+ A PPSD RecPoint ends up to be a single digit
+
+*-- Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint">AliPHOSPpsdRecPoint</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:AddDigit" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:AddDigit">AddDigit</a>(AliDigitNew & digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<br>
+<pre> adds a digit to the digits list
+ and accumulates the total amplitude and the multiplicity
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSPpsdRecPoint:Compare" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:Compare">Compare</a>(TObject * obj)
+<br>
+<pre> Compares according to the position
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:GetLocalPosition" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(TVector3 &LPos)
+<br>
+<pre> Calculates the local position in the PHOS-PPSD-module corrdinates
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSPpsdRecPoint:GetUp" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:GetUp">GetUp</a>()
+<br>
+<hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:Paint" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:Paint">Paint</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *)
+<br>
+<pre>*-*-*-*-*-*-*-*-*-*-*Paint this ALiRecPoint as a TMarker with its current attributes*-*-*-*-*-*-*
+*-* =============================================
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:Print" href="src/AliPHOSPpsdRecPoint.cxx.html#AliPHOSPpsdRecPoint:Print">Print</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> * option)
+<br>
+<pre> Print the digits information
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSPpsdRecPoint:GetDelta" href="AliPHOSPpsdRecPoint.h">GetDelta</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSPpsdRecPoint:GetMultiplicity" href="AliPHOSPpsdRecPoint.h">GetMultiplicity</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSPpsdRecPoint:GetMaximumMultiplicity" href="AliPHOSPpsdRecPoint.h">GetMaximumMultiplicity</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSPpsdRecPoint:GetTotalEnergy" href="AliPHOSPpsdRecPoint.h">GetTotalEnergy</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSPpsdRecPoint:IsEmc" href="AliPHOSPpsdRecPoint.h">IsEmc</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSPpsdRecPoint:IsSortable" href="AliPHOSPpsdRecPoint.h">IsSortable</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPpsdRecPoint:Class" href="AliPHOSPpsdRecPoint.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSPpsdRecPoint:IsA" href="AliPHOSPpsdRecPoint.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:ShowMembers" href="AliPHOSPpsdRecPoint.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:Streamer" href="AliPHOSPpsdRecPoint.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> <a name="AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint" href="AliPHOSPpsdRecPoint.h">AliPHOSPpsdRecPoint</a>(<a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSPpsdRecPoint:~AliPHOSPpsdRecPoint" href="AliPHOSPpsdRecPoint.h">~AliPHOSPpsdRecPoint</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSPpsdRecPoint_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 20:01:18 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0 0 1 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1070 1114 1101 bf black [] 0 sd 3 lw 1132 1101 m -11 Y 498 X 1063 Y -12 X -1052 Y f [] 0 sd 3 lw 1114 1101 m 1070 Y 504 X -1070 Y -504 X
+ cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliRecPoint) /Helvetica-Bold 32 stwn gsave 1366 2120
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliRecPoint) show gr
+ gsave 1130 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fAmp) show gr
+ gsave 1130 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigitsList) show gr
+ gsave 1130 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 1130 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPos) show gr
+ gsave 1130 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPosM) show gr
+ gsave 1130 1891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxDigit) show gr
+ gsave 1130 1855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulDigit) show gr
+ gsave 1130 1819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxTrack) show gr
+ gsave 1130 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulTrack) show gr
+ gsave 1130 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTracksList) show gr
+ gsave 1130 1710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1680 m 504 X s 0.6 0.6 0.6 c
+ gsave 1130 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0 0 1 c
+ gsave 1130 1583
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCovarianceMatrix) show gr
+ gsave 1130 1547
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeom) show gr
+ gsave 1130 1511
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGlobalPosition) show gr
+ gsave 1130 1475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsList) show gr
+ gsave 1130 1439
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergy) show gr 0.6 0.6 0.6 c
+ gsave 1130 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalPosition) show gr 0 0 1 c
+ gsave 1130 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsMultiplicity) show gr
+ gsave 1130 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumDigitMultiplicity) show gr
+ gsave 1130 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumTrackMultiplicity) show gr
+ gsave 1130 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTracksMultiplicity) show gr 0.6 0.6 0.6 c
+ gsave 1130 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1130 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1113
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 708 1690 1463 bf black [] 0 sd 3 lw 1707 1463 m -11 Y 498 X 701 Y -12 X -690 Y f [] 0 sd 3 lw 1690 1463 m 708 Y 503 X -708 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSRecPoint) /Helvetica-Bold 32 stwn gsave 1941 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecPoint) show gr
+ gsave 1705 2075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPHOSMod) show gr
+ gsave 1705 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2006 m 503 X s 0.6 0.6 0.6 c
+ gsave 1705 1948
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0 0 1 c
+ gsave 1705 1912
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1705 1876
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 1705 1840
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 1705 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPHOSMod) show gr
+ gsave 1705 1767
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimaries) show gr 0.6 0.6 0.6 c
+ gsave 1705 1731
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEmc) show gr
+ gsave 1705 1695
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 1705 1659
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1705 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 1705 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 1705 1550
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1478
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 816 2265 1355 bf black [] 0 sd 3 lw 2283 1355 m -12 Y 497 X 810 Y -12 X -798 Y f [] 0 sd 3 lw 2265 1355 m 816 Y 503 X -816 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2268 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSPpsdRecPoint) /Helvetica-Bold 32 stwn gsave 2517 2123
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSPpsdRecPoint) show gr
+ gsave 2280 2074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDelta) show gr
+ gsave 2280 2038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2006 m 503 X s 0 0 1 c
+ gsave 2280 1947
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSPpsdRecPoint) show gr
+ gsave 2280 1911
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr
+ gsave 2280 1875
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 2280 1839
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDelta) show gr
+ gsave 2280 1803
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMultiplicity) show gr
+ gsave 2280 1766
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumMultiplicity) show gr
+ gsave 2280 1730
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalPosition) show gr
+ gsave 2280 1694
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTotalEnergy) show gr
+ gsave 2280 1658
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUp) show gr
+ gsave 2280 1622
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEmc) show gr
+ gsave 2280 1586
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 2280 1549
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 2280 1513
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 2280 1477
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2280 1441
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2280 1405
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 2280 1368
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSRECPARTICLE_H
+#define ALIPHOSRECPARTICLE_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// A Reconstructed Particle in PHOS
+// To become a general class of AliRoot ?
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TParticle.h"
+#include "TVector3.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSTrackSegment.h"
+#include "AliPHOSFastRecParticle.h"
+
+class AliPHOSRecParticle : public AliPHOSFastRecParticle {
+
+public:
+
+ AliPHOSRecParticle() {}; // ctor
+ AliPHOSRecParticle(AliPHOSTrackSegment * ts) ; // ctor
+ AliPHOSRecParticle(const AliPHOSRecParticle & rp) ; // ctor
+ virtual ~AliPHOSRecParticle() ; // dtor
+
+ AliPHOSTrackSegment * GetPHOSTrackSegment() const { return fPHOSTrackSegment ; }
+ virtual Int_t * GetPrimaries(Int_t & number) ;
+
+private:
+
+ AliPHOSTrackSegment * fPHOSTrackSegment ; // pointer to the associated track segment in PHOS
+
+ ClassDef(AliPHOSRecParticle,1) // Reconstructed Particle
+};
+
+#endif // AliPHOSRECPARTICLE_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSRecParticle</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSRecParticle</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSRecParticle:description>class description</a> - <a href="src/AliPHOSRecParticle.cxx.html">source file</a> - <a href="AliPHOSRecParticle_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSRecParticle" href="AliPHOSRecParticle.h">AliPHOSRecParticle</a> : public <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle</a><!--PLAIN-->(<a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>* ts)
+<!--TAB6--> <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle</a><!--PLAIN-->(const <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a>& rp)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:~AliPHOSRecParticle">~AliPHOSRecParticle</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:GetPHOSTrackSegment">GetPHOSTrackSegment</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:GetPrimaries">GetPrimaries</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecParticle:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSRecParticle:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>* <!--TAB--><!--BOLD--><a name="AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPHOSTrackSegment">pointer to the associated track segment in PHOS </a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSRecParticle:description">Class Description</a></h2>
+<pre> A Reconstructed Particle in PHOS
+ To become a general class of AliRoot ?
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSRecParticle:AliPHOSRecParticle" href="src/AliPHOSRecParticle.cxx.html#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle</a>(<a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * ts)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSRecParticle:AliPHOSRecParticle" href="src/AliPHOSRecParticle.cxx.html#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle</a>(const <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> & rp)
+<br>
+<pre> copy ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSRecParticle:~AliPHOSRecParticle" href="src/AliPHOSRecParticle.cxx.html#AliPHOSRecParticle:~AliPHOSRecParticle">~AliPHOSRecParticle</a>()
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSRecParticle:GetPrimaries" href="src/AliPHOSRecParticle.cxx.html#AliPHOSRecParticle:GetPrimaries">GetPrimaries</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Retrieves all the primary particles at the origine of this reconstructed particle
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> <a name="AliPHOSRecParticle:AliPHOSRecParticle" href="AliPHOSRecParticle.h">AliPHOSRecParticle</a>(const <a href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a>& rp)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>* <a name="AliPHOSRecParticle:GetPHOSTrackSegment" href="AliPHOSRecParticle.h">GetPHOSTrackSegment</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSRecParticle:Class" href="AliPHOSRecParticle.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSRecParticle:IsA" href="AliPHOSRecParticle.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecParticle:ShowMembers" href="AliPHOSRecParticle.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecParticle:Streamer" href="AliPHOSRecParticle.h">Streamer</a>(TBuffer& b)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSRecParticle_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Sun Mar 12 00:45:56 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 886 1793 36 378 bf black [] 0 sd
+ 3 lw 54 378 m -12 Y 880 X 1787 Y -12 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 886 X -1793 Y -886 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 883 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 886 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 479 2115
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 63 2068
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fUniqueID) show gr
+ gsave 63 2032
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fBits) show gr
+ gsave 63 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgDtorOnly) show gr
+ gsave 63 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgDirLevel) show gr
+ gsave 63 1923
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgObjectStat) show gr
+ gsave 63 1887
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kIsOnHeap) show gr
+ gsave 63 1851
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kNotDeleted) show gr
+ gsave 505 2068
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kZombie) show gr
+ gsave 505 2032
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kBitMask) show gr
+ gsave 505 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kSingleKey) show gr
+ gsave 505 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (kOverwrite) show gr
+ gsave 505 1923
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 886 X s 0 0 1 c
+ gsave 63 1796
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (MakeZombie) show gr
+ gsave 63 1760
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 63 1724
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 63 1688
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator=) show gr
+ gsave 63 1652
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AppendPad) show gr
+ gsave 63 1616
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Browse) show gr
+ gsave 63 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ClassName) show gr
+ gsave 63 1543
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Clear) show gr
+ gsave 63 1507
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Clone) show gr
+ gsave 63 1471
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Close) show gr
+ gsave 63 1435
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Compare) show gr
+ gsave 63 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Copy) show gr
+ gsave 63 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 63 1326
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 63 1290
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 63 1254
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DrawClass) show gr
+ gsave 63 1218
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DrawClone) show gr
+ gsave 63 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Dump) show gr
+ gsave 63 1145
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Execute) show gr
+ gsave 63 1109
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 63 1073
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 63 1037
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDrawOption) show gr
+ gsave 63 1001
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetUniqueID) show gr 0.6 0.6 0.6 c
+ gsave 63 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetName) show gr 0 0 1 c
+ gsave 63 928
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetIconName) show gr
+ gsave 63 892
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetOption) show gr
+ gsave 63 856
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetObjectInfo) show gr 0.6 0.6 0.6 c
+ gsave 63 820
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTitle) show gr 0 0 1 c
+ gsave 63 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (HandleTimer) show gr
+ gsave 63 747
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Hash) show gr
+ gsave 63 711
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InheritsFrom) show gr
+ gsave 63 675
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InheritsFrom) show gr
+ gsave 63 639
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Inspect) show gr
+ gsave 63 603
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsFolder) show gr
+ gsave 63 566
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsEqual) show gr
+ gsave 63 530
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsSortable) show gr
+ gsave 63 494
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsModified) show gr
+ gsave 63 458
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsOnHeap) show gr
+ gsave 63 422
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsZombie) show gr
+ gsave 63 385
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Notify) show gr
+ gsave 505 1796
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ls) show gr
+ gsave 505 1760
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 505 1724
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 505 1688
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 505 1652
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 505 1616
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Read) show gr
+ gsave 505 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (RecursiveRemove) show gr
+ gsave 505 1543
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SavePrimitive) show gr
+ gsave 505 1507
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDrawOption) show gr
+ gsave 505 1471
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetUniqueID) show gr
+ gsave 505 1435
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 505 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Write) show gr
+ gsave 505 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator new) show gr
+ gsave 505 1326
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator new) show gr
+ gsave 505 1290
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (operator delete) show gr
+ gsave 505 1254
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetBit) show gr
+ gsave 505 1218
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetBit) show gr
+ gsave 505 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ResetBit) show gr
+ gsave 505 1145
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TestBit) show gr
+ gsave 505 1109
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (InvertBit) show gr
+ gsave 505 1073
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Warning) show gr
+ gsave 505 1037
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Error) show gr
+ gsave 505 1001
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SysError) show gr
+ gsave 505 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Fatal) show gr
+ gsave 505 928
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AbstractMethod) show gr
+ gsave 505 892
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (MayNotUse) show gr
+ gsave 505 856
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 505 820
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDtorOnly) show gr
+ gsave 505 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDtorOnly) show gr
+ gsave 505 747
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDirLevel) show gr
+ gsave 505 711
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDirLevel) show gr
+ gsave 505 675
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetObjectStat) show gr
+ gsave 505 639
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetObjectStat) show gr
+ gsave 505 603
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 505 566
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 505 530
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 505 494
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 505 458
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 886 1576 994 595 bf black [] 0 sd 3 lw 1011 595 m -12 Y 880 X 1570 Y -11 X -1558 Y f [] 0 sd 3 lw 994 595 m 1576 Y 886 X -1576 Y -886 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 883 55 997 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 994 2115 m 886 X s 0 0 1 c
+ /xs 0 def (TParticle) /Helvetica-Bold 32 stwn gsave 1437 2117
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TParticle) show gr
+ gsave 1020 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPdgCode) show gr
+ gsave 1020 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fStatusCode) show gr
+ gsave 1020 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fMother[2]) show gr
+ gsave 1020 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fDaughter[2]) show gr
+ gsave 1020 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fWeight) show gr
+ gsave 1020 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fCalcMass) show gr
+ gsave 1020 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPx) show gr
+ gsave 1020 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPy) show gr
+ gsave 1020 1780
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPz) show gr
+ gsave 1020 1744
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fE) show gr
+ gsave 1463 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fVx) show gr
+ gsave 1463 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fVy) show gr
+ gsave 1463 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fVz) show gr
+ gsave 1463 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fVt) show gr
+ gsave 1463 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPolarTheta) show gr
+ gsave 1463 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPolarPhi) show gr
+ gsave 1463 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fParticlePDG) show gr
+ gsave 1463 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 994 1753 m 886 X s 0 0 1 c
+ gsave 1020 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TParticle) show gr
+ gsave 1020 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TParticle) show gr
+ gsave 1020 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TParticle) show gr
+ gsave 1020 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetStatusCode) show gr
+ gsave 1020 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPdgCode) show gr
+ gsave 1020 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetFirstMother) show gr
+ gsave 1020 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMother) show gr
+ gsave 1020 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetSecondMother) show gr
+ gsave 1020 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetFirstDaughter) show gr
+ gsave 1020 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetDaughter) show gr
+ gsave 1020 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLastDaughter) show gr
+ gsave 1020 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetCalcMass) show gr
+ gsave 1020 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetMass) show gr
+ gsave 1020 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetNDaughters) show gr
+ gsave 1020 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPolarisation) show gr
+ gsave 1020 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetWeight) show gr
+ gsave 1020 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPDG) show gr
+ gsave 1020 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Beauty) show gr
+ gsave 1020 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Charm) show gr
+ gsave 1020 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Strangeness) show gr
+ gsave 1020 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Momentum) show gr
+ gsave 1020 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ProductionVertex) show gr
+ gsave 1020 894
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Vx) show gr
+ gsave 1020 858
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Vy) show gr
+ gsave 1020 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Vz) show gr
+ gsave 1020 785
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (T) show gr
+ gsave 1020 749
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Px) show gr
+ gsave 1020 713
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Py) show gr
+ gsave 1020 677
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Pz) show gr
+ gsave 1020 640
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (P) show gr
+ gsave 1020 604
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Pt) show gr
+ gsave 1463 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Energy) show gr
+ gsave 1463 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Eta) show gr
+ gsave 1463 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Phi) show gr
+ gsave 1463 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Theta) show gr
+ gsave 1463 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetFirstMother) show gr
+ gsave 1463 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetMother) show gr
+ gsave 1463 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLastMother) show gr
+ gsave 1463 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetFirstDaughter) show gr
+ gsave 1463 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetDaughter) show gr
+ gsave 1463 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLastDaughter) show gr
+ gsave 1463 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetCalcMass) show gr
+ gsave 1463 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetPolarisation) show gr
+ gsave 1463 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetPolarisation) show gr
+ gsave 1463 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetWeight) show gr
+ gsave 1463 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetMomentum) show gr
+ gsave 1463 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetMomentum) show gr
+ gsave 1463 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetProductionVertex) show gr
+ gsave 1463 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetProductionVertex) show gr 0.6 0.6 0.6 c
+ gsave 1463 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Paint) show gr
+ gsave 1463 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 1463 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Sizeof3D) show gr 0.6 0.6 0.6 c
+ gsave 1463 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1463 894
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 1463 858
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetName) show gr
+ gsave 1463 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetTitle) show gr 0.6 0.6 0.6 c
+ gsave 1463 785
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 1463 749
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 1463 713
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr
+ gsave 1463 677
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 886 450 994 113 bf black [] 0 sd 3 lw 1011 113 m -12 Y 880 X 444 Y -11 X -432 Y f [] 0 sd 3 lw 994 113 m 450 Y 886 X -450 Y -886 X cl s [] 0 sd
+ 3 lw 0.8 0.8 0.8 c 883 55 997 507 bf black [] 0 sd 3 lw [] 0 sd 3 lw 994 507 m 886 X s 0 0 1 c
+ /xs 0 def (TAttLine) /Helvetica-Bold 32 stwn gsave 1437 518
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 1020 475
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLineColor) show gr
+ gsave 1020 447
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLineStyle) show gr
+ gsave 1020 418
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fLineWidth) show gr
+ gsave 1463 475
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 994 422 m 886 X s 0 0 1 c
+ gsave 1020 376
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 1020 348
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 1020 320
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Copy) show gr
+ gsave 1020 292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DistancetoLine) show gr
+ gsave 1020 264
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLineColor) show gr
+ gsave 1020 235
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLineStyle) show gr
+ gsave 1020 207
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetLineWidth) show gr
+ gsave 1020 179
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Modify) show gr
+ gsave 1020 151
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ResetAttLine) show gr
+ gsave 1020 123
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SaveLineAttributes) show gr
+ gsave 1463 376
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLineAttributes) show gr
+ gsave 1463 348
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLineColor) show gr
+ gsave 1463 320
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLineStyle) show gr
+ gsave 1463 292
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetLineWidth) show gr
+ gsave 1463 264
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 1463 235
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 1463 207
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr
+ gsave 1463 179
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 886 224 994 -144 bf black [] 0 sd 3 lw 1891 0 m 63 Y -11 X -63 Y f [] 0 sd 3 lw 994 0 m 80 Y s [] 0 sd 3 lw 994 80 m 886 X -80 Y s [] 0 sd 3 lw
+ 0.8 0.8 0.8 c 883 55 997 25 bf black [] 0 sd 3 lw [] 0 sd 3 lw 994 24 m 886 X s 0 0 1 c
+ /xs 0 def (TAtt3D) /Helvetica-Bold 32 stwn gsave 1437 37
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAtt3D) show gr
+ gsave 1020 -5
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw 0 0 1 c
+ gsave 0 -47
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAtt3D) show gr
+ gsave 0 -75
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Sizeof3D) show gr
+ gsave 0 -103
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 0 -132
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 0 -47
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr
+ gsave 0 -75
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 443 816 1951 1355 bf black [] 0 sd 3 lw 1969 1355 m -12 Y 437 X 810 Y -12 X -798 Y f [] 0 sd 3 lw 1951 1355 m 816 Y 443 X -816 Y -443 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 440 55 1954 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1951 2115 m 443 X s 0 0 1 c
+ /xs 0 def (AliPHOSFastRecParticle) /Helvetica-Bold 32 stwn gsave 2173 2123
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 1965 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fType) show gr
+ gsave 1965 2040
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPrimary) show gr
+ gsave 1965 2003
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1951 1970 m 443 X s 0 0 1 c
+ gsave 1965 1913
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 1965 1877
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 1965 1841
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSFastRecParticle) show gr
+ gsave 1965 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1965 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Draw) show gr
+ gsave 1965 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ExecuteEvent) show gr 0.6 0.6 0.6 c
+ gsave 1965 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPrimaries) show gr 0 0 1 c
+ gsave 1965 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetType) show gr
+ gsave 1965 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Name) show gr
+ gsave 1965 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Paint) show gr
+ gsave 1965 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Print) show gr
+ gsave 1965 1515
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetPrimary) show gr
+ gsave 1965 1479
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (SetType) show gr 0.6 0.6 0.6 c
+ gsave 1965 1443
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 1965 1406
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 1965 1370
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 443 491 2466 1680 bf black [] 0 sd 3 lw 2484 1680 m -11 Y 437 X 484 Y -12 X -473 Y f [] 0 sd 3 lw 2466 1680 m 491 Y 443 X -491 Y -443 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 440 55 2469 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2466 2115 m 443 X s 0 0 1 c
+ /xs 0 def (AliPHOSRecParticle) /Helvetica-Bold 32 stwn gsave 2688 2126
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecParticle) show gr
+ gsave 2480 2078
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fPHOSTrackSegment) show gr
+ gsave 2480 2042
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2466 2006 m 443 X s 0 0 1 c
+ gsave 2480 1952
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecParticle) show gr
+ gsave 2480 1916
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecParticle) show gr
+ gsave 2480 1879
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecParticle) show gr
+ gsave 2480 1843
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPHOSTrackSegment) show gr
+ gsave 2480 1807
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (GetPrimaries) show gr
+ gsave 2480 1771
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (Class) show gr
+ gsave 2480 1735
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (IsA) show gr
+ gsave 2480 1698
+ t 0 r 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSRECPOINT_H
+#define ALIPHOSRECPOINT_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+//_________________________________________________________________________
+// Base Class for PHOS Reconstructed Points
+//
+//*-- Author: Gines Martinez (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TMarker.h"
+#include "TGraph.h"
+#include "TPaveText.h"
+
+// --- Standard library ---
+
+#include <cassert>
+
+// --- AliRoot header files ---
+
+#include "AliRecPoint.h"
+
+
+class AliPHOSRecPoint : public AliRecPoint {
+
+public:
+
+ AliPHOSRecPoint() ; // ctor
+ virtual ~AliPHOSRecPoint(){} // dtor
+ virtual void AddDigit(AliDigitNew & digit, Float_t Energy) = 0 ;
+ virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
+ virtual void Draw(Option_t * option="") ;
+ virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) ;
+ virtual Int_t GetPHOSMod(void) ;
+ virtual Int_t * GetPrimaries(Int_t & number) ;
+ virtual Bool_t IsEmc(void){return kTRUE ;}
+ virtual void Paint(Option_t * option="");
+ virtual void Print(Option_t * opt = "void") {}
+
+ virtual Int_t Compare(TObject * obj) { assert(0==1) ; }
+ virtual Bool_t IsSortable() const { return kTRUE ; }
+
+protected:
+
+ Int_t fPHOSMod ; // PHOS Module number in which the RecPoint is found
+
+ ClassDef(AliPHOSRecPoint,1) // RecPoint for PHOS (Base Class)
+
+};
+
+#endif // AliPHOSRECPOINT_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSRecPoint</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSRecPoint</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSRecPoint:description>class description</a> - <a href="src/AliPHOSRecPoint.cxx.html">source file</a> - <a href="AliPHOSRecPoint_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSRecPoint" href="AliPHOSRecPoint.h">AliPHOSRecPoint</a> : public AliRecPoint</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:~AliPHOSRecPoint">~AliPHOSRecPoint</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:AddDigit">AddDigit</a><!--PLAIN-->(AliDigitNew& digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Compare">Compare</a><!--PLAIN-->(TObject* obj)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:DistancetoPrimitive">DistancetoPrimitive</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Draw">Draw</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:ExecuteEvent">ExecuteEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:GetPHOSMod">GetPHOSMod</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:GetPrimaries">GetPrimaries</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:IsEmc">IsEmc</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:IsSortable">IsSortable</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Paint">Paint</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Print">Print</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt = <a href="ListOfTypes.html#void">void</a>)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSRecPoint:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSRecPoint:Data Members">Data Members</a></h3>
+
+<!--TAB4--> <b>protected:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSRecPoint:fPHOSMod">fPHOSMod</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPHOSMod">PHOS Module number in which the RecPoint is found</a></i>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>, <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSRecPoint:description">Class Description</a></h2>
+<pre> Base Class for PHOS Reconstructed Points
+
+*-- Author: Gines Martinez (SUBATECH)
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSRecPoint:DistancetoPrimitive" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:DistancetoPrimitive">DistancetoPrimitive</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Compute distance from point px,py to a <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> considered as a Tmarker
+ Compute the closest distance of approach from point px,py to this marker.
+ The distance is computed in pixels units.
+</pre><hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:Draw" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:Draw">Draw</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *option)
+ <br>
+<pre> Draw this <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> with its current attributes
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:ExecuteEvent" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:ExecuteEvent">ExecuteEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Execute action corresponding to one event
+ This member function is called when a <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> is clicked with the locator
+
+ If Left button is clicked on <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on
+ and switched off when the mouse button is released.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSRecPoint:GetPHOSMod" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:GetPHOSMod">GetPHOSMod</a>()
+<br>
+<pre> Returns the PHOS module in which the RecPoint is found
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSRecPoint:GetPrimaries" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:GetPrimaries">GetPrimaries</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Constructs the list of primary particles which have contributed to this RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:Paint" href="src/AliPHOSRecPoint.cxx.html#AliPHOSRecPoint:Paint">Paint</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *)
+<br>
+<pre> Paint this ALiRecPoint as a TMarker with its current attributes
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:AddDigit" href="AliPHOSRecPoint.h">AddDigit</a>(AliDigitNew& digit, <a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSRecPoint:IsEmc" href="AliPHOSRecPoint.h">IsEmc</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:Print" href="AliPHOSRecPoint.h">Print</a>(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt = <a href="ListOfTypes.html#void">void</a>)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSRecPoint:Compare" href="AliPHOSRecPoint.h">Compare</a>(TObject* obj)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSRecPoint:IsSortable" href="AliPHOSRecPoint.h">IsSortable</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSRecPoint:Class" href="AliPHOSRecPoint.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSRecPoint:IsA" href="AliPHOSRecPoint.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:ShowMembers" href="AliPHOSRecPoint.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:Streamer" href="AliPHOSRecPoint.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSRecPoint:~AliPHOSRecPoint" href="AliPHOSRecPoint.h">~AliPHOSRecPoint</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSRecPoint_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Sun Mar 12 00:45:56 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr 0.6 0.6 0.6 c
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0 0 1 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr 0.6 0.6 0.6 c
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr 0 0 1 c
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1070 1114 1101 bf black [] 0 sd 3 lw 1132 1101 m -11 Y 498 X 1063 Y -12 X -1052 Y f [] 0 sd 3 lw 1114 1101 m 1070 Y 504 X -1070 Y -504 X
+ cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliRecPoint) /Helvetica-Bold 32 stwn gsave 1366 2120
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliRecPoint) show gr
+ gsave 1130 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fAmp) show gr
+ gsave 1130 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigitsList) show gr
+ gsave 1130 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 1130 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPos) show gr
+ gsave 1130 1927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLocPosM) show gr
+ gsave 1130 1891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxDigit) show gr
+ gsave 1130 1855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulDigit) show gr
+ gsave 1130 1819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMaxTrack) show gr
+ gsave 1130 1782
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMulTrack) show gr
+ gsave 1130 1746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTracksList) show gr
+ gsave 1130 1710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1680 m 504 X s 0.6 0.6 0.6 c
+ gsave 1130 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0 0 1 c
+ gsave 1130 1583
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetCovarianceMatrix) show gr
+ gsave 1130 1547
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeom) show gr
+ gsave 1130 1511
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGlobalPosition) show gr
+ gsave 1130 1475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsList) show gr
+ gsave 1130 1439
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergy) show gr
+ gsave 1130 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLocalPosition) show gr
+ gsave 1130 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDigitsMultiplicity) show gr
+ gsave 1130 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumDigitMultiplicity) show gr
+ gsave 1130 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMaximumTrackMultiplicity) show gr
+ gsave 1130 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTracksMultiplicity) show gr 0.6 0.6 0.6 c
+ gsave 1130 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1130 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1113
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 708 1690 1463 bf black [] 0 sd 3 lw 1707 1463 m -11 Y 498 X 701 Y -12 X -690 Y f [] 0 sd 3 lw 1690 1463 m 708 Y 503 X -708 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSRecPoint) /Helvetica-Bold 32 stwn gsave 1941 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSRecPoint) show gr
+ gsave 1705 2075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPHOSMod) show gr
+ gsave 1705 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2006 m 503 X s 0 0 1 c
+ gsave 1705 1948
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr
+ gsave 1705 1912
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1705 1876
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 1705 1840
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 1705 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPHOSMod) show gr
+ gsave 1705 1767
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimaries) show gr
+ gsave 1705 1731
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEmc) show gr
+ gsave 1705 1695
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 1705 1659
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1705 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 1705 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 1705 1550
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1514
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1478
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSRECONSTRUCTIONER_H
+#define ALIPHOSRECONSTRUCTIONER_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Algorithm class for the reconstruction: clusterizer
+// track segment maker
+// particle identifier
+//
+//*-- Author: Gines Martinez & Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+#include "AliPHOSClusterizer.h"
+#include "AliPHOSTrackSegmentMaker.h"
+#include "AliPHOSPID.h"
+#include "TClonesArray.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+class AliPHOSReconstructioner : public TObject {
+
+public:
+
+ AliPHOSReconstructioner(){} //ctor
+ AliPHOSReconstructioner(AliPHOSClusterizer * Clusterizer, AliPHOSTrackSegmentMaker * Tracker,
+ AliPHOSPID * Identifier); //ctor
+ ~AliPHOSReconstructioner(){} // dtor
+
+ AliPHOSClusterizer * GetClusterizer() { return fClusterizer ; }
+ void Init(AliPHOSClusterizer * Clusterizer, AliPHOSTrackSegmentMaker * Tracker,
+ AliPHOSPID * Identifier) ;
+ void Make(TClonesArray * DL, RecPointsList * emccl, RecPointsList * ppsdl,
+ TrackSegmentsList * trsl, RecParticlesList * rpl) ; // does the job
+
+
+private:
+
+ AliPHOSClusterizer * fClusterizer ; // Method for clusterization
+ AliPHOSTrackSegmentMaker * fTrackSegmentMaker ; // Method for track segments finding
+ AliPHOSPID * fPID ; // Method for identifying the type of particle
+
+ ClassDef(AliPHOSReconstructioner,1) // Reconstruction algorithm class (Base Class)
+
+};
+
+#endif // ALIPHOSRECONSTRUCTIONER_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSReconstructioner</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSReconstructioner</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSReconstructioner:description>class description</a> - <a href="src/AliPHOSReconstructioner.cxx.html">source file</a> - <a href="AliPHOSReconstructioner_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSReconstructioner" href="AliPHOSReconstructioner.h">AliPHOSReconstructioner</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:AliPHOSReconstructioner">AliPHOSReconstructioner</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:AliPHOSReconstructioner">AliPHOSReconstructioner</a><!--PLAIN-->(<a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* Clusterizer, <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* Tracker, <a href="./AliPHOSPID.html">AliPHOSPID</a>* Identifier)
+<!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:AliPHOSReconstructioner">AliPHOSReconstructioner</a><!--PLAIN-->(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:~AliPHOSReconstructioner">~AliPHOSReconstructioner</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:GetClusterizer">GetClusterizer</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:Init">Init</a><!--PLAIN-->(<a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* Clusterizer, <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* Tracker, <a href="./AliPHOSPID.html">AliPHOSPID</a>* Identifier)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:Make">Make</a><!--PLAIN-->(TClonesArray* DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emccl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* rpl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSReconstructioner:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSReconstructioner:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* <!--TAB--><!--BOLD--><a name="AliPHOSReconstructioner:fClusterizer">fClusterizer</a><!--PLAIN--> <!--TAB--><i><a name="Title:fClusterizer">Method for clusterization </a></i>
+<!--TAB6--> <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* <!--TAB--><!--BOLD--><a name="AliPHOSReconstructioner:fTrackSegmentMaker">fTrackSegmentMaker</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTrackSegmentMaker">Method for track segments finding</a></i>
+<!--TAB6--> <a href="./AliPHOSPID.html">AliPHOSPID</a>* <!--TAB--><!--BOLD--><a name="AliPHOSReconstructioner:fPID">fPID</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPID">Method for identifying the type of particle</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSReconstructioner:description">Class Description</a></h2>
+<pre> Algorithm class for the reconstruction: clusterizer
+ track segment maker
+ particle identifier
+
+*-- Author: Gines Martinez & Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSReconstructioner:AliPHOSReconstructioner" href="src/AliPHOSReconstructioner.cxx.html#AliPHOSReconstructioner:AliPHOSReconstructioner">AliPHOSReconstructioner</a>(<a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a> * Clusterizer,
+ <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> * Tracker,
+ <a href="./AliPHOSPID.html">AliPHOSPID</a> * Pid)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSReconstructioner:Init" href="src/AliPHOSReconstructioner.cxx.html#AliPHOSReconstructioner:Init">Init</a>(<a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a> * Clusterizer,
+ <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> * Tracker,
+ <a href="./AliPHOSPID.html">AliPHOSPID</a> * Pid)
+<br>
+<hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSReconstructioner:Make" href="src/AliPHOSReconstructioner.cxx.html#AliPHOSReconstructioner:Make">Make</a>(TClonesArray * dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * emccl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl,
+ <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl, <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a> * rpl)
+<br>
+<pre> Launches the Reconstruction process in the sequence: Make the reconstructed poins (clusterize)
+ Make the track segments
+ Make the reconstructed particles
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> <a name="AliPHOSReconstructioner:AliPHOSReconstructioner" href="AliPHOSReconstructioner.h">AliPHOSReconstructioner</a>(<a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* Clusterizer, <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* Tracker, <a href="./AliPHOSPID.html">AliPHOSPID</a>* Identifier)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a>* <a name="AliPHOSReconstructioner:GetClusterizer" href="AliPHOSReconstructioner.h">GetClusterizer</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSReconstructioner:Class" href="AliPHOSReconstructioner.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSReconstructioner:IsA" href="AliPHOSReconstructioner.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSReconstructioner:ShowMembers" href="AliPHOSReconstructioner.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSReconstructioner:Streamer" href="AliPHOSReconstructioner.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> <a name="AliPHOSReconstructioner:AliPHOSReconstructioner" href="AliPHOSReconstructioner.h">AliPHOSReconstructioner</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSReconstructioner:~AliPHOSReconstructioner" href="AliPHOSReconstructioner.h">~AliPHOSReconstructioner</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSReconstructioner_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Wed Mar 8 22:24:36 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 599 1114 1572 bf black [] 0 sd 3 lw 1132 1572 m -12 Y 498 X 593 Y -12 X -581 Y f [] 0 sd 3 lw 1114 1572 m 599 Y 504 X -599 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSReconstructioner) /Helvetica-Bold 32 stwn gsave 1366 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSReconstructioner) show gr
+ gsave 1130 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fClusterizer) show gr
+ gsave 1130 2040
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrackSegmentMaker) show gr
+ gsave 1130 2004
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPID) show gr
+ gsave 1130 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1934 m 504 X s 0 0 1 c
+ gsave 1130 1877
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSReconstructioner) show gr
+ gsave 1130 1841
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSReconstructioner) show gr
+ gsave 1130 1805
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetClusterizer) show gr
+ gsave 1130 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 1130 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Make) show gr
+ gsave 1130 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1624
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1130 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSSUBTRACK_H
+#define ALIPHOSSUBTRACK_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Track segment in PHOS
+// Can be : 1 EmcRecPoint
+// 1 EmcRecPoint + 1 PPSD
+// 1 EmcRecPoint + 1 PPSD + 1 PPSD
+//
+//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
+
+// --- ROOT system ---
+
+#include "TObject.h"
+#include "TVector3.h"
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "AliPHOSEmcRecPoint.h"
+#include "AliPHOSPpsdRecPoint.h"
+
+class AliPHOSTrackSegment : public TObject {
+
+public:
+
+ AliPHOSTrackSegment() {} // ctor
+ AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp,
+ AliPHOSPpsdRecPoint * PpsdLow ) ; // ctor
+ AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
+ virtual ~AliPHOSTrackSegment() {} // dtor
+
+ void Copy(TObject & obj) ;
+ virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
+ virtual void Draw(Option_t * option="") ;
+ virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
+ Float_t GetEnergy(){ return fEmcRecPoint->GetTotalEnergy() ;} // Returns energy in EMC
+
+ Float_t GetDistanceInPHOSPlane(void) ; // Computes in PHOS plane the relative position between EMC and PPSD clusters
+ virtual Int_t GetPHOSMod(void) {return fEmcRecPoint->GetPHOSMod(); }
+ TVector3 GetMomentumDirection() ; // Returns the momentum direction
+ void GetPosition( TVector3 & pos ) ; // Returns positions of hit
+ Int_t * GetPrimariesEmc(Int_t & number) ;
+ Int_t * GetPrimariesPpsdLow(Int_t & number) ;
+ Int_t * GetPrimariesPpsdUp(Int_t & number) ;
+ AliPHOSEmcRecPoint * GetEmcRecPoint() const { return fEmcRecPoint ; }
+ AliPHOSPpsdRecPoint * GetPpsdLow() const { return fPpsdLow ; }
+ AliPHOSPpsdRecPoint * GetPpsdUp() const { return fPpsdUp ; }
+ virtual void Paint(Option_t * option="");
+ void Print() ;
+
+
+private:
+
+ AliPHOSEmcRecPoint * fEmcRecPoint ; // The EMC reconstructed point
+ AliPHOSPpsdRecPoint * fPpsdLow ; // The PPSD reconstructed point from the lower layer
+ AliPHOSPpsdRecPoint * fPpsdUp ; // The PPSD reconstructed point from the upper layer
+
+
+ ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS
+
+};
+
+#endif // AliPHOSSUBTRACK_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegment</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSTrackSegment</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSTrackSegment:description>class description</a> - <a href="src/AliPHOSTrackSegment.cxx.html">source file</a> - <a href="AliPHOSTrackSegment_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSTrackSegment" href="AliPHOSTrackSegment.h">AliPHOSTrackSegment</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment</a><!--PLAIN-->(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* EmcRecPoint, <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* PpsdUp, <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* PpsdLow)
+<!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment</a><!--PLAIN-->(const <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>& ts)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:~AliPHOSTrackSegment">~AliPHOSTrackSegment</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Copy">Copy</a><!--PLAIN-->(TObject& obj)
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:DistancetoPrimitive">DistancetoPrimitive</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Draw">Draw</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:ExecuteEvent">ExecuteEvent</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetEmcRecPoint">GetEmcRecPoint</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetEnergy">GetEnergy</a><!--PLAIN-->()
+<!--TAB6--> TVector3 <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetMomentumDirection">GetMomentumDirection</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPHOSMod">GetPHOSMod</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPosition">GetPosition</a><!--PLAIN-->(TVector3& pos)
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPpsdLow">GetPpsdLow</a><!--PLAIN-->() const
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPpsdUp">GetPpsdUp</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPrimariesEmc">GetPrimariesEmc</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPrimariesPpsdLow">GetPrimariesPpsdLow</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:GetPrimariesPpsdUp">GetPrimariesPpsdUp</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a>& number)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Paint">Paint</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* option)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Print">Print</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegment:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSTrackSegment:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEmcRecPoint">The EMC reconstructed point</a></i>
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdLow">The PPSD reconstructed point from the lower layer</a></i>
+<!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdUp">The PPSD reconstructed point from the upper layer</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSTrackSegment:description">Class Description</a></h2>
+<pre> Track segment in PHOS
+ Can be : 1 EmcRecPoint
+ 1 EmcRecPoint + 1 PPSD
+ 1 EmcRecPoint + 1 PPSD + 1 PPSD
+
+*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSTrackSegment:AliPHOSTrackSegment" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment</a>( <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emc , <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdRP1,
+ <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdRP2 )
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSTrackSegment:AliPHOSTrackSegment" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment</a>( const <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> & ts)
+<br>
+<pre> Copy ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:Copy" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:Copy">Copy</a>(TObject & obj)
+<br>
+<pre> Copy of a track segment into another track segment
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSTrackSegment:DistancetoPrimitive" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:DistancetoPrimitive">DistancetoPrimitive</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Compute distance from point px,py to a <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> considered as a Tmarker
+ Compute the closest distance of approach from point px,py to this marker.
+ The distance is computed in pixels units.
+</pre><hr>
+<!--FUNCTION--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:Draw" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:Draw">Draw</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *option)
+ <br>
+<pre> Draw this <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> with its current attribute
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:ExecuteEvent" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:ExecuteEvent">ExecuteEvent</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> event, <a href="ListOfTypes.html#Int_t">Int_t</a> px, <a href="ListOfTypes.html#Int_t">Int_t</a> py)
+<br>
+<pre> Execute action corresponding to one event
+ This member function is called when a <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> is clicked with the locator
+
+ If Left button is clicked on <a href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on
+ and switched off when the mouse button is released.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSTrackSegment:GetDistanceInPHOSPlane" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a>()
+<br>
+<pre> Calculates the distance between the EMC RecPoint and PPSD RecPoint
+</pre><hr>
+<!--FUNCTION-->TVector3 <a name="AliPHOSTrackSegment:GetMomentumDirection" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetMomentumDirection">GetMomentumDirection</a>()
+<br>
+<pre> Calculates the momentum direction:
+ 1. if only a EMC RecPoint, direction is given by IP and this RecPoint
+ 2. if a EMC RecPoint and one PPSD RecPoint, direction is given by the line through the 2 recpoints
+ 3. if a EMC RecPoint and two PPSD RecPoints, dirrection is given by the average line through
+ the 2 pairs of recpoints
+ However because of the poor position resolution of PPSD the direction is always taken as if we were
+ in case 1.
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSTrackSegment:GetPrimariesEmc" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetPrimariesEmc">GetPrimariesEmc</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Retrieves the primary particle(s) at the origin of the EMC RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSTrackSegment:GetPrimariesPpsdLow" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetPrimariesPpsdLow">GetPrimariesPpsdLow</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Retrieves the primary particle(s) at the origin of the lower PPSD RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a>* <a name="AliPHOSTrackSegment:GetPrimariesPpsdUp" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetPrimariesPpsdUp">GetPrimariesPpsdUp</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> & number)
+<br>
+<pre> Retrieves the primary particle(s) at the origin of the upper PPSD RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:GetPosition" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:GetPosition">GetPosition</a>( TVector3 & pos )
+<br>
+<pre> Returns position of the EMC RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:Paint" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:Paint">Paint</a>(<a href="ListOfTypes.html#Option_t">Option_t</a> *)
+<br>
+<pre> Paint this ALiPHOSTrackSegment as a TMarker with its current attributes
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:Print" href="src/AliPHOSTrackSegment.cxx.html#AliPHOSTrackSegment:Print">Print</a>()
+<br>
+<pre> Print all information on this track Segment
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> <a name="AliPHOSTrackSegment:AliPHOSTrackSegment" href="AliPHOSTrackSegment.h">AliPHOSTrackSegment</a>(const <a href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>& ts)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSTrackSegment:GetEnergy" href="AliPHOSTrackSegment.h">GetEnergy</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSTrackSegment:GetPHOSMod" href="AliPHOSTrackSegment.h">GetPHOSMod</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* <a name="AliPHOSTrackSegment:GetEmcRecPoint" href="AliPHOSTrackSegment.h">GetEmcRecPoint</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <a name="AliPHOSTrackSegment:GetPpsdLow" href="AliPHOSTrackSegment.h">GetPpsdLow</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* <a name="AliPHOSTrackSegment:GetPpsdUp" href="AliPHOSTrackSegment.h">GetPpsdUp</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegment:Class" href="AliPHOSTrackSegment.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegment:IsA" href="AliPHOSTrackSegment.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:ShowMembers" href="AliPHOSTrackSegment.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:Streamer" href="AliPHOSTrackSegment.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegment:~AliPHOSTrackSegment" href="AliPHOSTrackSegment.h">~AliPHOSTrackSegment</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+#ifndef ALIPHOSTRACKSEGMENTMAKER_H
+#define ALIPHOSTRACKSEGMENTMAKER_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Algorithm Base class to construct PHOS track segments
+// Associates EMC and PPSD clusters
+// Unfolds the EMC cluster
+//
+//*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
+
+// --- ROOT system ---
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "TObjArray.h"
+#include "AliPHOSClusterizer.h"
+#include "AliPHOSEmcRecPoint.h"
+#include "AliPHOSPpsdRecPoint.h"
+
+typedef TObjArray TrackSegmentsList ;
+
+class AliPHOSTrackSegmentMaker : public TObject {
+
+public:
+
+ AliPHOSTrackSegmentMaker() ;
+
+ virtual ~ AliPHOSTrackSegmentMaker(){} // dtor
+
+ virtual void MakeTrackSegments(DigitsList * DL, RecPointsList * emcl, RecPointsList * ppsdl, TrackSegmentsList * trsl ) = 0 ;
+ // does the job
+ virtual void SetMaxEmcPpsdDistance(Float_t r) = 0 ;
+ virtual void SetUnfoldFlag() = 0 ;
+ virtual void UnsetUnfoldFlag() = 0 ;
+
+ ClassDef( AliPHOSTrackSegmentMaker,1) // Algorithm class to make PHOS track segments (Base Class)
+
+};
+
+#endif // ALIPHOSTRACKSEGMENTMAKER_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:51 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegmentMaker</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSTrackSegmentMaker</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSTrackSegmentMaker:description>class description</a> - <a href="src/AliPHOSTrackSegmentMaker.cxx.html">source file</a> - <a href="AliPHOSTrackSegmentMaker_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSTrackSegmentMaker" href="AliPHOSTrackSegmentMaker.h">AliPHOSTrackSegmentMaker</a> : public TObject</h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:~AliPHOSTrackSegmentMaker">~AliPHOSTrackSegmentMaker</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:MakeTrackSegments">MakeTrackSegments</a><!--PLAIN-->(<a href="ListOfTypes.html#DigitsList">DigitsList</a>* DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:SetMaxEmcPpsdDistance">SetMaxEmcPpsdDistance</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> r)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:SetUnfoldFlag">SetUnfoldFlag</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMaker:UnsetUnfoldFlag">UnsetUnfoldFlag</a><!--PLAIN-->()
+
+<h3><!--TAB2--> <a name="AliPHOSTrackSegmentMaker:Data Members">Data Members</a></h3>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSTrackSegmentMaker:description">Class Description</a></h2>
+<pre> Algorithm Base class to construct PHOS track segments
+ Associates EMC and PPSD clusters
+ Unfolds the EMC cluster
+
+*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:MakeTrackSegments" href="AliPHOSTrackSegmentMaker.h">MakeTrackSegments</a>(<a href="ListOfTypes.html#DigitsList">DigitsList</a>* DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:SetMaxEmcPpsdDistance" href="AliPHOSTrackSegmentMaker.h">SetMaxEmcPpsdDistance</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> r)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:SetUnfoldFlag" href="AliPHOSTrackSegmentMaker.h">SetUnfoldFlag</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:UnsetUnfoldFlag" href="AliPHOSTrackSegmentMaker.h">UnsetUnfoldFlag</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegmentMaker:Class" href="AliPHOSTrackSegmentMaker.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegmentMaker:IsA" href="AliPHOSTrackSegmentMaker.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:ShowMembers" href="AliPHOSTrackSegmentMaker.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:Streamer" href="AliPHOSTrackSegmentMaker.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMaker:~AliPHOSTrackSegmentMaker" href="AliPHOSTrackSegmentMaker.h">~AliPHOSTrackSegmentMaker</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSTrackSegmentMaker_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:51 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 418 1114 1753 bf black [] 0 sd 3 lw 1132 1753 m -12 Y 498 X 412 Y -12 X -400 Y f [] 0 sd 3 lw 1114 1753 m 418 Y 504 X -418 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSTrackSegmentMaker) /Helvetica-Bold 32 stwn gsave 1366 2126
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSTrackSegmentMaker) show gr
+ gsave 1130 2077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0 0 1 c
+ gsave 1130 1987
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeTrackSegments) show gr
+ gsave 1130 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMaxEmcPpsdDistance) show gr
+ gsave 1130 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUnfoldFlag) show gr
+ gsave 1130 1878
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UnsetUnfoldFlag) show gr
+ gsave 1130 1842
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1806
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1770
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSTRACKSEGMENTMAKERV1_H
+#define ALIPHOSTRACKSEGMENTMAKERV1_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Implementation version 1 of algorithm class to construct PHOS track segments
+// Associates EMC and PPSD clusters
+// Unfolds the EMC cluster
+//
+//*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
+
+// --- ROOT system ---
+
+// --- Standard library ---
+
+// --- AliRoot header files ---
+
+#include "TObjArray.h"
+#include "AliPHOSClusterizer.h"
+#include "AliPHOSEmcRecPoint.h"
+#include "AliPHOSPpsdRecPoint.h"
+#include "AliPHOSTrackSegmentMaker.h"
+#include "TMinuit.h"
+
+class AliPHOSTrackSegmentMakerv1 : public AliPHOSTrackSegmentMaker {
+
+public:
+
+ AliPHOSTrackSegmentMakerv1() ;
+ virtual ~ AliPHOSTrackSegmentMakerv1() ; // dtor
+
+ Bool_t FindFit(AliPHOSEmcRecPoint * emcRP, int * MaxAt, Float_t * maxAtEnergy,
+ Int_t NPar, Float_t * FitParametres) ; //Used in UnfoldClusters, calls TMinuit
+ void FillOneModule(DigitsList * Dl, RecPointsList * emcIn, TObjArray * emcOut, RecPointsList * ppsdIn,
+ TObjArray * ppsdOutUp, TObjArray * ppsdOutLow, Int_t &PHOSModule, Int_t & emcStopedAt,
+ Int_t & ppsdStopedAt) ; // Unfolds clusters and fills temporary arrais
+ Float_t GetDistanceInPHOSPlane(AliPHOSEmcRecPoint * EmcClu , AliPHOSPpsdRecPoint * Ppsd , Bool_t & TooFar ) ; // see R0
+
+ void MakeLinks(TObjArray * EmcRecPoints, TObjArray * PpsdRecPointsUp, TObjArray * PpsdRecPointsLow,
+ TClonesArray * LinkLowArray, TClonesArray *LinkUpArray) ; //Evaluates distances(links) between EMC and PPSD
+ void MakePairs(TObjArray * EmcRecPoints, TObjArray * PpsdRecPointsUp, TObjArray * PpsdRecPointsLow,
+ TClonesArray * LinkLowArray, TClonesArray * LinkUpArray, TrackSegmentsList * trsl) ;
+ //Finds pairs(triplets) with smallest link
+ void MakeTrackSegments(DigitsList * DL, RecPointsList * emcl, RecPointsList * ppsdl, TrackSegmentsList * trsl ) ; // does the job
+ virtual void SetMaxEmcPpsdDistance(Float_t r){ fR0 = r ;}
+ virtual void SetUnfoldFlag() { fUnfoldFlag = kTRUE ; } ;
+ static Double_t ShowerShape(Double_t r) ; // Shape of shower used in unfolding; class member function (not object member function)
+ void UnfoldClusters(DigitsList * DL, RecPointsList * emcIn, AliPHOSEmcRecPoint * iniEmc, Int_t Nmax,
+ int * maxAt, Float_t * maxAtEnergy, TObjArray * emclist) ; //Unfolds overlaping clusters using TMinuit package
+ virtual void UnsetUnfoldFlag() { fUnfoldFlag = kFALSE ; }
+
+private:
+
+ Float_t fDelta ; // parameter used for sorting
+ TMinuit * fMinuit ; // Minuit object needed by cluster unfolding
+ Float_t fR0 ; // Maximum distance between a EMC RecPoint and a PPSD RecPoint
+ Bool_t fUnfoldFlag ; // Directive to unfold or not the clusters in case of multiple maxima
+
+ ClassDef( AliPHOSTrackSegmentMakerv1,1) // Implementation version 1 of algorithm class to make PHOS track segments
+
+};
+
+#endif // AliPHOSTRACKSEGMENTMAKERV1_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:51 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegmentMakerv1</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSTrackSegmentMakerv1</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSTrackSegmentMakerv1:description>class description</a> - <a href="src/AliPHOSTrackSegmentMakerv1.cxx.html">source file</a> - <a href="AliPHOSTrackSegmentMakerv1_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSTrackSegmentMakerv1" href="AliPHOSTrackSegmentMakerv1.h">AliPHOSTrackSegmentMakerv1</a> : public <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1">AliPHOSTrackSegmentMakerv1</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1">AliPHOSTrackSegmentMakerv1</a><!--PLAIN-->(<a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:~AliPHOSTrackSegmentMakerv1">~AliPHOSTrackSegmentMakerv1</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:FillOneModule">FillOneModule</a><!--PLAIN-->(<a href="ListOfTypes.html#DigitsList">DigitsList</a>* Dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcIn, TObjArray* emcOut, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdIn, TObjArray* ppsdOutUp, TObjArray* ppsdOutLow, <a href="ListOfTypes.html#Int_t">Int_t</a>& PHOSModule, <a href="ListOfTypes.html#Int_t">Int_t</a>& emcStopedAt, <a href="ListOfTypes.html#Int_t">Int_t</a>& ppsdStopedAt)
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:FindFit">FindFit</a><!--PLAIN-->(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* emcRP, <a href="ListOfTypes.html#int">int</a>* MaxAt, <a href="ListOfTypes.html#Float_t">Float_t</a>* maxAtEnergy, <a href="ListOfTypes.html#Int_t">Int_t</a> NPar, <a href="ListOfTypes.html#Float_t">Float_t</a>* FitParametres)
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a><!--PLAIN-->(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* EmcClu, <a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>* Ppsd, <a href="ListOfTypes.html#Bool_t">Bool_t</a>& TooFar)
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:MakeLinks">MakeLinks</a><!--PLAIN-->(TObjArray* EmcRecPoints, TObjArray* PpsdRecPointsUp, TObjArray* PpsdRecPointsLow, TClonesArray* LinkLowArray, TClonesArray* LinkUpArray)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:MakePairs">MakePairs</a><!--PLAIN-->(TObjArray* EmcRecPoints, TObjArray* PpsdRecPointsUp, TObjArray* PpsdRecPointsLow, TClonesArray* LinkLowArray, TClonesArray* LinkUpArray, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:MakeTrackSegments">MakeTrackSegments</a><!--PLAIN-->(<a href="ListOfTypes.html#DigitsList">DigitsList</a>* DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* ppsdl, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* trsl)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:SetMaxEmcPpsdDistance">SetMaxEmcPpsdDistance</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> r)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:SetUnfoldFlag">SetUnfoldFlag</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:ShowerShape">ShowerShape</a><!--PLAIN-->(<a href="ListOfTypes.html#Double_t">Double_t</a> r)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:UnfoldClusters">UnfoldClusters</a><!--PLAIN-->(<a href="ListOfTypes.html#DigitsList">DigitsList</a>* DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* emcIn, <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>* iniEmc, <a href="ListOfTypes.html#Int_t">Int_t</a> Nmax, <a href="ListOfTypes.html#int">int</a>* maxAt, <a href="ListOfTypes.html#Float_t">Float_t</a>* maxAtEnergy, TObjArray* emclist)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSTrackSegmentMakerv1:UnsetUnfoldFlag">UnsetUnfoldFlag</a><!--PLAIN-->()
+
+<h3><!--TAB2--> <a name="AliPHOSTrackSegmentMakerv1:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a><!--PLAIN--> <!--TAB--><i><a name="Title:fDelta">parameter used for sorting</a></i>
+<!--TAB6--> TMinuit* <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegmentMakerv1:fMinuit">fMinuit</a><!--PLAIN--> <!--TAB--><i><a name="Title:fMinuit">Minuit object needed by cluster unfolding</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegmentMakerv1:fR0">fR0</a><!--PLAIN--> <!--TAB--><i><a name="Title:fR0">Maximum distance between a EMC RecPoint and a PPSD RecPoint </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Bool_t">Bool_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSTrackSegmentMakerv1:fUnfoldFlag">fUnfoldFlag</a><!--PLAIN--> <!--TAB--><i><a name="Title:fUnfoldFlag">Directive to unfold or not the clusters in case of multiple maxima</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSTrackSegmentMakerv1:description">Class Description</a></h2>
+<pre> Implementation version 1 of algorithm class to construct PHOS track segments
+ Associates EMC and PPSD clusters
+ Unfolds the EMC cluster
+
+*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
+
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1">AliPHOSTrackSegmentMakerv1</a>()
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSTrackSegmentMakerv1:~AliPHOSTrackSegmentMakerv1" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:~AliPHOSTrackSegmentMakerv1">~AliPHOSTrackSegmentMakerv1</a>()
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Bool_t">Bool_t</a> <a name="AliPHOSTrackSegmentMakerv1:FindFit" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:FindFit">FindFit</a>(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcRP, <a href="ListOfTypes.html#int">int</a> * maxAt, <a href="ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy,
+ <a href="ListOfTypes.html#Int_t">Int_t</a> nPar, <a href="ListOfTypes.html#Float_t">Float_t</a> * fitparameters)
+<br>
+<pre> Calls TMinuit to fit the energy distribution of a cluster with several maxima
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:FillOneModule" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:FillOneModule">FillOneModule</a>(<a href="ListOfTypes.html#DigitsList">DigitsList</a> * Dl, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * emcIn, TObjArray * emcOut,
+ <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdIn, TObjArray * ppsdOutUp,
+ TObjArray * ppsdOutLow, <a href="ListOfTypes.html#Int_t">Int_t</a> & phosmod, <a href="ListOfTypes.html#Int_t">Int_t</a> & emcStopedAt,
+ <a href="ListOfTypes.html#Int_t">Int_t</a> & ppsdStopedAt)
+<br>
+<pre> Unfold clusters and fill xxxOut arrays with clusters from one PHOS module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a>(<a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcclu,<a href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * PpsdClu, <a href="ListOfTypes.html#Bool_t">Bool_t</a> &toofar)
+<br>
+<pre> Calculates the distance between the EMC RecPoint and the PPSD RecPoint
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:MakeLinks" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:MakeLinks">MakeLinks</a>(TObjArray * emcRecPoints, TObjArray * ppsdRecPointsUp,
+ TObjArray * ppsdRecPointsLow, TClonesArray * linklowArray,
+ TClonesArray *linkupArray)
+<br>
+<pre> Finds distances (links) between all EMC and PPSD clusters, which are not further apart from each other than <a href="./AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a>
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:MakePairs" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:MakePairs">MakePairs</a>(TObjArray * emcRecPoints, TObjArray * ppsdRecPointsUp,
+ TObjArray * ppsdRecPointsLow, TClonesArray * linklowArray,
+ TClonesArray * linkupArray, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl)
+<br>
+<hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:MakeTrackSegments" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:MakeTrackSegments">MakeTrackSegments</a>(<a href="ListOfTypes.html#DigitsList">DigitsList</a> * DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * emcl,
+ <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl, <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl)
+<br>
+<pre> Makes the track segments out of the list of EMC and PPSD Recpoints and stores them in a list
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Double_t">Double_t</a> <a name="AliPHOSTrackSegmentMakerv1:ShowerShape" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:ShowerShape">ShowerShape</a>(<a href="ListOfTypes.html#Double_t">Double_t</a> r)
+<br>
+<pre> Shape of the shower (see PHOS TDR)
+ If you change this function, change also the gradien evaluation in ChiSquare()
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:UnfoldClusters" href="src/AliPHOSTrackSegmentMakerv1.cxx.html#AliPHOSTrackSegmentMakerv1:UnfoldClusters">UnfoldClusters</a>(<a href="ListOfTypes.html#DigitsList">DigitsList</a> * DL, <a href="ListOfTypes.html#RecPointsList">RecPointsList</a> * emcIn, <a href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * iniEmc,
+ <a href="ListOfTypes.html#Int_t">Int_t</a> nMax, <a href="ListOfTypes.html#int">int</a> * maxAt, <a href="ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy, TObjArray * emcList)
+<br>
+<pre> Performs the unfolding of a cluster with nMax overlapping showers
+ This is time consuming (use the (Un)SetUnfolFlag() )
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:SetMaxEmcPpsdDistance" href="AliPHOSTrackSegmentMakerv1.h">SetMaxEmcPpsdDistance</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> r)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:SetUnfoldFlag" href="AliPHOSTrackSegmentMakerv1.h">SetUnfoldFlag</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:UnsetUnfoldFlag" href="AliPHOSTrackSegmentMakerv1.h">UnsetUnfoldFlag</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegmentMakerv1:Class" href="AliPHOSTrackSegmentMakerv1.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSTrackSegmentMakerv1:IsA" href="AliPHOSTrackSegmentMakerv1.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:ShowMembers" href="AliPHOSTrackSegmentMakerv1.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSTrackSegmentMakerv1:Streamer" href="AliPHOSTrackSegmentMakerv1.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a> <a name="AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1" href="AliPHOSTrackSegmentMakerv1.h">AliPHOSTrackSegmentMakerv1</a>(<a href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSTrackSegmentMakerv1_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:51 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 418 1114 1753 bf black [] 0 sd 3 lw 1132 1753 m -12 Y 498 X 412 Y -12 X -400 Y f [] 0 sd 3 lw 1114 1753 m 418 Y 504 X -418 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSTrackSegmentMaker) /Helvetica-Bold 32 stwn gsave 1366 2126
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSTrackSegmentMaker) show gr
+ gsave 1130 2077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2042 m 504 X s 0.6 0.6 0.6 c
+ gsave 1130 1987
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeTrackSegments) show gr
+ gsave 1130 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMaxEmcPpsdDistance) show gr
+ gsave 1130 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUnfoldFlag) show gr
+ gsave 1130 1878
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UnsetUnfoldFlag) show gr
+ gsave 1130 1842
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1806
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1770
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 889 1690 1282 bf black [] 0 sd 3 lw 1707 1282 m -11 Y 498 X 882 Y -12 X -871 Y f [] 0 sd 3 lw 1690 1282 m 889 Y 503 X -889 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSTrackSegmentMakerv1) /Helvetica-Bold 32 stwn gsave 1941 2122
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSTrackSegmentMakerv1) show gr
+ gsave 1705 2073
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDelta) show gr
+ gsave 1705 2037
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMinuit) show gr
+ gsave 1705 2001
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fR0) show gr
+ gsave 1705 1965
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUnfoldFlag) show gr
+ gsave 1705 1929
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1897 m 503 X s 0 0 1 c
+ gsave 1705 1838
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSTrackSegmentMakerv1) show gr
+ gsave 1705 1802
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FindFit) show gr
+ gsave 1705 1766
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FillOneModule) show gr
+ gsave 1705 1730
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDistanceInPHOSPlane) show gr
+ gsave 1705 1693
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeLinks) show gr
+ gsave 1705 1657
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakePairs) show gr
+ gsave 1705 1621
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeTrackSegments) show gr
+ gsave 1705 1585
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMaxEmcPpsdDistance) show gr
+ gsave 1705 1549
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUnfoldFlag) show gr
+ gsave 1705 1513
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowerShape) show gr
+ gsave 1705 1476
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UnfoldClusters) show gr
+ gsave 1705 1440
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UnsetUnfoldFlag) show gr
+ gsave 1705 1404
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1368
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1332
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1705 1295
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSTrackSegment_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Sun Mar 12 00:45:57 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1793 36 378 bf black
+ [] 0 sd 3 lw 54 378 m -12 Y 1000 X 1787 Y -11 X -1775 Y f [] 0 sd 3 lw 36 378 m 1793 Y 1007 X -1793 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (TObject) /Helvetica-Bold 32 stwn gsave 539 2114
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TObject) show gr
+ gsave 66 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fUniqueID) show gr
+ gsave 66 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBits) show gr
+ gsave 66 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDtorOnly) show gr
+ gsave 66 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgDirLevel) show gr
+ gsave 66 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgObjectStat) show gr
+ gsave 66 1885
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kIsOnHeap) show gr
+ gsave 66 1848
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kNotDeleted) show gr
+ gsave 569 2065
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kZombie) show gr
+ gsave 569 2029
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kBitMask) show gr
+ gsave 569 1993
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kSingleKey) show gr
+ gsave 569 1957
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (kOverwrite) show gr
+ gsave 569 1921
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1861 m 1007 X s 0 0 1 c
+ gsave 66 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeZombie) show gr
+ gsave 66 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TObject) show gr
+ gsave 66 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 66 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AppendPad) show gr
+ gsave 66 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ClassName) show gr
+ gsave 66 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clear) show gr
+ gsave 66 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Clone) show gr
+ gsave 66 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Close) show gr
+ gsave 66 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr 0.6 0.6 0.6 c
+ gsave 66 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr 0 0 1 c
+ gsave 66 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Delete) show gr 0.6 0.6 0.6 c
+ gsave 66 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 66 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr 0 0 1 c
+ gsave 66 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClass) show gr
+ gsave 66 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawClone) show gr
+ gsave 66 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Dump) show gr
+ gsave 66 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr
+ gsave 66 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Execute) show gr 0.6 0.6 0.6 c
+ gsave 66 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr 0 0 1 c
+ gsave 66 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDrawOption) show gr
+ gsave 66 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetUniqueID) show gr
+ gsave 66 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 66 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIconName) show gr
+ gsave 66 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetOption) show gr
+ gsave 66 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectInfo) show gr
+ gsave 66 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 66 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HandleTimer) show gr
+ gsave 66 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 66 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InheritsFrom) show gr
+ gsave 66 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Inspect) show gr
+ gsave 66 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsEqual) show gr
+ gsave 66 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 66 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsModified) show gr
+ gsave 66 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsOnHeap) show gr
+ gsave 66 419
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsZombie) show gr
+ gsave 66 383
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Notify) show gr
+ gsave 569 1794
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 569 1758
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modified) show gr 0.6 0.6 0.6 c
+ gsave 569 1722
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0 0 1 c
+ gsave 569 1686
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Pop) show gr 0.6 0.6 0.6 c
+ gsave 569 1649
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr 0 0 1 c
+ gsave 569 1613
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Read) show gr
+ gsave 569 1577
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecursiveRemove) show gr
+ gsave 569 1541
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SavePrimitive) show gr
+ gsave 569 1505
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDrawOption) show gr
+ gsave 569 1468
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetUniqueID) show gr
+ gsave 569 1432
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (UseCurrentStyle) show gr
+ gsave 569 1396
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Write) show gr
+ gsave 569 1360
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1324
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator new) show gr
+ gsave 569 1288
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator delete) show gr
+ gsave 569 1251
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1215
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBit) show gr
+ gsave 569 1179
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetBit) show gr
+ gsave 569 1143
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TestBit) show gr
+ gsave 569 1107
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (InvertBit) show gr
+ gsave 569 1071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Warning) show gr
+ gsave 569 1034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Error) show gr
+ gsave 569 998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SysError) show gr
+ gsave 569 962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Fatal) show gr
+ gsave 569 926
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AbstractMethod) show gr
+ gsave 569 890
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MayNotUse) show gr
+ gsave 569 853
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DecreaseDirLevel) show gr
+ gsave 569 817
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDtorOnly) show gr
+ gsave 569 781
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDtorOnly) show gr
+ gsave 569 745
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDirLevel) show gr
+ gsave 569 709
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDirLevel) show gr
+ gsave 569 673
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetObjectStat) show gr
+ gsave 569 636
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObjectStat) show gr
+ gsave 569 600
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IncreaseDirLevel) show gr
+ gsave 569 564
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IndentLevel) show gr 0.6 0.6 0.6 c
+ gsave 569 528
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 492
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 455
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1106 1114 1065 bf black [] 0 sd 3 lw 1132 1065 m -11 Y 498 X 1099 Y -12 X -1088 Y f [] 0 sd 3 lw 1114 1065 m 1106 Y 504 X -1106 Y -504 X
+ cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSTrackSegment) /Helvetica-Bold 32 stwn gsave 1366 2120
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSTrackSegment) show gr
+ gsave 1130 2071
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcRecPoint) show gr
+ gsave 1130 2035
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdLow) show gr
+ gsave 1130 1999
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdUp) show gr
+ gsave 1130 1963
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1934 m 504 X s 0 0 1 c
+ gsave 1130 1872
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSTrackSegment) show gr
+ gsave 1130 1836
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSTrackSegment) show gr
+ gsave 1130 1800
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSTrackSegment) show gr
+ gsave 1130 1764
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 1130 1728
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1130 1692
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Draw) show gr
+ gsave 1130 1655
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ExecuteEvent) show gr
+ gsave 1130 1619
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEnergy) show gr
+ gsave 1130 1583
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetDistanceInPHOSPlane) show gr
+ gsave 1130 1547
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPHOSMod) show gr
+ gsave 1130 1511
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMomentumDirection) show gr
+ gsave 1130 1474
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPosition) show gr
+ gsave 1130 1438
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimariesEmc) show gr
+ gsave 1130 1402
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimariesPpsdLow) show gr
+ gsave 1130 1366
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPrimariesPpsdUp) show gr
+ gsave 1130 1330
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetEmcRecPoint) show gr
+ gsave 1130 1294
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdLow) show gr
+ gsave 1130 1257
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetPpsdUp) show gr
+ gsave 1130 1221
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr
+ gsave 1130 1185
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 1130 1149
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 1113
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 1077
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOS_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:47 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 997 36 1174 bf black [] 0 sd
+ 3 lw 54 1174 m -12 Y 497 X 991 Y -12 X -979 Y f [] 0 sd 3 lw 36 1174 m 997 Y 503 X -997 Y -503 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 503 X s 0 0 1 c
+ /xs 0 def (TNamed) /Helvetica-Bold 32 stwn gsave 288 2121
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TNamed) show gr
+ gsave 51 2072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fName) show gr
+ gsave 51 2036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTitle) show gr
+ gsave 51 2000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1970 m 503 X s 0 0 1 c
+ gsave 51 1910
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TNamed) show gr
+ gsave 51 1873
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TNamed) show gr
+ gsave 51 1837
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TNamed) show gr
+ gsave 51 1801
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TNamed) show gr
+ gsave 51 1765
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (operator=) show gr
+ gsave 51 1729
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Compare) show gr
+ gsave 51 1693
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 51 1656
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FillBuffer) show gr
+ gsave 51 1620
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetName) show gr
+ gsave 51 1584
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTitle) show gr
+ gsave 51 1548
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hash) show gr
+ gsave 51 1512
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsSortable) show gr
+ gsave 51 1475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetName) show gr
+ gsave 51 1439
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetObject) show gr
+ gsave 51 1403
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTitle) show gr
+ gsave 51 1367
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ls) show gr
+ gsave 51 1331
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Print) show gr
+ gsave 51 1295
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Sizeof) show gr 0.6 0.6 0.6 c
+ gsave 51 1258
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 51 1222
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 51 1186
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1250 611 921 bf black [] 0 sd 3 lw 629 921 m -12 Y 1001 X 1244 Y -12 X -1232 Y f [] 0 sd 3 lw 611 921 m 1250 Y 1007 X -1250 Y -1007 X
+ cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 614 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 611 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (AliModule) /Helvetica-Bold 32 stwn gsave 1114 2119
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliModule) show gr
+ gsave 641 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidMaterial) show gr
+ gsave 641 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidGeometry) show gr
+ gsave 641 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdtmed) show gr
+ gsave 641 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdmate) show gr
+ gsave 641 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLoMedium) show gr
+ gsave 641 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHiMedium) show gr
+ gsave 1145 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fActive) show gr
+ gsave 1145 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHistograms) show gr
+ gsave 1145 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNodes) show gr
+ gsave 1145 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 611 1897 m 1007 X s 0.6 0.6 0.6 c
+ gsave 641 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 641 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr 0 0 1 c
+ gsave 641 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIdtmed) show gr
+ gsave 641 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Histograms) show gr
+ gsave 641 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Nodes) show gr 0.6 0.6 0.6 c
+ gsave 641 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 641 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 641 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 641 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 641 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr 0 0 1 c
+ gsave 641 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsActive) show gr
+ gsave 641 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 641 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoMedium) show gr
+ gsave 641 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HiMedium) show gr
+ gsave 641 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMaterial) show gr
+ gsave 641 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliGetMaterial) show gr
+ gsave 641 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMixture) show gr
+ gsave 641 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMedium) show gr
+ gsave 641 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMatrix) show gr
+ gsave 641 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 641 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr
+ gsave 641 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr
+ gsave 641 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddHit) show gr 0.6 0.6 0.6 c
+ gsave 641 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr 0 0 1 c
+ gsave 641 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr 0.6 0.6 0.6 c
+ gsave 641 931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0 0 1 c
+ gsave 1145 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Disable) show gr
+ gsave 1145 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 1145 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Enable) show gr
+ gsave 1145 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PreTrack) show gr
+ gsave 1145 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PostTrack) show gr
+ gsave 1145 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishEvent) show gr 0.6 0.6 0.6 c
+ gsave 1145 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr 0 0 1 c
+ gsave 1145 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr 0.6 0.6 0.6 c
+ gsave 1145 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr
+ gsave 1145 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 1145 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0.6 0.6 0.6 c
+ gsave 1145 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 1145 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 1145 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 1145 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 1145 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 1145 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr
+ gsave 1145 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 1145 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0 0 1 c
+ gsave 1145 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEuclidFile) show gr
+ gsave 1145 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclid) show gr
+ gsave 1145 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclidMedia) show gr 0.6 0.6 0.6 c
+ gsave 1145 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1145 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1145 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 450 611 438 bf black [] 0 sd 3 lw 629 438 m -12 Y 1001 X 445 Y -12 X -433 Y f [] 0 sd 3 lw 611 438 m 450 Y 1007 X -450 Y -1007 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 614 833 bf black [] 0 sd 3 lw [] 0 sd 3 lw 611 832 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttLine) /Helvetica-Bold 32 stwn gsave 1114 843
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 641 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineColor) show gr
+ gsave 641 771
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineStyle) show gr
+ gsave 641 743
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineWidth) show gr
+ gsave 1145 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 611 748 m 1007 X s 0 0 1 c
+ gsave 641 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 641 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 641 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 641 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoLine) show gr
+ gsave 641 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineColor) show gr
+ gsave 641 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineStyle) show gr
+ gsave 641 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineWidth) show gr
+ gsave 641 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 641 475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttLine) show gr
+ gsave 641 447
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveLineAttributes) show gr
+ gsave 1145 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineAttributes) show gr
+ gsave 1145 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineColor) show gr
+ gsave 1145 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineStyle) show gr
+ gsave 1145 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineWidth) show gr
+ gsave 1145 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1145 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1145 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1145 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 421 611 -15 bf black [] 0 sd 3 lw 1630 0 m 388 Y -12 X -388 Y f [] 0 sd 3 lw 611 0 m 406 Y s [] 0 sd 3 lw 611 406 m 1007 X -406 Y s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 54 614 351 bf black [] 0 sd 3 lw [] 0 sd 3 lw 611 350 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttMarker) /Helvetica-Bold 32 stwn gsave 1114 361
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttMarker) show gr
+ gsave 641 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerColor) show gr
+ gsave 641 289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerStyle) show gr
+ gsave 641 260
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerSize) show gr
+ gsave 1145 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 611 265 m 1007 X s 0 0 1 c
+ gsave 641 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 641 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 641 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 641 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerColor) show gr
+ gsave 641 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerStyle) show gr
+ gsave 641 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerSize) show gr
+ gsave 641 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 641 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttMarker) show gr
+ gsave 641 -6
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveMarkerAttributes) show gr
+ gsave 1145 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerAttributes) show gr
+ gsave 1145 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerColor) show gr
+ gsave 1145 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerStyle) show gr
+ gsave 1145 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerSize) show gr
+ gsave 1145 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1145 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1145 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1145 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1359 1690 812 bf black [] 0 sd 3 lw 1707 812 m -12 Y 498 X 1353 Y -12 X -1341 Y f [] 0 sd 3 lw 1690 812 m 1359 Y 503 X -1359 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliDetector) /Helvetica-Bold 32 stwn gsave 1941 2118
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliDetector) show gr
+ gsave 1705 2069
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTimeGate) show gr
+ gsave 1705 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIshunt) show gr
+ gsave 1705 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNhits) show gr
+ gsave 1705 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNdigits) show gr
+ gsave 1705 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBufferSize) show gr
+ gsave 1705 1888
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHits) show gr
+ gsave 1705 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigits) show gr
+ gsave 1705 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPoints) show gr
+ gsave 1705 1780
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 1753 m 503 X s 0 0 1 c
+ gsave 1705 1689
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 1705 1653
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr
+ gsave 1705 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 1705 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 1705 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 1705 1508
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 1705 1472
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr
+ gsave 1705 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 1705 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 1705 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr
+ gsave 1705 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr
+ gsave 1705 1291
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 1705 1255
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 1705 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 1705 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 1705 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 1705 1110
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr
+ gsave 1705 1074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 1705 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawModule) show gr
+ gsave 1705 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FirstHit) show gr
+ gsave 1705 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (NextHit) show gr
+ gsave 1705 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0.6 0.6 0.6 c
+ gsave 1705 893
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 857
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 346 2265 1825 bf black [] 0 sd 3 lw 2283 1825 m -12 Y 497 X 340 Y -12 X -328 Y f [] 0 sd 3 lw 2265 1825 m 346 Y 503 X -346 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2268 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOS) /Helvetica-Bold 32 stwn gsave 2517 2127
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOS) show gr
+ gsave 2280 2078
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2042 m 503 X s 0 0 1 c
+ gsave 2280 1988
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr
+ gsave 2280 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 2280 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2280 1879
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2280 1843
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSV0_H
+#define ALIPHOSV0_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+//_________________________________________________________________________
+// Implementation version v0 of PHOS Manager class
+// Layout EMC + PPSD has name GPS2
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+#include "TClonesArray.h"
+
+// --- AliRoot header files ---
+#include "AliPHOS.h"
+#include "AliPHOSGeometry.h"
+#include "AliPHOSReconstructioner.h"
+#include "AliPHOSTrackSegmentMaker.h"
+#include "AliPHOSPID.h"
+
+class AliPHOSv0 : public AliPHOS {
+
+public:
+
+ AliPHOSv0(void) ;
+ AliPHOSv0(const char *name, const char *title="") ;
+ AliPHOSv0(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ;
+ virtual ~AliPHOSv0(void) ;
+
+ virtual void AddHit( Int_t primary, Int_t id, Float_t *hits ) ; // adds a pre-digitilized hit to the hit tree
+ virtual void BuildGeometry(void) ; // creates the geometry for the ROOT display
+ void BuildGeometryforPHOS(void) ; // creates the PHOS geometry for the ROOT display
+ void BuildGeometryforPPSD(void) ; // creates the PPSD geometry for the ROOT display
+ virtual void CreateGeometry(void) ; // creates the geometry for GEANT
+ void CreateGeometryforPHOS(void) ; // creates the PHOS geometry for GEANT
+ void CreateGeometryforPPSD(void) ; // creates the PPSD geometry for GEANT
+ Int_t Digitize(Float_t Energy);
+ RecPointsList* EmcClusters() {return fEmcClusters;} // gets TClonesArray of cluster in the crystals
+ void FinishEvent(void) ; // makes the digits from the hits
+ virtual AliPHOSGeometry * GetGeometry() { return fGeom ; }
+ virtual void Init(void) ; // does nothing
+ Int_t IsVersion(void) const { return 0 ; }
+ void MakeBranch(Option_t* opt) ;
+ RecPointsList* PpsdClusters() { return fPpsdClusters ; } // gets TClonesArray of clusters in the PPSD
+ void Reconstruction(AliPHOSReconstructioner * Reconstructioner) ;
+ RecParticlesList * RecParticles() { return fRecParticles ; } // gets TClonesArray of reconstructed particles
+ void ResetClusters(){} ;
+ void SetReconstructioner(AliPHOSReconstructioner& Reconstructioner) {fReconstructioner = &Reconstructioner ;}
+ void SetDigitThreshold(Float_t th) { fDigitThreshold = th ; }
+ virtual void StepManager(void) ; // does the tracking through PHOS and a preliminary digitalization
+ TrackSegmentsList * TrackSegments(){return fTrackSegments ;}
+
+protected:
+
+ Float_t fDigitThreshold ; // Threshold for the digit registration
+ RecPointsList * fEmcClusters ; // The RecPoints (clusters) list in EMC
+ AliPHOSGeometry * fGeom ; // Geometry definition
+ Int_t fNTmpHits ; //! Used internally for digitalization
+ Float_t fPinElectronicNoise ; // Electronic Noise in the PIN
+ RecPointsList * fPpsdClusters ; // The RecPoints (clusters) list in PPSD
+ AliPHOSReconstructioner * fReconstructioner ; // Reconstrutioner of the PHOS event: Clusterization and subtracking procedures
+ TClonesArray * fTmpHits ; //! Used internally for digitalization
+ AliPHOSTrackSegmentMaker * fTrackSegmentMaker ; // Reconstructioner of the PHOS track segment: 2 x PPSD + 1 x EMC
+ TrackSegmentsList * fTrackSegments ; // The TrackSegment list in PHOS
+ RecParticlesList * fRecParticles ; // The reconstructed particles list in PHOS
+
+ ClassDef(AliPHOSv0,1) // Implementation of PHOS manager class for layout EMC+PPSD
+
+};
+
+#endif // AliPHOSV0_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:57 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSv0</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSv0</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSv0:description>class description</a> - <a href="src/AliPHOSv0.cxx.html">source file</a> - <a href="AliPHOSv0_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSv0" href="AliPHOSv0.h">AliPHOSv0</a> : public <a href="./AliPHOS.html">AliPHOS</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:AliPHOSv0">AliPHOSv0</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:AliPHOSv0">AliPHOSv0</a><!--PLAIN-->(const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:AliPHOSv0">AliPHOSv0</a><!--PLAIN-->(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* Reconstructioner, const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:AliPHOSv0">AliPHOSv0</a><!--PLAIN-->(<a href="./AliPHOSv0.html">AliPHOSv0</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:~AliPHOSv0">~AliPHOSv0</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:AddHit">AddHit</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> id, <a href="ListOfTypes.html#Float_t">Float_t</a>* hits)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:BuildGeometry">BuildGeometry</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:BuildGeometryforPHOS">BuildGeometryforPHOS</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:BuildGeometryforPPSD">BuildGeometryforPPSD</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:CreateGeometry">CreateGeometry</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:CreateGeometryforPHOS">CreateGeometryforPHOS</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:CreateGeometryforPPSD">CreateGeometryforPPSD</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:Digitize">Digitize</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:EmcClusters">EmcClusters</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:FinishEvent">FinishEvent</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:GetGeometry">GetGeometry</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:Init">Init</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:IsVersion">IsVersion</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:MakeBranch">MakeBranch</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt)
+<!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:PpsdClusters">PpsdClusters</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:Reconstruction">Reconstruction</a><!--PLAIN-->(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* Reconstructioner)
+<!--TAB6--> <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:RecParticles">RecParticles</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:ResetClusters">ResetClusters</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:SetDigitThreshold">SetDigitThreshold</a><!--PLAIN-->(<a href="ListOfTypes.html#Float_t">Float_t</a> th)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:SetReconstructioner">SetReconstructioner</a><!--PLAIN-->(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>& Reconstructioner)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:StepManager">StepManager</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv0:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+<!--TAB6--> <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSv0:TrackSegments">TrackSegments</a><!--PLAIN-->()
+
+<h3><!--TAB2--> <a name="AliPHOSv0:Data Members">Data Members</a></h3>
+
+<!--TAB4--> <b>protected:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv0:fDigitThreshold">fDigitThreshold</a><!--PLAIN--> <!--TAB--><i><a name="Title:fDigitThreshold">Threshold for the digit registration </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fEmcClusters">fEmcClusters</a><!--PLAIN--> <!--TAB--><i><a name="Title:fEmcClusters">The RecPoints (clusters) list in EMC </a></i>
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fGeom">fGeom</a><!--PLAIN--> <!--TAB--><i><a name="Title:fGeom">Geometry definition</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv0:fNTmpHits">fNTmpHits</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNTmpHits">! Used internally for digitalization</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv0:fPinElectronicNoise">fPinElectronicNoise</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPinElectronicNoise">Electronic Noise in the PIN</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fPpsdClusters">fPpsdClusters</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPpsdClusters">The RecPoints (clusters) list in PPSD </a></i>
+<!--TAB6--> <a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fReconstructioner">fReconstructioner</a><!--PLAIN--> <!--TAB--><i><a name="Title:fReconstructioner">Reconstrutioner of the PHOS event: Clusterization and subtracking procedures</a></i>
+<!--TAB6--> TClonesArray* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fTmpHits">fTmpHits</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTmpHits">! Used internally for digitalization </a></i>
+<!--TAB6--> <a href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fTrackSegmentMaker">fTrackSegmentMaker</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTrackSegmentMaker">Reconstructioner of the PHOS track segment: 2 x PPSD + 1 x EMC</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fTrackSegments">fTrackSegments</a><!--PLAIN--> <!--TAB--><i><a name="Title:fTrackSegments">The TrackSegment list in PHOS</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* <!--TAB--><!--BOLD--><a name="AliPHOSv0:fRecParticles">fRecParticles</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRecParticles">The reconstructed particles list in PHOS</a></i>
+</pre>
+<!--END-->
+<br><hr>
+<!--SEE ALSO--><h2>See also</h2><dl><dd>
+<a href="./AliPHOSv1.html">AliPHOSv1</a></dl>
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSv0:description">Class Description</a></h2>
+<pre> Implementation version v0 of PHOS Manager class
+ Layout EMC + PPSD has name GPS2
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv0:AliPHOSv0" href="src/AliPHOSv0.cxx.html#AliPHOSv0:AliPHOSv0">AliPHOSv0</a>()
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv0:AliPHOSv0" href="src/AliPHOSv0.cxx.html#AliPHOSv0:AliPHOSv0">AliPHOSv0</a>(const <a href="ListOfTypes.html#char">char</a> *name, const <a href="ListOfTypes.html#char">char</a> *title):
+ <a href="./AliPHOS.html">AliPHOS</a>(name,title)
+<br>
+<pre> ctor : title is used to identify the layout
+ GPS2 = 5 modules (EMC + PPSD)
+ We use 2 arrays of hits :
+
+ - fHits (the "normal" one), which retains the hits associated with
+ the current primary particle being tracked
+ (this array is reset after each primary has been tracked).
+
+ - <a href="./AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>, which retains all the hits of the current event. It
+ is used for the digitization part.
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv0:AliPHOSv0" href="src/AliPHOSv0.cxx.html#AliPHOSv0:AliPHOSv0">AliPHOSv0</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner, const <a href="ListOfTypes.html#char">char</a> *name, const <a href="ListOfTypes.html#char">char</a> *title):
+ <a href="./AliPHOS.html">AliPHOS</a>(name,title)
+<br>
+<pre> ctor : title is used to identify the layout
+ GPS2 = 5 modules (EMC + PPSD)
+ We use 2 arrays of hits :
+
+ - fHits (the "normal" one), which retains the hits associated with
+ the current primary particle being tracked
+ (this array is reset after each primary has been tracked).
+
+ - <a href="./AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>, which retains all the hits of the current event. It
+ is used for the digitization part.
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv0:~AliPHOSv0" href="src/AliPHOSv0.cxx.html#AliPHOSv0:~AliPHOSv0">~AliPHOSv0</a>()
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:AddHit" href="src/AliPHOSv0.cxx.html#AliPHOSv0:AddHit">AddHit</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> primary, <a href="ListOfTypes.html#Int_t">Int_t</a> Id, <a href="ListOfTypes.html#Float_t">Float_t</a> * hits)
+<br>
+<pre> Add a hit to the hit list.
+ A PHOS hit is the sum of all hits in a single crystal
+ or in a single PPSD gas cell
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:BuildGeometry" href="src/AliPHOSv0.cxx.html#AliPHOSv0:BuildGeometry">BuildGeometry</a>()
+<br>
+<pre> Build the PHOS geometry for the ROOT display
+
+ /*
+ <H2>
+ PHOS in ALICE displayed by root
+ </H2>
+ <UL>
+ <LI> All Views
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="All Views" SRC="../images/AliPHOSv0AllViews.gif">
+ </CENTER></P></LI>
+ <LI> Front View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Front View" SRC="../images/AliPHOSv0FrontView.gif">
+ </CENTER></P></LI>
+ <LI> 3D View 1
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="3D View 1" SRC="../images/AliPHOSv03DView1.gif">
+ </CENTER></P></LI>
+ <LI> 3D View 2
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="3D View 2" SRC="../images/AliPHOSv03DView2.gif">
+ </CENTER></P></LI>
+ </UL>
+ */
+
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:BuildGeometryforPHOS" href="src/AliPHOSv0.cxx.html#AliPHOSv0:BuildGeometryforPHOS">BuildGeometryforPHOS</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Build the PHOS-EMC geometry for the ROOT display
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:BuildGeometryforPPSD" href="src/AliPHOSv0.cxx.html#AliPHOSv0:BuildGeometryforPPSD">BuildGeometryforPPSD</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Build the PHOS-PPSD geometry for the ROOT display
+
+ /*
+ <H2>
+ PPSD displayed by root
+ </H2>
+ <UL>
+ <LI> Zoom on PPSD: Front View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="PPSD Front View" SRC="../images/AliPHOSv0PPSDFrontView.gif">
+ </CENTER></P></LI>
+ <LI> Zoom on PPSD: Perspective View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="PPSD Prespective View" SRC="../images/AliPHOSv0PPSDPerspectiveView.gif">
+ </CENTER></P></LI>
+ </UL>
+ */
+
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:CreateGeometry" href="src/AliPHOSv0.cxx.html#AliPHOSv0:CreateGeometry">CreateGeometry</a>()
+<br>
+<pre> Create the PHOS geometry for Geant
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:CreateGeometryforPHOS" href="src/AliPHOSv0.cxx.html#AliPHOSv0:CreateGeometryforPHOS">CreateGeometryforPHOS</a>()
+<br>
+<pre> Create the PHOS-EMC geometry for GEANT
+
+ /*
+ <H2>
+ Geant3 geometry tree of PHOS-EMC in ALICE
+ </H2>
+ <P><CENTER>
+ <IMG Align=BOTTOM ALT="EMC geant tree" SRC="../images/EMCinAlice.gif">
+ </CENTER><P>
+ */
+
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:CreateGeometryforPPSD" href="src/AliPHOSv0.cxx.html#AliPHOSv0:CreateGeometryforPPSD">CreateGeometryforPPSD</a>()
+<br>
+<pre> Create the PHOS-PPSD geometry for GEANT
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSv0:Digitize" href="src/AliPHOSv0.cxx.html#AliPHOSv0:Digitize">Digitize</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> Energy)
+<br>
+<pre> Applies the energy calibration
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:FinishEvent" href="src/AliPHOSv0.cxx.html#AliPHOSv0:FinishEvent">FinishEvent</a>()
+<br>
+<pre> Makes the digits from the sum of summed hit in a single crystal or PPSD gas cell
+ Adds to the energy the electronic noise
+ Keeps digits with energy above <a href="./AliPHOSv0.html#AliPHOSv0:fDigitThreshold">fDigitThreshold</a>
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:Init" href="src/AliPHOSv0.cxx.html#AliPHOSv0:Init">Init</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Just prints an information message
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:MakeBranch" href="src/AliPHOSv0.cxx.html#AliPHOSv0:MakeBranch">MakeBranch</a>(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt)
+<br>
+<pre> Create new branche in the current Root Tree in the digit Tree
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:Reconstruction" href="src/AliPHOSv0.cxx.html#AliPHOSv0:Reconstruction">Reconstruction</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner)
+<br>
+<pre> 1. Reinitializes the existing RecPoint, TrackSegment, and RecParticles Lists and
+ 2. Creates a branch in TreeR for each list
+ 3. Steers the reconstruction processes
+ 4. Saves the 3 lists in TreeR
+ 5. Write the Tree to File
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:StepManager" href="src/AliPHOSv0.cxx.html#AliPHOSv0:StepManager">StepManager</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Accumulates hits as <a href="ListOfTypes.html#long">long</a> as the track stays in a single crystal or PPSD gas Cell
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <a name="AliPHOSv0:EmcClusters" href="AliPHOSv0.h">EmcClusters</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <a name="AliPHOSv0:GetGeometry" href="AliPHOSv0.h">GetGeometry</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSv0:IsVersion" href="AliPHOSv0.h">IsVersion</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#RecPointsList">RecPointsList</a>* <a name="AliPHOSv0:PpsdClusters" href="AliPHOSv0.h">PpsdClusters</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#RecParticlesList">RecParticlesList</a>* <a name="AliPHOSv0:RecParticles" href="AliPHOSv0.h">RecParticles</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:ResetClusters" href="AliPHOSv0.h">ResetClusters</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:SetReconstructioner" href="AliPHOSv0.h">SetReconstructioner</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>& Reconstructioner)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:SetDigitThreshold" href="AliPHOSv0.h">SetDigitThreshold</a>(<a href="ListOfTypes.html#Float_t">Float_t</a> th)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>* <a name="AliPHOSv0:TrackSegments" href="AliPHOSv0.h">TrackSegments</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSv0:Class" href="AliPHOSv0.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSv0:IsA" href="AliPHOSv0.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:ShowMembers" href="AliPHOSv0.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv0:Streamer" href="AliPHOSv0.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSv0.html">AliPHOSv0</a> <a name="AliPHOSv0:AliPHOSv0" href="AliPHOSv0.h">AliPHOSv0</a>(<a href="./AliPHOSv0.html">AliPHOSv0</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSv0_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:53 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1250 36 921 bf black
+ [] 0 sd 3 lw 54 921 m -12 Y 1000 X 1244 Y -11 X -1232 Y f [] 0 sd 3 lw 36 921 m 1250 Y 1007 X -1250 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (AliModule) /Helvetica-Bold 32 stwn gsave 539 2119
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliModule) show gr
+ gsave 66 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidMaterial) show gr
+ gsave 66 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidGeometry) show gr
+ gsave 66 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdtmed) show gr
+ gsave 66 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdmate) show gr
+ gsave 66 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLoMedium) show gr
+ gsave 66 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHiMedium) show gr
+ gsave 569 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fActive) show gr
+ gsave 569 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHistograms) show gr
+ gsave 569 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNodes) show gr
+ gsave 569 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1897 m 1007 X s 0.6 0.6 0.6 c
+ gsave 66 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 66 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr 0 0 1 c
+ gsave 66 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIdtmed) show gr
+ gsave 66 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Histograms) show gr
+ gsave 66 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Nodes) show gr 0.6 0.6 0.6 c
+ gsave 66 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 66 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 66 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 66 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 66 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr 0 0 1 c
+ gsave 66 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsActive) show gr
+ gsave 66 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoMedium) show gr
+ gsave 66 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HiMedium) show gr
+ gsave 66 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMaterial) show gr
+ gsave 66 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliGetMaterial) show gr
+ gsave 66 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMixture) show gr
+ gsave 66 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMedium) show gr
+ gsave 66 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMatrix) show gr 0.6 0.6 0.6 c
+ gsave 66 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 66 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr 0 0 1 c
+ gsave 66 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr 0.6 0.6 0.6 c
+ gsave 66 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddHit) show gr
+ gsave 66 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr
+ gsave 66 931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0 0 1 c
+ gsave 569 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Disable) show gr
+ gsave 569 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 569 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Enable) show gr
+ gsave 569 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PreTrack) show gr
+ gsave 569 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PostTrack) show gr 0.6 0.6 0.6 c
+ gsave 569 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishEvent) show gr
+ gsave 569 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 569 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 569 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr
+ gsave 569 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 569 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0.6 0.6 0.6 c
+ gsave 569 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 569 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 569 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 569 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 569 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 569 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr
+ gsave 569 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 569 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0 0 1 c
+ gsave 569 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEuclidFile) show gr
+ gsave 569 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclid) show gr
+ gsave 569 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclidMedia) show gr 0.6 0.6 0.6 c
+ gsave 569 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 450 36 438 bf black [] 0 sd 3 lw 54 438 m -12 Y 1000 X 445 Y -11 X -433 Y f [] 0 sd 3 lw 36 438 m 450 Y 1007 X -450 Y -1007 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 833 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 832 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttLine) /Helvetica-Bold 32 stwn gsave 539 843
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 66 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineColor) show gr
+ gsave 66 771
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineStyle) show gr
+ gsave 66 743
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineWidth) show gr
+ gsave 569 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 748 m 1007 X s 0 0 1 c
+ gsave 66 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 66 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 66 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoLine) show gr
+ gsave 66 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineColor) show gr
+ gsave 66 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineStyle) show gr
+ gsave 66 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineWidth) show gr
+ gsave 66 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 66 475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttLine) show gr
+ gsave 66 447
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveLineAttributes) show gr
+ gsave 569 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineAttributes) show gr
+ gsave 569 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineColor) show gr
+ gsave 569 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineStyle) show gr
+ gsave 569 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineWidth) show gr
+ gsave 569 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 569 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 421 36 -15 bf black [] 0 sd 3 lw 1054 0 m 388 Y -11 X -388 Y f [] 0 sd 3 lw 36 0 m 406 Y s [] 0 sd 3 lw 36 406 m 1007 X -406 Y s [] 0 sd 3
+ lw 0.8 0.8 0.8 c 1004 54 39 351 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 350 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttMarker) /Helvetica-Bold 32 stwn gsave 539 361
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttMarker) show gr
+ gsave 66 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerColor) show gr
+ gsave 66 289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerStyle) show gr
+ gsave 66 260
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerSize) show gr
+ gsave 569 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 265 m 1007 X s 0 0 1 c
+ gsave 66 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 66 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 66 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerColor) show gr
+ gsave 66 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerStyle) show gr
+ gsave 66 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerSize) show gr
+ gsave 66 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 66 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttMarker) show gr
+ gsave 66 -6
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveMarkerAttributes) show gr
+ gsave 569 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerAttributes) show gr
+ gsave 569 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerColor) show gr
+ gsave 569 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerStyle) show gr
+ gsave 569 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerSize) show gr
+ gsave 569 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 569 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1359 1114 812 bf black [] 0 sd 3 lw 1132 812 m -12 Y 498 X 1353 Y -12 X -1341 Y f [] 0 sd 3 lw 1114 812 m 1359 Y 504 X -1359 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliDetector) /Helvetica-Bold 32 stwn gsave 1366 2118
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliDetector) show gr
+ gsave 1130 2069
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTimeGate) show gr
+ gsave 1130 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIshunt) show gr
+ gsave 1130 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNhits) show gr
+ gsave 1130 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNdigits) show gr
+ gsave 1130 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBufferSize) show gr
+ gsave 1130 1888
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHits) show gr
+ gsave 1130 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigits) show gr
+ gsave 1130 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPoints) show gr
+ gsave 1130 1780
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1753 m 504 X s 0 0 1 c
+ gsave 1130 1689
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 1130 1653
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr
+ gsave 1130 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 1130 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 1130 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 1130 1508
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 1130 1472
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr
+ gsave 1130 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 1130 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 1130 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr 0.6 0.6 0.6 c
+ gsave 1130 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 1130 1291
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 1130 1255
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 1130 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 1130 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 1130 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 1130 1110
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr 0.6 0.6 0.6 c
+ gsave 1130 1074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr 0 0 1 c
+ gsave 1130 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawModule) show gr
+ gsave 1130 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FirstHit) show gr
+ gsave 1130 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (NextHit) show gr
+ gsave 1130 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0.6 0.6 0.6 c
+ gsave 1130 893
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 857
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 346 1690 1825 bf black [] 0 sd 3 lw 1707 1825 m -12 Y 498 X 340 Y -12 X -328 Y f [] 0 sd 3 lw 1690 1825 m 346 Y 503 X -346 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOS) /Helvetica-Bold 32 stwn gsave 1941 2127
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOS) show gr
+ gsave 1705 2078
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2042 m 503 X s 0 0 1 c
+ gsave 1705 1988
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0.6 0.6 0.6 c
+ gsave 1705 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 1705 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1879
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1843
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1612 2265 559 bf black [] 0 sd 3 lw 2283 559 m -12 Y 497 X 1606 Y -12 X -1594 Y f [] 0 sd 3 lw 2265 559 m 1612 Y 503 X -1612 Y -503 X cl
+ s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2268 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSv0) /Helvetica-Bold 32 stwn gsave 2517 2116
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSv0) show gr
+ gsave 2280 2067
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigitThreshold) show gr
+ gsave 2280 2031
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcClusters) show gr
+ gsave 2280 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 2280 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNTmpHits) show gr
+ gsave 2280 1922
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPinElectronicNoise) show gr
+ gsave 2280 1886
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdClusters) show gr
+ gsave 2280 1850
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fReconstructioner) show gr
+ gsave 2280 1814
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTmpHits) show gr
+ gsave 2280 1778
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrackSegmentMaker) show gr
+ gsave 2280 1741
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrackSegments) show gr
+ gsave 2280 1705
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRecParticles) show gr
+ gsave 2280 1669
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2265 1644 m 503 X s 0 0 1 c
+ gsave 2280 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 2280 1542
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 2280 1506
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 2280 1470
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddHit) show gr
+ gsave 2280 1434
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 2280 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometryforPHOS) show gr
+ gsave 2280 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometryforPPSD) show gr
+ gsave 2280 1325
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr
+ gsave 2280 1289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometryforPHOS) show gr
+ gsave 2280 1253
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometryforPPSD) show gr
+ gsave 2280 1217
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digitize) show gr
+ gsave 2280 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (EmcClusters) show gr
+ gsave 2280 1144
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishEvent) show gr
+ gsave 2280 1108
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 2280 1072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 2280 1036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr
+ gsave 2280 1000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr
+ gsave 2280 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PpsdClusters) show gr
+ gsave 2280 927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Reconstruction) show gr
+ gsave 2280 891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecParticles) show gr
+ gsave 2280 855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetClusters) show gr
+ gsave 2280 819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetReconstructioner) show gr
+ gsave 2280 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDigitThreshold) show gr
+ gsave 2280 746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 2280 710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TrackSegments) show gr
+ gsave 2280 674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2280 638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2280 602
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 2280 566
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSV1_H
+#define ALIPHOSV1_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+//_________________________________________________________________________
+// Implementation version v0 of PHOS Manager class
+// Layout EMC + PPSD has name GPS2
+// The main goal of this version of AliPHOS is to calculte the
+// induced charged in the PIN diode, taking into account light
+// tracking in the PbWO4 crystal, induced signal in the
+// PIN due to MIPS particle and electronic noise.
+// This is done in the StepManager
+//
+//*-- Author: Odd Harald Oddland & Gines Martinez (SUBATECH)
+
+// --- ROOT system ---
+
+
+// --- AliRoot header files ---
+#include "AliPHOSv0.h"
+
+
+class AliPHOSv1 : public AliPHOSv0 {
+
+public:
+
+ AliPHOSv1(void) : AliPHOSv0() {} // ctor
+ AliPHOSv1(const char *name, const char *title="") ;
+ AliPHOSv1(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ;
+ virtual ~AliPHOSv1(void) {}
+
+ virtual void StepManager(void) ; // does the tracking through PHOS and a preliminary digitalization
+
+
+private:
+
+ Float_t fLightYieldMean ; // Mean lightyield in the PbOW4 xtal per GeV (Poisson distribution)
+ Float_t fIntrinsicPINEfficiency ; // Photo efficiency of the PIN diode
+ Float_t fLightYieldAttenuation ; // Attenuation of the light through the crystal
+ Float_t fRecalibrationFactor ; // Recalibration factor
+ Float_t fElectronsPerGeV ; // Number of electrons per GeV created in the PIN by a ionizing particle
+
+ ClassDef(AliPHOSv1,1) // Implementation of PHOS manager class for layout EMC+PPSD with light transport, MIPS in PIN and electronic noise
+
+};
+
+#endif // AliPHOSV1_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:53 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSv1</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSv1</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSv1:description>class description</a> - <a href="src/AliPHOSv1.cxx.html">source file</a> - <a href="AliPHOSv1_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSv1" href="AliPHOSv1.h">AliPHOSv1</a> : public <a href="./AliPHOSv0.html">AliPHOSv0</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:AliPHOSv1">AliPHOSv1</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:AliPHOSv1">AliPHOSv1</a><!--PLAIN-->(const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:AliPHOSv1">AliPHOSv1</a><!--PLAIN-->(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* Reconstructioner, const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:AliPHOSv1">AliPHOSv1</a><!--PLAIN-->(<a href="./AliPHOSv1.html">AliPHOSv1</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:~AliPHOSv1">~AliPHOSv1</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSv1:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSv1:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:StepManager">StepManager</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSv1:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSv1:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv1:fLightYieldMean">fLightYieldMean</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLightYieldMean">Mean lightyield in the PbOW4 xtal per GeV (Poisson distribution)</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv1:fIntrinsicPINEfficiency">fIntrinsicPINEfficiency</a><!--PLAIN--> <!--TAB--><i><a name="Title:fIntrinsicPINEfficiency">Photo efficiency of the PIN diode </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv1:fLightYieldAttenuation">fLightYieldAttenuation</a><!--PLAIN--> <!--TAB--><i><a name="Title:fLightYieldAttenuation">Attenuation of the light through the crystal</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv1:fRecalibrationFactor">fRecalibrationFactor</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRecalibrationFactor">Recalibration factor</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSv1:fElectronsPerGeV">fElectronsPerGeV</a><!--PLAIN--> <!--TAB--><i><a name="Title:fElectronsPerGeV">Number of electrons per GeV created in the PIN by a ionizing particle</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSv1:description">Class Description</a></h2>
+<pre> Implementation version v0 of PHOS Manager class
+ Layout EMC + PPSD has name GPS2
+ The main goal of this version of <a href="./AliPHOS.html">AliPHOS</a> is to calculte the
+ induced charged in the PIN diode, taking into account light
+ tracking in the PbWO4 crystal, induced signal in the
+ PIN due to MIPS particle and electronic noise.
+ This is done in the StepManager
+
+*-- Author: Odd Harald Oddland & Gines Martinez (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv1:AliPHOSv1" href="src/AliPHOSv1.cxx.html#AliPHOSv1:AliPHOSv1">AliPHOSv1</a>(const <a href="ListOfTypes.html#char">char</a> *name, const <a href="ListOfTypes.html#char">char</a> *title):
+ <a href="./AliPHOSv0.html">AliPHOSv0</a>(name,title)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSv1:AliPHOSv1" href="src/AliPHOSv1.cxx.html#AliPHOSv1:AliPHOSv1">AliPHOSv1</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner, const <a href="ListOfTypes.html#char">char</a> *name, const <a href="ListOfTypes.html#char">char</a> *title):
+ <a href="./AliPHOSv0.html">AliPHOSv0</a>(Reconstructioner,name,title)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv1:StepManager" href="src/AliPHOSv1.cxx.html#AliPHOSv1:StepManager">StepManager</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Accumulates hits as <a href="ListOfTypes.html#long">long</a> as the track stays in a single crystal or PPSD gas Cell
+ Adds the energy deposited in the PIN diode
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <a name="AliPHOSv1:AliPHOSv1" href="AliPHOSv1.h">AliPHOSv1</a>(<a href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>* Reconstructioner, const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSv1:Class" href="AliPHOSv1.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSv1:IsA" href="AliPHOSv1.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv1:ShowMembers" href="AliPHOSv1.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv1:Streamer" href="AliPHOSv1.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSv1.html">AliPHOSv1</a> <a name="AliPHOSv1:AliPHOSv1" href="AliPHOSv1.h">AliPHOSv1</a>(<a href="./AliPHOSv1.html">AliPHOSv1</a>&)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSv1:~AliPHOSv1" href="AliPHOSv1.h">~AliPHOSv1</a>()
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSv1_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:53 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1359 36 812 bf black [] 0 sd
+ 3 lw 54 812 m -12 Y 497 X 1353 Y -12 X -1341 Y f [] 0 sd 3 lw 36 812 m 1359 Y 503 X -1359 Y -503 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliDetector) /Helvetica-Bold 32 stwn gsave 288 2118
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliDetector) show gr
+ gsave 51 2069
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTimeGate) show gr
+ gsave 51 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIshunt) show gr
+ gsave 51 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNhits) show gr
+ gsave 51 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNdigits) show gr
+ gsave 51 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBufferSize) show gr
+ gsave 51 1888
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHits) show gr
+ gsave 51 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigits) show gr
+ gsave 51 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPoints) show gr
+ gsave 51 1780
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1753 m 503 X s 0 0 1 c
+ gsave 51 1689
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 51 1653
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr
+ gsave 51 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 51 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 51 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 51 1508
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 51 1472
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr
+ gsave 51 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 51 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 51 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr 0.6 0.6 0.6 c
+ gsave 51 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 51 1291
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 51 1255
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 51 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 51 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 51 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 51 1110
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr 0.6 0.6 0.6 c
+ gsave 51 1074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr 0 0 1 c
+ gsave 51 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawModule) show gr
+ gsave 51 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FirstHit) show gr
+ gsave 51 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (NextHit) show gr
+ gsave 51 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0.6 0.6 0.6 c
+ gsave 51 893
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 51 857
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 51 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 346 611 1825 bf black [] 0 sd 3 lw 629 1825 m -12 Y 497 X 340 Y -12 X -328 Y f [] 0 sd 3 lw 611 1825 m 346 Y 503 X -346 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 614 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 611 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOS) /Helvetica-Bold 32 stwn gsave 863 2127
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOS) show gr
+ gsave 626 2078
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 611 2042 m 503 X s 0 0 1 c
+ gsave 626 1988
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0.6 0.6 0.6 c
+ gsave 626 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 626 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 626 1879
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 626 1843
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1612 1186 559 bf black [] 0 sd 3 lw 1204 559 m -12 Y 498 X 1606 Y -12 X -1594 Y f [] 0 sd 3 lw 1186 559 m 1612 Y 504 X -1612 Y -504 X cl
+ s [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1189 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1186 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliPHOSv0) /Helvetica-Bold 32 stwn gsave 1438 2116
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSv0) show gr
+ gsave 1202 2067
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigitThreshold) show gr
+ gsave 1202 2031
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEmcClusters) show gr
+ gsave 1202 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 1202 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNTmpHits) show gr
+ gsave 1202 1922
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPinElectronicNoise) show gr
+ gsave 1202 1886
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPpsdClusters) show gr
+ gsave 1202 1850
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fReconstructioner) show gr
+ gsave 1202 1814
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTmpHits) show gr
+ gsave 1202 1778
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrackSegmentMaker) show gr
+ gsave 1202 1741
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTrackSegments) show gr
+ gsave 1202 1705
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRecParticles) show gr
+ gsave 1202 1669
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1186 1644 m 504 X s 0 0 1 c
+ gsave 1202 1579
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 1202 1542
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 1202 1506
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv0) show gr
+ gsave 1202 1470
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddHit) show gr
+ gsave 1202 1434
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 1202 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometryforPHOS) show gr
+ gsave 1202 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometryforPPSD) show gr
+ gsave 1202 1325
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr
+ gsave 1202 1289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometryforPHOS) show gr
+ gsave 1202 1253
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometryforPPSD) show gr
+ gsave 1202 1217
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digitize) show gr
+ gsave 1202 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (EmcClusters) show gr
+ gsave 1202 1144
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishEvent) show gr
+ gsave 1202 1108
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 1202 1072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 1202 1036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr
+ gsave 1202 1000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr
+ gsave 1202 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PpsdClusters) show gr
+ gsave 1202 927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Reconstruction) show gr
+ gsave 1202 891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (RecParticles) show gr
+ gsave 1202 855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetClusters) show gr
+ gsave 1202 819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetReconstructioner) show gr
+ gsave 1202 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetDigitThreshold) show gr 0.6 0.6 0.6 c
+ gsave 1202 746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr 0 0 1 c
+ gsave 1202 710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TrackSegments) show gr 0.6 0.6 0.6 c
+ gsave 1202 674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1202 638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1202 602
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1202 566
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 635 1762 1536 bf black [] 0 sd 3 lw 1779 1536 m -12 Y 498 X 629 Y -12 X -617 Y f [] 0 sd 3 lw 1762 1536 m 635 Y 503 X -635 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1765 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1762 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSv1) /Helvetica-Bold 32 stwn gsave 2013 2124
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSv1) show gr
+ gsave 1777 2076
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLightYieldMean) show gr
+ gsave 1777 2039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIntrinsicPINEfficiency) show gr
+ gsave 1777 2003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLightYieldAttenuation) show gr
+ gsave 1777 1967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRecalibrationFactor) show gr
+ gsave 1777 1931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fElectronsPerGeV) show gr
+ gsave 1777 1895
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1762 1861 m 503 X s 0 0 1 c
+ gsave 1777 1804
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv1) show gr
+ gsave 1777 1768
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv1) show gr
+ gsave 1777 1732
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSv1) show gr
+ gsave 1777 1696
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 1777 1660
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1777 1623
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1777 1587
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 1777 1551
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+#ifndef ALIPHOSVFAST_H
+#define ALIPHOSVFAST_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+
+//_________________________________________________________________________
+// Implementation of the PHOS manager class for fast simulations
+// Tracks particles until the reach a grossly designed PHOS module
+// Modify the particles property (momentum, energy, type) according to
+// the PHOS response function. The result is called a virtual reconstructed
+// particle.
+//
+//*-- Author: Yves Schutz (SUBATECH)
+
+// --- ROOT system ---
+#include "TClonesArray.h"
+#include "TRandom.h"
+
+// --- AliRoot header files ---
+#include "AliPHOS.h"
+#include "AliPHOSGeometry.h"
+#include "AliPHOSPID.h"
+#include "AliPHOSFastRecParticle.h"
+
+class AliPHOSvFast : public AliPHOS {
+
+public:
+
+ AliPHOSvFast(void) ;
+ AliPHOSvFast(const char *name, const char *title="") ;
+ virtual ~AliPHOSvFast(void) ;
+
+ void AddRecParticle(const AliPHOSFastRecParticle & rp) ; // adds primary particle to the RecParticles list
+ virtual void BuildGeometry(void) ; // creates the geometry for the ROOT display
+ virtual void CreateGeometry(void) ; // creates the geometry for GEANT
+ Float_t GetBigBox(Int_t index) ;
+ virtual AliPHOSGeometry * GetGeometry() { return fGeom ; }
+ virtual void Init(void) ; // does nothing
+ Int_t IsVersion(void) const { return -1 ; }
+ void MakeBranch(Option_t* opt) ;
+ Double_t MakeEnergy(const Double_t energy) ; // makes the detected energy
+ TVector3 MakePosition(const Double_t energy, const TVector3 pos, const Double_t th, const Double_t ph) ;
+ // makes the detected position
+ void MakeRecParticle(const Int_t modid, const TVector3 pos, AliPHOSFastRecParticle & rp) ; // makes a reconstructes particle from primary
+ Int_t MakeType(AliPHOSFastRecParticle & rp) ; // gets the detected type of particle
+ FastRecParticlesList * FastRecParticles() { return fFastRecParticles ; } // gets TClonesArray of reconstructed particles
+ virtual void ResetPoints() ;
+ void ResetFastRecParticles() ;
+ void SetBigBox(Int_t index, Float_t value) ;
+ Double_t SigmaE(Double_t energy) ; // calulates the energy resolution at a given Energy
+ Double_t SigmaP(Double_t energy, Int_t inc) ; // calulates the position resolution at a given Energy at a given incidence
+ virtual void StepManager(void) ; // does the tracking through PHOS and a preliminary digitalization
+
+private:
+
+ Float_t fBigBoxX ; // main box containing all PHOS (EMC+PPSD)
+ Float_t fBigBoxY ; // main box containing all PHOS (EMC+PPSD)
+ Float_t fBigBoxZ ; // main box containing all PHOS (EMC+PPSD)
+ FastRecParticlesList * fFastRecParticles ; // list of particles modified by the response function
+ AliPHOSGeometry * fGeom ; // geometry definition
+ Int_t fNRecParticles ; // number of detected particles
+ TRandom fRan ; // random number generator
+ Double_t fResPara1 ; // parameter for the energy resolution dependence
+ Double_t fResPara2 ; // parameter for the energy resolution dependence
+ Double_t fResPara3 ; // parameter for the energy resolution dependence
+ Double_t fPosParaA0 ; // parameter for the position resolution
+ Double_t fPosParaA1 ; // parameter for the position resolution
+ Double_t fPosParaB0 ; // parameter for the position resolution
+ Double_t fPosParaB1 ; // parameter for the position resolution
+ Double_t fPosParaB2 ; // parameter for the position resolution
+
+ ClassDef(AliPHOSvFast,1) // Implementation of the PHOS manager class for fast simulations
+
+};
+
+#endif // AliPHOSVFAST_H
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSvFast</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<!--BEGIN-->
+<center>
+<h1>AliPHOSvFast</h1>
+<hr width=300>
+<!--SDL--><em><a href=#AliPHOSvFast:description>class description</a> - <a href="src/AliPHOSvFast.cxx.html">source file</a> - <a href="AliPHOSvFast_Tree.ps">inheritance tree</a></em>
+<hr width=300>
+</center>
+<h2>class <a name="AliPHOSvFast" href="AliPHOSvFast.h">AliPHOSvFast</a> : public <a href="./AliPHOS.html">AliPHOS</a></h2>
+<pre>
+
+<!--TAB4--> <b>public:</b><br>
+<!--TAB6--> <a href="./AliPHOSvFast.html">AliPHOSvFast</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast</a><!--PLAIN-->()
+<!--TAB6--> <a href="./AliPHOSvFast.html">AliPHOSvFast</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast</a><!--PLAIN-->(const <a href="ListOfTypes.html#char">char</a>* name, const <a href="ListOfTypes.html#char">char</a>* title)
+<!--TAB6--> <a href="./AliPHOSvFast.html">AliPHOSvFast</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast</a><!--PLAIN-->(<a href="./AliPHOSvFast.html">AliPHOSvFast</a>&)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:~AliPHOSvFast">~AliPHOSvFast</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:AddRecParticle">AddRecParticle</a><!--PLAIN-->(const <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>& rp)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:BuildGeometry">BuildGeometry</a><!--PLAIN-->()
+<!--TAB6--> TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:Class">Class</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:CreateGeometry">CreateGeometry</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#FastRecParticlesList">FastRecParticlesList</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:FastRecParticles">FastRecParticles</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:GetBigBox">GetBigBox</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index)
+<!--TAB6--> virtual <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:GetGeometry">GetGeometry</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:Init">Init</a><!--PLAIN-->()
+<!--TAB6--> virtual TClass* <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:IsA">IsA</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:IsVersion">IsVersion</a><!--PLAIN-->() const
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:MakeBranch">MakeBranch</a><!--PLAIN-->(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt)
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:MakeEnergy">MakeEnergy</a><!--PLAIN-->(const <a href="ListOfTypes.html#Double_t">Double_t</a> energy)
+<!--TAB6--> TVector3 <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:MakePosition">MakePosition</a><!--PLAIN-->(const <a href="ListOfTypes.html#Double_t">Double_t</a> energy, const TVector3 pos, const <a href="ListOfTypes.html#Double_t">Double_t</a> th, const <a href="ListOfTypes.html#Double_t">Double_t</a> ph)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:MakeRecParticle">MakeRecParticle</a><!--PLAIN-->(const <a href="ListOfTypes.html#Int_t">Int_t</a> modid, const TVector3 pos, <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>& rp)
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:MakeType">MakeType</a><!--PLAIN-->(<a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>& rp)
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:ResetFastRecParticles">ResetFastRecParticles</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:ResetPoints">ResetPoints</a><!--PLAIN-->()
+<!--TAB6--> <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:SetBigBox">SetBigBox</a><!--PLAIN-->(<a href="ListOfTypes.html#Int_t">Int_t</a> index, <a href="ListOfTypes.html#Float_t">Float_t</a> value)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:ShowMembers">ShowMembers</a><!--PLAIN-->(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:SigmaE">SigmaE</a><!--PLAIN-->(<a href="ListOfTypes.html#Double_t">Double_t</a> energy)
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:SigmaP">SigmaP</a><!--PLAIN-->(<a href="ListOfTypes.html#Double_t">Double_t</a> energy, <a href="ListOfTypes.html#Int_t">Int_t</a> inc)
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:StepManager">StepManager</a><!--PLAIN-->()
+<!--TAB6--> virtual <a href="ListOfTypes.html#void">void</a> <!--TAB--><!--BOLD--><a href="#AliPHOSvFast:Streamer">Streamer</a><!--PLAIN-->(TBuffer& b)
+
+<h3><!--TAB2--> <a name="AliPHOSvFast:Data Members">Data Members</a></h3>
+<!--TAB4--> <b>private:</b><br>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fBigBoxX">fBigBoxX</a><!--PLAIN--> <!--TAB--><i><a name="Title:fBigBoxX">main box containing all PHOS (EMC+PPSD)</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fBigBoxY">fBigBoxY</a><!--PLAIN--> <!--TAB--><i><a name="Title:fBigBoxY">main box containing all PHOS (EMC+PPSD)</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Float_t">Float_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fBigBoxZ">fBigBoxZ</a><!--PLAIN--> <!--TAB--><i><a name="Title:fBigBoxZ">main box containing all PHOS (EMC+PPSD)</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#FastRecParticlesList">FastRecParticlesList</a>* <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fFastRecParticles">fFastRecParticles</a><!--PLAIN--> <!--TAB--><i><a name="Title:fFastRecParticles">list of particles modified by the response function </a></i>
+<!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fGeom">fGeom</a><!--PLAIN--> <!--TAB--><i><a name="Title:fGeom">geometry definition</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fNRecParticles">fNRecParticles</a><!--PLAIN--> <!--TAB--><i><a name="Title:fNRecParticles">number of detected particles</a></i>
+<!--TAB6--> TRandom <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fRan">fRan</a><!--PLAIN--> <!--TAB--><i><a name="Title:fRan">random number generator</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fResPara1">fResPara1</a><!--PLAIN--> <!--TAB--><i><a name="Title:fResPara1">parameter for the energy resolution dependence </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fResPara2">fResPara2</a><!--PLAIN--> <!--TAB--><i><a name="Title:fResPara2">parameter for the energy resolution dependence </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fResPara3">fResPara3</a><!--PLAIN--> <!--TAB--><i><a name="Title:fResPara3">parameter for the energy resolution dependence </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fPosParaA0">fPosParaA0</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPosParaA0">parameter for the position resolution</a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fPosParaA1">fPosParaA1</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPosParaA1">parameter for the position resolution </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fPosParaB0">fPosParaB0</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPosParaB0">parameter for the position resolution </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fPosParaB1">fPosParaB1</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPosParaB1">parameter for the position resolution </a></i>
+<!--TAB6--> <a href="ListOfTypes.html#Double_t">Double_t</a> <!--TAB--><!--BOLD--><a name="AliPHOSvFast:fPosParaB2">fPosParaB2</a><!--PLAIN--> <!--TAB--><i><a name="Title:fPosParaB2">parameter for the position resolution</a></i>
+</pre>
+<!--END-->
+<hr>
+<!--DESCRIPTION--><h2><a name="AliPHOSvFast:description">Class Description</a></h2>
+<pre> Implementation of the PHOS manager class for fast simulations
+ Tracks particles until the reach a grossly designed PHOS module
+ Modify the particles property (momentum, energy, type) according to
+ the PHOS response function. The result is called a virtual reconstructed
+ particle.
+
+*-- Author: Yves Schutz (SUBATECH)
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSvFast:AliPHOSvFast" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast</a>()
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSvFast:AliPHOSvFast" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast</a>(const <a href="ListOfTypes.html#char">char</a> *name, const <a href="ListOfTypes.html#char">char</a> *title):
+ <a href="./AliPHOS.html">AliPHOS</a>(name,title)
+<br>
+<pre> ctor
+</pre><hr>
+<!--FUNCTION--> <a name="AliPHOSvFast:~AliPHOSvFast" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:~AliPHOSvFast">~AliPHOSvFast</a>()
+<br>
+<pre> dtor
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:AddRecParticle" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:AddRecParticle">AddRecParticle</a>(const <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+<br>
+<pre> Add a virtually reconstructed particle to the list
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:BuildGeometry" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:BuildGeometry">BuildGeometry</a>()
+<br>
+<pre> Build the PHOS geometry for the ROOT display
+
+ /*
+ <H2>
+ PHOS FAST in ALICE displayed by root
+ </H2>
+ <H4> All Views </H4>
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Fast All Views" SRC="../images/AliPHOSvFastAllViews.gif">
+ </CENTER></P>
+ <H4> Front View </H4>
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Fast Front View" SRC="../images/AliPHOSvFastFrontView.gif">
+ </CENTER></P>
+ */
+
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:CreateGeometry" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:CreateGeometry">CreateGeometry</a>()
+<br>
+<pre> Create the geometry for GEANT
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:Init" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:Init">Init</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Prints out an information message
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Float_t">Float_t</a> <a name="AliPHOSvFast:GetBigBox" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:GetBigBox">GetBigBox</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index)
+<br>
+<pre> Get the X, Y or Z dimension of the box describing a PHOS module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:MakeBranch" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:MakeBranch">MakeBranch</a>(<a href="ListOfTypes.html#Option_t">Option_t</a>* opt)
+<br>
+<pre> Create new branch in the current reconstructed Root Tree
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Double_t">Double_t</a> <a name="AliPHOSvFast:MakeEnergy" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:MakeEnergy">MakeEnergy</a>(const <a href="ListOfTypes.html#Double_t">Double_t</a> energy)
+<br>
+<pre> Smears the energy according to the energy dependent energy resolution.
+ A gaussian distribution is assumed
+</pre><hr>
+<!--FUNCTION-->TVector3 <a name="AliPHOSvFast:MakePosition" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:MakePosition">MakePosition</a>(const <a href="ListOfTypes.html#Double_t">Double_t</a> energy, const TVector3 pos, const <a href="ListOfTypes.html#Double_t">Double_t</a> theta, const <a href="ListOfTypes.html#Double_t">Double_t</a> phi)
+<br>
+<pre> Smears the impact position according to the energy dependent position resolution
+ A gaussian position distribution is assumed
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:MakeRecParticle" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:MakeRecParticle">MakeRecParticle</a>(const <a href="ListOfTypes.html#Int_t">Int_t</a> modid, const TVector3 pos, <a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+<br>
+<pre> Modify the primary particle properties according
+ 1. the response function of PHOS
+ 2. the performance of the EMC+PPSD setup
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSvFast:MakeType" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:MakeType">MakeType</a>(<a href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp )
+<br>
+<pre> Generate a particle type using the performance of the EMC+PPSD setup
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:ResetPoints" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:ResetPoints">ResetPoints</a>()
+<br>
+<pre> This overloads the method in AliDetector
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:ResetFastRecParticles" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:ResetFastRecParticles">ResetFastRecParticles</a>()
+<br>
+<pre> Resets the list of virtual reconstructed particles
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:SetBigBox" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:SetBigBox">SetBigBox</a>(<a href="ListOfTypes.html#Int_t">Int_t</a> index, <a href="ListOfTypes.html#Float_t">Float_t</a> value)
+<br>
+<pre> Set the size of the Box describing a PHOS module
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Double_t">Double_t</a> <a name="AliPHOSvFast:SigmaE" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:SigmaE">SigmaE</a>(<a href="ListOfTypes.html#Double_t">Double_t</a> energy)
+<br>
+<pre> Calculates the energy dependent energy resolution
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#Double_t">Double_t</a> <a name="AliPHOSvFast:SigmaP" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:SigmaP">SigmaP</a>(<a href="ListOfTypes.html#Double_t">Double_t</a> energy, <a href="ListOfTypes.html#Int_t">Int_t</a> incidence)
+<br>
+<pre> Calculates the energy dependent position resolution
+</pre><hr>
+<!--FUNCTION--><a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:StepManager" href="src/AliPHOSvFast.cxx.html#AliPHOSvFast:StepManager">StepManager</a>(<a href="ListOfTypes.html#void">void</a>)
+<br>
+<pre> Only verifies if the particle reaches PHOS and stops the tracking
+</pre><br><br><br>
+<h3>Inline Functions</h3>
+<hr>
+<pre>
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSGeometry.html">AliPHOSGeometry</a>* <a name="AliPHOSvFast:GetGeometry" href="AliPHOSvFast.h">GetGeometry</a>()
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#Int_t">Int_t</a> <a name="AliPHOSvFast:IsVersion" href="AliPHOSvFast.h">IsVersion</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#FastRecParticlesList">FastRecParticlesList</a>* <a name="AliPHOSvFast:FastRecParticles" href="AliPHOSvFast.h">FastRecParticles</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSvFast:Class" href="AliPHOSvFast.h">Class</a>()
+<!--INLINE FUNCTION--><!--TAB6--> TClass* <a name="AliPHOSvFast:IsA" href="AliPHOSvFast.h">IsA</a>() const
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:ShowMembers" href="AliPHOSvFast.h">ShowMembers</a>(TMemberInspector& insp, <a href="ListOfTypes.html#char">char</a>* parent)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="ListOfTypes.html#void">void</a> <a name="AliPHOSvFast:Streamer" href="AliPHOSvFast.h">Streamer</a>(TBuffer& b)
+<!--INLINE FUNCTION--><!--TAB6--> <a href="./AliPHOSvFast.html">AliPHOSvFast</a> <a name="AliPHOSvFast:AliPHOSvFast" href="AliPHOSvFast.h">AliPHOSvFast</a>(<a href="./AliPHOSvFast.html">AliPHOSvFast</a>&)
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Copyright (c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+%!PS-Adobe-2.0
+%%Title: html/AliPHOSvFast_Tree.ps (Landscape A 4)
+%%Pages: (atend)
+%%Creator: ROOT Version 2.23/11
+%%CreationDate:Thu Mar 9 00:11:54 2000
+%%EndComments
+%%BeginProlog
+/s {stroke} def /l {lineto} def /m {moveto} def /t {translate} def
+/sw {stringwidth} def /r {rotate} def /rl {roll} def /R {repeat} def
+/d {rlineto} def /rm {rmoveto} def /gr {grestore} def /f {eofill} def
+/c {setrgbcolor} def /lw {setlinewidth} def /sd {setdash} def
+/cl {closepath} def /sf {scalefont setfont} def /black {0 setgray} def
+/box {m dup 0 exch d exch 0 d 0 exch neg d cl} def
+/NC{systemdict begin initclip end}def/C{NC box clip newpath}def
+/bl {box s} def /bf {box f} def /Y { 0 exch d} def /X { 0 d} def
+/mp {newpath /y exch def /x exch def} def
+/side {[w .77 mul w .23 mul] .385 w mul sd w 0 l currentpoint t -144 r} def
+/mr {mp x y w2 0 360 arc} def /m24 {mr s} def /m20 {mr f} def
+/mb {mp x y w2 add m w2 neg 0 d 0 w neg d w 0 d 0 w d cl} def
+/mt {mp x y w2 add m w2 neg w neg d w 0 d cl} def
+/m21 {mb f} def /m25 {mb s} def /m22 {mt f} def /m26{mt s} def
+/m23 {mp x y w2 sub m w2 w d w neg 0 d cl f} def
+/m27 {mp x y w2 add m w3 neg w2 neg d w3 w2 neg d w3 w2 d cl s} def
+/m28 {mp x w2 sub y w2 sub w3 add m w3 0 d 0 w3 neg d w3 0 d 0 w3 d w3 0 d 0 w3 d w3 neg 0 d 0 w3 d w3 neg 0 d
+ 0 w3 neg d w3 neg 0 d cl s } def
+/m29 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 4 {side} repeat cl fill gr} def
+/m30 {mp gsave x w2 sub y w2 add w3 sub m currentpoint t
+ 5 {side} repeat s gr} def
+/m31 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d x w2 sub y w2 add m w w neg d x w2 sub y w2
+ sub m w w d s} def
+/m2 {mp x y w2 sub m 0 w d x w2 sub y m w 0 d s} def
+/m5 {mp x w2 sub y w2 sub m w w d x w2 sub y w2 add m w w neg d s} def
+/reencdict 24 dict def /ReEncode {reencdict begin /nco&na exch def
+/nfnam exch def /basefontname exch def /basefontdict basefontname findfont def
+/newfont basefontdict maxlength dict def basefontdict {exch dup /FID ne
+{dup /Encoding eq {exch dup length array copy newfont 3 1 roll put} {exch
+newfont 3 1 roll put} ifelse} {pop pop} ifelse } forall newfont
+/FontName nfnam put nco&na aload pop nco&na length 2 idiv {newfont
+/Encoding get 3 1 roll put} repeat nfnam newfont definefont pop end } def
+/accvec [ 176 /agrave 181 /Agrave 190 /acircumflex 192 /Acircumflex
+201 /adieresis 204 /Adieresis 209 /ccedilla 210 /Ccedilla 211 /eacute
+212 /Eacute 213 /egrave 214 /Egrave 215 /ecircumflex 216 /Ecircumflex
+217 /edieresis 218 /Edieresis 219 /icircumflex 220 /Icircumflex
+221 /idieresis 222 /Idieresis 223 /ntilde 224 /Ntilde 226 /ocircumflex
+228 /Ocircumflex 229 /odieresis 230 /Odieresis 231 /ucircumflex 236 /Ucircumflex
+237 /udieresis 238 /Udieresis 239 /aring 242 /Aring 243 /ydieresis
+244 /Ydieresis 246 /aacute 247 /Aacute 252 /ugrave 253 /Ugrave] def
+/Times-Roman /Times-Roman accvec ReEncode
+/Times-Italic /Times-Italic accvec ReEncode
+/Times-Bold /Times-Bold accvec ReEncode
+/Times-BoldItalic /Times-BoldItalic accvec ReEncode
+/Helvetica /Helvetica accvec ReEncode
+/Helvetica-Oblique /Helvetica-Oblique accvec ReEncode
+/Helvetica-Bold /Helvetica-Bold accvec ReEncode
+/Helvetica-BoldOblique /Helvetica-BoldOblique accvec ReEncode
+/Courier /Courier accvec ReEncode
+/Courier-Oblique /Courier-Oblique accvec ReEncode
+/Courier-Bold /Courier-Bold accvec ReEncode
+/Courier-BoldOblique /Courier-BoldOblique accvec ReEncode
+/oshow {gsave [] 0 sd true charpath stroke gr} def
+/stwn { /fs exch def /fn exch def /text exch def fn findfont fs sf
+ text sw pop xs add /xs exch def} def
+/stwb { /fs exch def /fn exch def /nbas exch def /textf exch deftextf length /tlen exch def nbas tlen gt {/nbas tlendef} iffn findfont fs sf textf dup length nbas sub nbas getinterval sw
+pop neg xs add /xs exch def} def
+/accspe [ 65 /plusminus 66 /bar 67 /existential 68 /universal
+69 /exclam 70 /numbersign 71 /greater 72 /question 73 /integral
+74 /colon 75 /semicolon 76 /less 77 /bracketleft 78 /bracketright
+79 /greaterequal 80 /braceleft 81 /braceright 82 /radical
+83 /spade 84 /heart 85 /diamond 86 /club 87 /lessequal
+88 /multiply 89 /percent 90 /infinity 48 /circlemultiply 49 /circleplus
+50 /emptyset 51 /lozenge 52 /bullet 53 /arrowright 54 /arrowup
+55 /arrowleft 56 /arrowdown 57 /arrowboth 48 /degree 44 /comma 43 /plus 45 /angle 42 /angleleft 47 /divide 61 /notequal 40 /equivalence 41 /second 97 /approxequal 98 /congruent 99 /perpendicular 100 /partialdiff 101 /florin 102 /intersection
+ 103 /union 104 /propersuperset 105 /reflexsuperset 106 /notsubset 107 /propersubset 108 /reflexsubset 109 /element 110 /notelement 111 /gradient 112 /logicaland 113 /logicalor 114 /arrowdblboth 115 /arrowdblleft 116 /arrowdblup 117 /arrowdblright
+ 118 /arrowdbldown 119 /ampersand 120 /omega1 121 /similar 122 /aleph ] def
+/Symbol /Special accspe ReEncode
+/Zone {/iy exch def /ix exch def ix 1 sub 3144 mul 1 iy sub 2224
+ mul t} def
+%%EndProlog
+ gsave 90 r 0 -594 t 28 20 t .25 .25 scale gsave
+%%Page: number 1
+ black [] 0 sd 3 lw 0.95 0.95 0.95 c 2948 2211 0 0 bf 1 1 1 c 0 0 m 2 2 d 2207 Y 2944 X 2 2 d -2948 X -2211 Y f 0.665 0.665 0.665 c 0 0 m 2 2 d 2944 X 2207 Y 2 2 d -2211 Y -2948 X f black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 1250 36 921 bf black
+ [] 0 sd 3 lw 54 921 m -12 Y 1000 X 1244 Y -11 X -1232 Y f [] 0 sd 3 lw 36 921 m 1250 Y 1007 X -1250 Y -1007 X cl s [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 2115 m 1007 X s 0 0 1 c
+ /xs 0 def (AliModule) /Helvetica-Bold 32 stwn gsave 539 2119
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliModule) show gr
+ gsave 66 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidMaterial) show gr
+ gsave 66 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fEuclidGeometry) show gr
+ gsave 66 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdtmed) show gr
+ gsave 66 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIdmate) show gr
+ gsave 66 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLoMedium) show gr
+ gsave 66 1889
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHiMedium) show gr
+ gsave 569 2070
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fActive) show gr
+ gsave 569 2034
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHistograms) show gr
+ gsave 569 1998
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNodes) show gr
+ gsave 569 1962
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 1897 m 1007 X s 0.6 0.6 0.6 c
+ gsave 66 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 66 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr 0 0 1 c
+ gsave 66 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIdtmed) show gr
+ gsave 66 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Histograms) show gr
+ gsave 66 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Nodes) show gr 0.6 0.6 0.6 c
+ gsave 66 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 66 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 66 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 66 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 66 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr 0 0 1 c
+ gsave 66 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsActive) show gr
+ gsave 66 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsFolder) show gr
+ gsave 66 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoMedium) show gr
+ gsave 66 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (HiMedium) show gr
+ gsave 66 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMaterial) show gr
+ gsave 66 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliGetMaterial) show gr
+ gsave 66 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMixture) show gr
+ gsave 66 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMedium) show gr
+ gsave 66 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliMatrix) show gr 0.6 0.6 0.6 c
+ gsave 66 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 66 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr 0 0 1 c
+ gsave 66 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddDigit) show gr
+ gsave 66 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddHit) show gr 0.6 0.6 0.6 c
+ gsave 66 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 66 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr
+ gsave 66 931
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0 0 1 c
+ gsave 569 1835
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Disable) show gr
+ gsave 569 1799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoPrimitive) show gr
+ gsave 569 1763
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Enable) show gr
+ gsave 569 1726
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PreTrack) show gr
+ gsave 569 1690
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (PostTrack) show gr
+ gsave 569 1654
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishEvent) show gr 0.6 0.6 0.6 c
+ gsave 569 1618
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 569 1582
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 569 1546
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr
+ gsave 569 1509
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 569 1473
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Paint) show gr 0.6 0.6 0.6 c
+ gsave 569 1437
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 569 1401
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr
+ gsave 569 1365
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 569 1329
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 569 1292
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 569 1256
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr
+ gsave 569 1220
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 569 1184
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0 0 1 c
+ gsave 569 1148
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetEuclidFile) show gr
+ gsave 569 1111
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclid) show gr
+ gsave 569 1075
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ReadEuclidMedia) show gr 0.6 0.6 0.6 c
+ gsave 569 1039
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 1003
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 967
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 450 36 438 bf black [] 0 sd 3 lw 54 438 m -12 Y 1000 X 445 Y -11 X -433 Y f [] 0 sd 3 lw 36 438 m 450 Y 1007 X -450 Y -1007 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 1004 55 39 833 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 832 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttLine) /Helvetica-Bold 32 stwn gsave 539 843
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttLine) show gr
+ gsave 66 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineColor) show gr
+ gsave 66 771
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineStyle) show gr
+ gsave 66 743
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fLineWidth) show gr
+ gsave 569 799
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 748 m 1007 X s 0 0 1 c
+ gsave 66 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 66 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttLine) show gr
+ gsave 66 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DistancetoLine) show gr
+ gsave 66 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineColor) show gr
+ gsave 66 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineStyle) show gr
+ gsave 66 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetLineWidth) show gr
+ gsave 66 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 66 475
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttLine) show gr
+ gsave 66 447
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveLineAttributes) show gr
+ gsave 569 700
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineAttributes) show gr
+ gsave 569 672
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineColor) show gr
+ gsave 569 644
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineStyle) show gr
+ gsave 569 616
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetLineWidth) show gr
+ gsave 569 588
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 560
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 531
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 569 503
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 1007 421 36 -15 bf black [] 0 sd 3 lw 1054 0 m 388 Y -11 X -388 Y f [] 0 sd 3 lw 36 0 m 406 Y s [] 0 sd 3 lw 36 406 m 1007 X -406 Y s [] 0 sd 3
+ lw 0.8 0.8 0.8 c 1004 54 39 351 bf black [] 0 sd 3 lw [] 0 sd 3 lw 36 350 m 1007 X s 0 0 1 c
+ /xs 0 def (TAttMarker) /Helvetica-Bold 32 stwn gsave 539 361
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (TAttMarker) show gr
+ gsave 66 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerColor) show gr
+ gsave 66 289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerStyle) show gr
+ gsave 66 260
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fMarkerSize) show gr
+ gsave 569 317
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 36 265 m 1007 X s 0 0 1 c
+ gsave 66 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 66 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (TAttMarker) show gr
+ gsave 66 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Copy) show gr
+ gsave 66 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerColor) show gr
+ gsave 66 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerStyle) show gr
+ gsave 66 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetMarkerSize) show gr
+ gsave 66 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Modify) show gr
+ gsave 66 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetAttMarker) show gr
+ gsave 66 -6
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SaveMarkerAttributes) show gr
+ gsave 569 218
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerAttributes) show gr
+ gsave 569 190
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerColor) show gr
+ gsave 569 162
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerStyle) show gr
+ gsave 569 134
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetMarkerSize) show gr
+ gsave 569 106
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 569 77
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 569 49
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 569 21
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 504 1359 1114 812 bf black [] 0 sd 3 lw 1132 812 m -12 Y 498 X 1353 Y -12 X -1341 Y f [] 0 sd 3 lw 1114 812 m 1359 Y 504 X -1359 Y -504 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 501 55 1117 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1114 2115 m 504 X s 0 0 1 c
+ /xs 0 def (AliDetector) /Helvetica-Bold 32 stwn gsave 1366 2118
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliDetector) show gr
+ gsave 1130 2069
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fTimeGate) show gr
+ gsave 1130 2033
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fIshunt) show gr
+ gsave 1130 1997
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNhits) show gr
+ gsave 1130 1961
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNdigits) show gr
+ gsave 1130 1925
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBufferSize) show gr
+ gsave 1130 1888
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fHits) show gr
+ gsave 1130 1852
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fDigits) show gr
+ gsave 1130 1816
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPoints) show gr
+ gsave 1130 1780
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1114 1753 m 504 X s 0 0 1 c
+ gsave 1130 1689
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNdigits) show gr
+ gsave 1130 1653
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetNhits) show gr
+ gsave 1130 1617
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Digits) show gr
+ gsave 1130 1581
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Hits) show gr
+ gsave 1130 1545
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Points) show gr
+ gsave 1130 1508
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetIshunt) show gr
+ gsave 1130 1472
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetIshunt) show gr
+ gsave 1130 1436
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Browse) show gr
+ gsave 1130 1400
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FinishRun) show gr
+ gsave 1130 1364
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (LoadPoints) show gr 0.6 0.6 0.6 c
+ gsave 1130 1328
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr 0 0 1 c
+ gsave 1130 1291
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetDigits) show gr
+ gsave 1130 1255
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetHits) show gr 0.6 0.6 0.6 c
+ gsave 1130 1219
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr 0 0 1 c
+ gsave 1130 1183
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTreeAddress) show gr
+ gsave 1130 1147
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetTimeGate) show gr
+ gsave 1130 1110
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetTimeGate) show gr 0.6 0.6 0.6 c
+ gsave 1130 1074
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr 0 0 1 c
+ gsave 1130 1038
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (DrawModule) show gr
+ gsave 1130 1002
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FirstHit) show gr
+ gsave 1130 966
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (NextHit) show gr
+ gsave 1130 930
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBufferSize) show gr 0.6 0.6 0.6 c
+ gsave 1130 893
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1130 857
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1130 821
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 346 1690 1825 bf black [] 0 sd 3 lw 1707 1825 m -12 Y 498 X 340 Y -12 X -328 Y f [] 0 sd 3 lw 1690 1825 m 346 Y 503 X -346 Y -503 X cl s
+ [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 1693 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOS) /Helvetica-Bold 32 stwn gsave 1941 2127
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOS) show gr
+ gsave 1705 2078
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 1690 2042 m 503 X s 0 0 1 c
+ gsave 1705 1988
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateMaterials) show gr 0.6 0.6 0.6 c
+ gsave 1705 1951
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 1705 1915
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 1705 1879
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 1705 1843
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr black [] 0 sd 3 lw 0.95 0.95 0.95 c 503 1612 2265 559 bf black [] 0 sd 3 lw 2283 559 m -12 Y 497 X 1606 Y -12 X -1594 Y f [] 0 sd 3 lw 2265 559 m 1612 Y 503 X -1612 Y -503 X cl
+ s [] 0 sd 3 lw 0.8 0.8 0.8 c 500 55 2268 2115 bf black [] 0 sd 3 lw [] 0 sd 3 lw 2265 2115 m 503 X s 0 0 1 c
+ /xs 0 def (AliPHOSvFast) /Helvetica-Bold 32 stwn gsave 2517 2116
+ t 0 r xs 2 div neg 0 t 0 0 m /Helvetica-Bold findfont 32 sf 0 0 m (AliPHOSvFast) show gr
+ gsave 2280 2067
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBigBoxX) show gr
+ gsave 2280 2031
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBigBoxY) show gr
+ gsave 2280 1995
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fBigBoxZ) show gr
+ gsave 2280 1959
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fFastRecParticles) show gr
+ gsave 2280 1922
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fGeom) show gr
+ gsave 2280 1886
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fNRecParticles) show gr
+ gsave 2280 1850
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fRan) show gr
+ gsave 2280 1814
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fResPara1) show gr
+ gsave 2280 1778
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fResPara2) show gr
+ gsave 2280 1741
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fResPara3) show gr
+ gsave 2280 1705
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPosParaA0) show gr
+ gsave 2280 1669
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPosParaA1) show gr
+ gsave 2280 1633
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPosParaB0) show gr
+ gsave 2280 1597
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPosParaB1) show gr
+ gsave 2280 1561
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fPosParaB2) show gr
+ gsave 2280 1524
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (fgIsA) show gr black [] 0 sd 3 lw [] 0 sd 3 lw 2265 1499 m 503 X s 0 0 1 c
+ gsave 2280 1434
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSvFast) show gr
+ gsave 2280 1398
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AliPHOSvFast) show gr
+ gsave 2280 1362
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (AddRecParticle) show gr
+ gsave 2280 1325
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (BuildGeometry) show gr
+ gsave 2280 1289
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (CreateGeometry) show gr
+ gsave 2280 1253
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetBigBox) show gr
+ gsave 2280 1217
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (GetGeometry) show gr
+ gsave 2280 1181
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Init) show gr
+ gsave 2280 1144
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsVersion) show gr
+ gsave 2280 1108
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeBranch) show gr
+ gsave 2280 1072
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeEnergy) show gr
+ gsave 2280 1036
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakePosition) show gr
+ gsave 2280 1000
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeRecParticle) show gr
+ gsave 2280 964
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (MakeType) show gr
+ gsave 2280 927
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (FastRecParticles) show gr
+ gsave 2280 891
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetPoints) show gr
+ gsave 2280 855
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ResetFastRecParticles) show gr
+ gsave 2280 819
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SetBigBox) show gr
+ gsave 2280 783
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SigmaE) show gr
+ gsave 2280 746
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (SigmaP) show gr
+ gsave 2280 710
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (StepManager) show gr
+ gsave 2280 674
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Class) show gr
+ gsave 2280 638
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (IsA) show gr
+ gsave 2280 602
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (ShowMembers) show gr
+ gsave 2280 566
+ t 0 r 0 0 m /Helvetica-Bold findfont 36 sf 0 0 m (Streamer) show gr gr
+showpage gr
+ gr
+%%Trailer
+%%Pages: 1
+%%EOF
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TApplication............... <a name="Title:TApplication">GUI application singleton</a>
+<li>TApplicationImp............ <a name="Title:TApplicationImp">ABC describing application implementation protocol</a>
+<li>TArray..................... <a name="Title:TArray">Abstract array base class</a>
+<li>TArrayC.................... <a name="Title:TArrayC">Array of chars</a>
+<li>TArrayD.................... <a name="Title:TArrayD">Array of doubles</a>
+<li>TArrayF.................... <a name="Title:TArrayF">Array of floats</a>
+<li>TArrayI.................... <a name="Title:TArrayI">Array of ints</a>
+<li>TArrayL.................... <a name="Title:TArrayL">Array of longs</a>
+<li>TArrayS.................... <a name="Title:TArrayS">Array of shorts</a>
+<li>TAtt3D..................... <a name="Title:TAtt3D">3D attributes</a>
+<li>TAttAxis................... <a name="Title:TAttAxis">Axis attributes</a>
+<li>TAttFill................... <a name="Title:TAttFill">Fill area attributes</a>
+<li>TAttLine................... <a name="Title:TAttLine">Line attributes</a>
+<li>TAttMarker................. <a name="Title:TAttMarker">Marker attributes</a>
+<li>TAttPad.................... <a name="Title:TAttPad">Pad attributes</a>
+<li>TAttText................... <a name="Title:TAttText">Text attributes</a>
+<li>TBenchmark................. <a name="Title:TBenchmark">ROOT utility to help benchmarking applications</a>
+<li>TBrowser................... <a name="Title:TBrowser">ROOT Object Browser</a>
+<li>TBrowserImp................ <a name="Title:TBrowserImp">ABC describing browser implementation protocol</a>
+<li>TBuffer.................... <a name="Title:TBuffer">Buffer base class used for serializing objects</a>
+<li>TCanvasImp................. <a name="Title:TCanvasImp">ABC describing main window protocol</a>
+<li>TClassTable................ <a name="Title:TClassTable">Table of known classes</a>
+<li>TColor..................... <a name="Title:TColor">Color defined by RGB or HLS</a>
+<li>TContextMenu............... <a name="Title:TContextMenu">Context sensitive popup menu</a>
+<li>TContextMenuImp............ <a name="Title:TContextMenuImp">Context sensitive popup menu implementation</a>
+<li>TControlBarImp............. <a name="Title:TControlBarImp">GUI independent controlbar abc</a>
+<li>TDatime.................... <a name="Title:TDatime">Date and time 950130 124559</a>
+<li>TDirectory................. <a name="Title:TDirectory">Describe directory structure in memory</a>
+<li>TEnv....................... <a name="Title:TEnv">Handle ROOT configuration resources</a>
+<li>TExec...................... <a name="Title:TExec">To execute a CINT command</a>
+<li>TFile...................... <a name="Title:TFile">ROOT file</a>
+<li>TFileHandler............... <a name="Title:TFileHandler">Handles events on file descriptors</a>
+<li>TFree...................... <a name="Title:TFree">Description of free segments on a file</a>
+<li>TGuiFactory................ <a name="Title:TGuiFactory">Abstract factory for GUI components</a>
+<li>TKey....................... <a name="Title:TKey">Header description of a logical record on file</a>
+<li>TKeyMapFile................ <a name="Title:TKeyMapFile">Utility class for browsing TMapFile objects.</a>
+<li>TMapFile................... <a name="Title:TMapFile">Memory mapped directory structure</a>
+<li>TMath...................... <a name="Title:TMath">Interface to math routines</a>
+<li>TMemberInspector........... <a name="Title:TMemberInspector">ABC for inspecting class data members</a>
+<li>TMessageHandler............ <a name="Title:TMessageHandler">Generic message handler</a>
+<li>TNamed..................... <a name="Title:TNamed">The basis for a named object (name, title)</a>
+<li>TObject.................... <a name="Title:TObject">Basic ROOT object</a>
+<li>TObjectTable............... <a name="Title:TObjectTable">Table of active objects</a>
+<li>TObjString................. <a name="Title:TObjString">Collectable string class</a>
+<li>TProcessEventTimer......... <a name="Title:TProcessEventTimer">Process pending events at fixed time intervals</a>
+<li>TRandom.................... <a name="Title:TRandom">Random number generators</a>
+<li>TRandom2................... <a name="Title:TRandom2">Random number generators with periodicity > 10**14</a>
+<li>TRandom3................... <a name="Title:TRandom3">Random number generator: Mersenne Twistor</a>
+<li>TRealData.................. <a name="Title:TRealData">Description of persistent data members</a>
+<li>TRegexp.................... <a name="Title:TRegexp">Regular expression class</a>
+<li>TROOT...................... <a name="Title:TROOT">Top level (or root) structure for all classes</a>
+<li>TSignalHandler............. <a name="Title:TSignalHandler">Signal event handler</a>
+<li>TStopwatch................. <a name="Title:TStopwatch">A stopwatch which times real and cpu time</a>
+<li>TStorage................... <a name="Title:TStorage">Storage manager class</a>
+<li>TString.................... <a name="Title:TString">Basic string class</a>
+<li>TStringLong................ <a name="Title:TStringLong">Long string class (more than 255 chars)</a>
+<li>TStyle..................... <a name="Title:TStyle">A collection of all graphics attributes</a>
+<li>TSysEvtHandler............. <a name="Title:TSysEvtHandler">ABC for handling system events</a>
+<li>TSystem.................... <a name="Title:TSystem">ABC defining a generic interface to the OS</a>
+<li>TSystemDirectory........... <a name="Title:TSystemDirectory">A system directory</a>
+<li>TSystemFile................ <a name="Title:TSystemFile">A system file</a>
+<li>TTime...................... <a name="Title:TTime">Basic time type with milli second precision</a>
+<li>TTimer..................... <a name="Title:TTimer">Handle timer event</a>
+<li>TView...................... <a name="Title:TView">3-D View</a>
+<li>TVirtualFitter............. <a name="Title:TVirtualFitter">Abstract interface for fitting</a>
+<li>TVirtualPad................ <a name="Title:TVirtualPad">Abstract base class for Pads and Canvases</a>
+<li>TVirtualPS................. <a name="Title:TVirtualPS">Abstract interface to a PostScript driver</a>
+<li>TVirtualX.................. <a name="Title:TVirtualX">ABC defining a generic interface to graphics system</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TBtree..................... <a name="Title:TBtree">A B-tree</a>
+<li>TBtreeIter................. <a name="Title:TBtreeIter">B-tree iterator</a>
+<li>TClonesArray............... <a name="Title:TClonesArray">An array of clone objects</a>
+<li>TCollection................ <a name="Title:TCollection">Collection abstract base class</a>
+<li>TExMap..................... <a name="Title:TExMap">Map with external hash</a>
+<li>THashList.................. <a name="Title:THashList">Doubly linked list with hashtable for lookup</a>
+<li>THashTable................. <a name="Title:THashTable">A hash table</a>
+<li>THashTableIter............. <a name="Title:THashTableIter">Hash table iterator</a>
+<li>TIter...................... <a name="Title:TIter">Iterator wrapper</a>
+<li>TIterator.................. <a name="Title:TIterator">Iterator abstract base class</a>
+<li>TList...................... <a name="Title:TList">Doubly linked list</a>
+<li>TListIter.................. <a name="Title:TListIter">Linked list iterator</a>
+<li>TMap....................... <a name="Title:TMap">A map</a>
+<li>TMapIter................... <a name="Title:TMapIter">Map iterator</a>
+<li>TObjArray.................. <a name="Title:TObjArray">An array of objects</a>
+<li>TObjArrayIter.............. <a name="Title:TObjArrayIter">Object array iterator</a>
+<li>TOrdCollection............. <a name="Title:TOrdCollection">An ordered collection</a>
+<li>TOrdCollectionIter......... <a name="Title:TOrdCollectionIter">Ordered collection iterator</a>
+<li>TSeqCollection............. <a name="Title:TSeqCollection">Sequenceable collection ABC</a>
+<li>TSortedList................ <a name="Title:TSortedList">A sorted list</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:26 2000 -->
+<!-- -->
+<head>
+<title>Class Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h1>Index</h1>
+<hr>
+<pre>
+<ul>
+<li>AliABSO..................... <a name="Title:AliABSO">Muon Absorber Class</a>
+<li>AliABSOv0................... <a name="Title:AliABSOv0">Muon Absorber Class</a>
+<li>AliBODY..................... <a name="Title:AliBODY">Class manager for the ALICE body</a>
+<li>AliCASTOR................... <a name="Title:AliCASTOR">CASTOR detector class</a>
+<li>AliCASTORhit................ <a name="Title:AliCASTORhit">Hits for CASTOR</a>
+<li>AliCASTORv1................. <a name="Title:AliCASTORv1">Class for CASTOR version 1</a>
+<li>AliDetector................. <a name="Title:AliDetector">Base class for ALICE detectors</a>
+<li>AliDigit.................... <a name="Title:AliDigit">Base class for all Alice digits</a>
+<li>AliDigitNew................. <a name="Title:AliDigitNew">Base class for all Alice digits</a>
+<li>AliDimuCombinator........... <a name="Title:AliDimuCombinator">Dimuon Combinator</a>
+<li>AliDIPO..................... <a name="Title:AliDIPO">Class for the dipole magnet</a>
+<li>AliDIPOv1................... <a name="Title:AliDIPOv1">Class for the Magnetic Dipole version 1</a>
+<li>AliDIPOv2................... <a name="Title:AliDIPOv2">Class manager for magnetic dipole version 2</a>
+<li>AliDisplay.................. <a name="Title:AliDisplay">Utility class to display ALICE outline, tracks, hits,..</a>
+<li>AliDrawVolume............... <a name="Title:AliDrawVolume">Volume Object for Drawing </a>
+<li>AliFMD...................... <a name="Title:AliFMD">Class for the FMD detector</a>
+<li>AliFMDhit................... <a name="Title:AliFMDhit">Hits for detector FMD</a>
+<li>AliFMDv0.................... <a name="Title:AliFMDv0">Class for FMD version 0</a>
+<li>AliFMDv1.................... <a name="Title:AliFMDv1">Class for FMD version 1</a>
+<li>AliFRAME.................... <a name="Title:AliFRAME">Class for Space Frame</a>
+<li>AliFRAMEv0.................. <a name="Title:AliFRAMEv0">Class for FRAME version 0</a>
+<li>AliFRAMEv1.................. <a name="Title:AliFRAMEv1">Class for FRAME version 0</a>
+<li>AliGeant3................... <a name="Title:AliGeant3">Generic MonteCarlo Class</a>
+<li>AliGeant3GeometryGUI........ <a name="Title:AliGeant3GeometryGUI">GUI for Geant3 geometry visualisation</a>
+<li>AliGenBox................... <a name="Title:AliGenBox">Square box random generator</a>
+<li>AliGenCocktail.............. <a name="Title:AliGenCocktail"></a>
+<li>AliGenCocktailEntry......... <a name="Title:AliGenCocktailEntry"></a>
+<li>AliGenDoubleScan............ <a name="Title:AliGenDoubleScan">Generation of particles on a grid </a>
+<li>AliGenerator................ <a name="Title:AliGenerator"></a>
+<li>AliGenExtFile............... <a name="Title:AliGenExtFile">Boundary source</a>
+<li>AliGenFixed................. <a name="Title:AliGenFixed">Single particle generator</a>
+<li>AliGenFLUKAsource........... <a name="Title:AliGenFLUKAsource">Boundary source</a>
+<li>AliGenHalo.................. <a name="Title:AliGenHalo"></a>
+<li>AliGenHIJINGpara............ <a name="Title:AliGenHIJINGpara">Hijing parametrisation generator</a>
+<li>AliGenMUONlib............... <a name="Title:AliGenMUONlib"></a>
+<li>AliGenParam................. <a name="Title:AliGenParam">Generator using parameterised pt- and y-distribution</a>
+<li>AliGenPHOSlib............... <a name="Title:AliGenPHOSlib"></a>
+<li>AliGenPythia................ <a name="Title:AliGenPythia"></a>
+<li>AliGenScan.................. <a name="Title:AliGenScan">Boundary source</a>
+<li>AliGeometry................. <a name="Title:AliGeometry">description , version 1</a>
+<li>AliGuiGeomMain.............. <a name="Title:AliGuiGeomMain">MainFrame for Geometry Browser</a>
+<li>AliGUIMaterial.............. <a name="Title:AliGUIMaterial">Material Object for GUI </a>
+<li>AliGUIMedium................ <a name="Title:AliGUIMedium">Tracking Medium Object for GUI </a>
+<li>AliHALL..................... <a name="Title:AliHALL">Class for ALICE experimental hall</a>
+<li>AliHeader................... <a name="Title:AliHeader">Alice event header</a>
+<li>AliHit...................... <a name="Title:AliHit">Base class for all Alice hits</a>
+<li>AliITS...................... <a name="Title:AliITS"></a>
+<li>AliITSdigit................. <a name="Title:AliITSdigit">Digit (Header) object for set:ITS</a>
+<li>AliITSdigitSSD.............. <a name="Title:AliITSdigitSSD"></a>
+<li>AliITSgeom.................. <a name="Title:AliITSgeom"></a>
+<li>AliITSgeomSDD............... <a name="Title:AliITSgeomSDD"></a>
+<li>AliITSgeomSPD............... <a name="Title:AliITSgeomSPD"></a>
+<li>AliITSgeomSSD............... <a name="Title:AliITSgeomSSD"></a>
+<li>AliITShit................... <a name="Title:AliITShit">Hits object for set:ITS</a>
+<li>AliITSmodule................ <a name="Title:AliITSmodule"></a>
+<li>AliITSmoduleSDD............. <a name="Title:AliITSmoduleSDD"></a>
+<li>AliITSmoduleSPD............. <a name="Title:AliITSmoduleSPD"></a>
+<li>AliITSmoduleSSD............. <a name="Title:AliITSmoduleSSD"></a>
+<li>AliITSv1.................... <a name="Title:AliITSv1">Hits manager for set:ITS version 1</a>
+<li>AliITSv3.................... <a name="Title:AliITSv3">Hits manager for set:ITS version 3</a>
+<li>AliITSv5.................... <a name="Title:AliITSv5">Hits manager for ITS version 5</a>
+<li>AliLego..................... <a name="Title:AliLego">Utility class to compute and draw Radiation Length Map</a>
+<li>AliLegoGenerator............ <a name="Title:AliLegoGenerator">Lego generator</a>
+<li>AliMAG...................... <a name="Title:AliMAG">Class manager for detector:MAG</a>
+<li>AliMagF..................... <a name="Title:AliMagF">Base class for all Alice MagField</a>
+<li>AliMagFC.................... <a name="Title:AliMagFC">Class for all Alice Constant MagField </a>
+<li>AliMagFCM................... <a name="Title:AliMagFCM">Class for all Alice MagField with Constant Mesh</a>
+<li>AliMC....................... <a name="Title:AliMC">Geometry Interface Class</a>
+<li>AliModule................... <a name="Title:AliModule">Base class for ALICE Modules</a>
+<li>AliMUON..................... <a name="Title:AliMUON">Hits manager for set:MUON</a>
+<li>AliMUONchamber.............. <a name="Title:AliMUONchamber"></a>
+<li>AliMUONcluster.............. <a name="Title:AliMUONcluster">Cluster object for set:MUON</a>
+<li>AliMUONClusterFinder........ <a name="Title:AliMUONClusterFinder">Class for clustering and reconstruction of space points</a>
+<li>AliMUONClusterFinderv0...... <a name="Title:AliMUONClusterFinderv0">Class for clustering and reconstruction of space points</a>
+<li>AliMUONcorrelation.......... <a name="Title:AliMUONcorrelation">Cathode correlation object for set:MUON</a>
+<li>AliMUONdigit................ <a name="Title:AliMUONdigit">Digits for set:MUON</a>
+<li>AliMUONdisplay.............. <a name="Title:AliMUONdisplay">Utility class to display MUON clusters...</a>
+<li>AliMUONhit.................. <a name="Title:AliMUONhit">Hits object for set:MUON</a>
+<li>AliMUONHitMap............... <a name="Title:AliMUONHitMap">virtual base class for muon HitMap</a>
+<li>AliMUONHitMapA1............. <a name="Title:AliMUONHitMapA1">Implements HitMap as a 2-dim array</a>
+<li>AliMUONlist................. <a name="Title:AliMUONlist">Digits for set:MUON</a>
+<li>AliMUONpoints............... <a name="Title:AliMUONpoints">Class to draw detector clusters (is PolyMarker3D)</a>
+<li>AliMUONRawCluster........... <a name="Title:AliMUONRawCluster">Cluster object for set:MUON</a>
+<li>AliMUONreccluster........... <a name="Title:AliMUONreccluster">Cluster object for set:MUON</a>
+<li>AliMUONresponse............. <a name="Title:AliMUONresponse">Implementation of Mathieson CPC response </a>
+<li>AliMUONresponseV0........... <a name="Title:AliMUONresponseV0"></a>
+<li>AliMUONsegmentation......... <a name="Title:AliMUONsegmentation">Segmentation class for homogeneous segmentation</a>
+<li>AliMUONsegmentationV0....... <a name="Title:AliMUONsegmentationV0"></a>
+<li>AliMUONsegmentationV01...... <a name="Title:AliMUONsegmentationV01"></a>
+<li>AliMUONsegmentationV02...... <a name="Title:AliMUONsegmentationV02">Muon chamber segmentation version 02</a>
+<li>AliMUONsegmentationV04...... <a name="Title:AliMUONsegmentationV04"></a>
+<li>AliMUONsegmentationV05...... <a name="Title:AliMUONsegmentationV05"></a>
+<li>AliMUONsegmentationV1....... <a name="Title:AliMUONsegmentationV1"></a>
+<li>AliMUONTUBE................. <a name="Title:AliMUONTUBE"></a>
+<li>AliMUONv0................... <a name="Title:AliMUONv0">Hits manager for set:MUON version 0</a>
+<li><a name="AliPHOS" href="./AliPHOS.html">AliPHOS</a> ..................... <a name="Title:AliPHOS">Photon Spectrometer Detector (base class)</a>
+<li><a name="AliPHOSAnalyze" href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> .............. <a name="Title:AliPHOSAnalyze">PHOSv0 event analyzis algorithm</a>
+<li><a name="AliPHOSClusterizer" href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a> .......... <a name="Title:AliPHOSClusterizer">Clusterization algorithm class (abstract base class)</a>
+<li><a name="AliPHOSClusterizerv1" href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a> ........ <a name="Title:AliPHOSClusterizerv1">Clusterizer implementation version 1</a>
+<li><a name="AliPHOSDigit" href="./AliPHOSDigit.html">AliPHOSDigit</a> ................ <a name="Title:AliPHOSDigit">Digit in PHOS </a>
+<li><a name="AliPHOSEmcRecPoint" href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> .......... <a name="Title:AliPHOSEmcRecPoint">EMC RecPoint (cluster)</a>
+<li><a name="AliPHOSFastRecParticle" href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> ...... <a name="Title:AliPHOSFastRecParticle">Reconstructed Particle produced by the fast simulation </a>
+<li><a name="AliPHOSGeometry" href="./AliPHOSGeometry.html">AliPHOSGeometry</a> ............. <a name="Title:AliPHOSGeometry">PHOS geometry class </a>
+<li><a name="AliPHOSHit" href="./AliPHOSHit.html">AliPHOSHit</a> .................. <a name="Title:AliPHOSHit">Hit for PHOS</a>
+<li><a name="AliPHOSLink" href="./AliPHOSLink.html">AliPHOSLink</a> ................. <a name="Title:AliPHOSLink">Auxilliary algorithm class used by AliPHOSTrackSegmentMaker</a>
+<li><a name="AliPHOSPID" href="./AliPHOSPID.html">AliPHOSPID</a> .................. <a name="Title:AliPHOSPID">Particle Identifier algorithm (base class)</a>
+<li><a name="AliPHOSPIDv1" href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> ................ <a name="Title:AliPHOSPIDv1">Particle identifier implementation version 1</a>
+<li><a name="AliPHOSPpsdRecPoint" href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> ......... <a name="Title:AliPHOSPpsdRecPoint">PPSD RecPoint</a>
+<li><a name="AliPHOSReconstructioner" href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> ..... <a name="Title:AliPHOSReconstructioner">Reconstruction algorithm class (Base Class)</a>
+<li><a name="AliPHOSRecParticle" href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> .......... <a name="Title:AliPHOSRecParticle">Reconstructed Particle</a>
+<li><a name="AliPHOSRecPoint" href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> ............. <a name="Title:AliPHOSRecPoint">RecPoint for PHOS (Base Class)</a>
+<li><a name="AliPHOSTrackSegment" href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> ......... <a name="Title:AliPHOSTrackSegment">Track segment in PHOS</a>
+<li><a name="AliPHOSTrackSegmentMaker" href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> .... <a name="Title:AliPHOSTrackSegmentMaker">Algorithm class to make PHOS track segments (Base Class)</a>
+<li><a name="AliPHOSTrackSegmentMakerv1" href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a> .. <a name="Title:AliPHOSTrackSegmentMakerv1">Implementation version 1 of algorithm class to make PHOS track segments </a>
+<li><a name="AliPHOSv0" href="./AliPHOSv0.html">AliPHOSv0</a> ................... <a name="Title:AliPHOSv0">Implementation of PHOS manager class for layout EMC+PPSD</a>
+<li><a name="AliPHOSv1" href="./AliPHOSv1.html">AliPHOSv1</a> ................... <a name="Title:AliPHOSv1">Implementation of PHOS manager class for layout EMC+PPSD with light transport, MIPS in PIN and electronic noise</a>
+<li><a name="AliPHOSvFast" href="./AliPHOSvFast.html">AliPHOSvFast</a> ................ <a name="Title:AliPHOSvFast">Implementation of the PHOS manager class for fast simulations </a>
+<li>AliPIPE..................... <a name="Title:AliPIPE">Beam Pipe base Class</a>
+<li>AliPIPEv0................... <a name="Title:AliPIPEv0">Class for PIPE version 0</a>
+<li>AliPIPEv1................... <a name="Title:AliPIPEv1">Class for PIPE version 1</a>
+<li>AliPIPEv3................... <a name="Title:AliPIPEv3">Class for PIPE version 3</a>
+<li>AliPMD...................... <a name="Title:AliPMD">Base Class for Photon Multiplicity Detector</a>
+<li>AliPMDhit................... <a name="Title:AliPMDhit">Hits object for set:PMD</a>
+<li>AliPMDv0.................... <a name="Title:AliPMDv0">Hits manager for set:PMD</a>
+<li>AliPMDv1.................... <a name="Title:AliPMDv1">Hits manager for set:PMD</a>
+<li>AliPMDv2.................... <a name="Title:AliPMDv2">Hits manager for set:PMD</a>
+<li>AliPoints................... <a name="Title:AliPoints">Class to draw detector hits (is PolyMarker3D)</a>
+<li>AliPythia................... <a name="Title:AliPythia">ALICE UI to PYTHIA</a>
+<li>AliRecPoint................. <a name="Title:AliRecPoint"></a>
+<li>AliRICH..................... <a name="Title:AliRICH">Hits manager for set:RICH</a>
+<li>AliRICHCerenkov............. <a name="Title:AliRICHCerenkov">Cerenkovs object for set:RICH</a>
+<li>AliRICHchamber.............. <a name="Title:AliRICHchamber"></a>
+<li>AliRICHcluster.............. <a name="Title:AliRICHcluster">Cluster object for set:RICH</a>
+<li>AliRICHdigit................ <a name="Title:AliRICHdigit">Digits for set:RICH</a>
+<li>AliRICHdisplay.............. <a name="Title:AliRICHdisplay">Utility class to display RICH clusters...</a>
+<li>AliRICHhit.................. <a name="Title:AliRICHhit">Hits object for set:RICH</a>
+<li>AliRICHHitMap............... <a name="Title:AliRICHHitMap">virtual base class for muon HitMap</a>
+<li>AliRICHHitMapA1............. <a name="Title:AliRICHHitMapA1">Implements HitMap as a 2-dim array</a>
+<li>AliRICHlist................. <a name="Title:AliRICHlist">Digits for set:RICH</a>
+<li>AliRICHpoints............... <a name="Title:AliRICHpoints">Class to draw detector clusters (is PolyMarker3D)</a>
+<li>AliRICHRecCluster........... <a name="Title:AliRICHRecCluster">Cluster object for set:RICH</a>
+<li>AliRICHreccluster........... <a name="Title:AliRICHreccluster">Cluster object for set:RICH</a>
+<li>AliRICHresponse............. <a name="Title:AliRICHresponse"></a>
+<li>AliRICHresponseCkv.......... <a name="Title:AliRICHresponseCkv"></a>
+<li>AliRICHresponseV0........... <a name="Title:AliRICHresponseV0"></a>
+<li>AliRICHsegmentation......... <a name="Title:AliRICHsegmentation"></a>
+<li>AliRICHsegmentationV0....... <a name="Title:AliRICHsegmentationV0"></a>
+<li>AliRICHv0................... <a name="Title:AliRICHv0">Hits manager for set:RICH version 0</a>
+<li>AliRun...................... <a name="Title:AliRun">Supervisor class for all Alice detectors</a>
+<li>AliSHIL..................... <a name="Title:AliSHIL">Muon Shield Class</a>
+<li>AliSHILv0................... <a name="Title:AliSHILv0">Muon Shield Class (Open Geometry)</a>
+<li>AliSTART.................... <a name="Title:AliSTART">Class for the START detector</a>
+<li>AliSTARTdigit............... <a name="Title:AliSTARTdigit">Digit (Header) object for set:ITS</a>
+<li>AliSTARThit................. <a name="Title:AliSTARThit">Hits for detector START</a>
+<li>AliSTARTv0.................. <a name="Title:AliSTARTv0">Class for START version 0</a>
+<li>AliTOF...................... <a name="Title:AliTOF">Time Of Flight base class</a>
+<li>AliTOFhit................... <a name="Title:AliTOFhit">Hits for Time Of Flight</a>
+<li>AliTOFv0.................... <a name="Title:AliTOFv0">Time Of Flight version 0</a>
+<li>AliTOFv1.................... <a name="Title:AliTOFv1">Time Of Flight version 1</a>
+<li>AliTOFv2.................... <a name="Title:AliTOFv2">Time Of Flight version 2</a>
+<li>AliTOFv3.................... <a name="Title:AliTOFv3">Time Of Flight version 3</a>
+<li>AliTOFv4.................... <a name="Title:AliTOFv4">Time Of Flight version 4</a>
+<li>AliTOFv5.................... <a name="Title:AliTOFv5">Time Of Flight version 1</a>
+<li>AliTOFv6.................... <a name="Title:AliTOFv6">Time Of Flight version 6</a>
+<li>AliTPC...................... <a name="Title:AliTPC">Time Projection Chamber class</a>
+<li>AliTPCcluster............... <a name="Title:AliTPCcluster">Time Projection Chamber clusters</a>
+<li>AliTPCD..................... <a name="Title:AliTPCD"></a>
+<li>AliTPCdigit................. <a name="Title:AliTPCdigit">Time Projection Chamber digits</a>
+<li>AliTPChit................... <a name="Title:AliTPChit">Time Projection Chamber hits</a>
+<li>AliTPCParam................. <a name="Title:AliTPCParam">parameter object for set:TPC</a>
+<li>AliTPCPRF2D................. <a name="Title:AliTPCPRF2D"></a>
+<li>AliTPCRF1D.................. <a name="Title:AliTPCRF1D"></a>
+<li>AliTPCtrack................. <a name="Title:AliTPCtrack">Time Projection Chamber reconstructed tracks</a>
+<li>AliTPCv0.................... <a name="Title:AliTPCv0">Time Projection Chamber version 0 - coarse</a>
+<li>AliTPCv1.................... <a name="Title:AliTPCv1">Time Projection Chamber version 1</a>
+<li>AliTPCv2.................... <a name="Title:AliTPCv2">Time Projection Chamber version 2</a>
+<li>AliTPCv3.................... <a name="Title:AliTPCv3">Time Projection Chamber version 3</a>
+<li>AliTRD...................... <a name="Title:AliTRD">Transition Radiation Detector base class</a>
+<li>AliTRDarrayI................ <a name="Title:AliTRDarrayI"></a>
+<li>AliTRDcluster............... <a name="Title:AliTRDcluster">Cluster for Transition Radiation Detector</a>
+<li>AliTRDclusterizer........... <a name="Title:AliTRDclusterizer">TRD-Cluster manager base class</a>
+<li>AliTRDclusterizerV0......... <a name="Title:AliTRDclusterizerV0">TRD-Cluster manager, fast simulator</a>
+<li>AliTRDclusterizerV1......... <a name="Title:AliTRDclusterizerV1">TRD-Cluster manager, slow simulator</a>
+<li>AliTRDdataArray............. <a name="Title:AliTRDdataArray">Data container for one TRD detector segment</a>
+<li>AliTRDdigit................. <a name="Title:AliTRDdigit">Digits for Transition Radiation Detector</a>
+<li>AliTRDdigitizer............. <a name="Title:AliTRDdigitizer">TRD-Digits manager</a>
+<li>AliTRDgeometry.............. <a name="Title:AliTRDgeometry">TRD geometry base class</a>
+<li>AliTRDgeometryFull.......... <a name="Title:AliTRDgeometryFull">TRD geometry without hole</a>
+<li>AliTRDgeometryHole.......... <a name="Title:AliTRDgeometryHole">TRD geometry with hole</a>
+<li>AliTRDhit................... <a name="Title:AliTRDhit">Hits for Transition Radiation Detector</a>
+<li>AliTRDmatrix................ <a name="Title:AliTRDmatrix">The TRD detector matrix for one readout chamber</a>
+<li>AliTRDpixel................. <a name="Title:AliTRDpixel">Information for one detector pixel </a>
+<li>AliTRDrecPoint.............. <a name="Title:AliTRDrecPoint">Reconstructed point for the TRD</a>
+<li>AliTRDsegmentArray.......... <a name="Title:AliTRDsegmentArray">TRD detector segment array </a>
+<li>AliTRDsegmentArrayBase...... <a name="Title:AliTRDsegmentArrayBase"></a>
+<li>AliTRDsegmentID............. <a name="Title:AliTRDsegmentID"></a>
+<li>AliTRDv0.................... <a name="Title:AliTRDv0">Transition Radiation Detector version 0 (fast simulator)</a>
+<li>AliTRDv1.................... <a name="Title:AliTRDv1">Transition Radiation Detector version 1 (slow simulator)</a>
+<li>AliVMC...................... <a name="Title:AliVMC">Generic MonteCarlo Class</a>
+<li>AliZDC...................... <a name="Title:AliZDC">Zero Degree Calorimeter base class</a>
+<li>AliZDChit................... <a name="Title:AliZDChit">Hits for the Zero Degree Calorimeter</a>
+<li>AliZDCv1.................... <a name="Title:AliZDCv1">Zero Degree Calorimeter version 1</a>
+<li>TApplication................ <a name="Title:TApplication">GUI application singleton</a>
+<li>TApplicationImp............. <a name="Title:TApplicationImp">ABC describing application implementation protocol</a>
+<li>TArc........................ <a name="Title:TArc">Arc of a circle</a>
+<li>TArray...................... <a name="Title:TArray">Abstract array base class</a>
+<li>TArrayC..................... <a name="Title:TArrayC">Array of chars</a>
+<li>TArrayD..................... <a name="Title:TArrayD">Array of doubles</a>
+<li>TArrayF..................... <a name="Title:TArrayF">Array of floats</a>
+<li>TArrayI..................... <a name="Title:TArrayI">Array of ints</a>
+<li>TArrayL..................... <a name="Title:TArrayL">Array of longs</a>
+<li>TArrayS..................... <a name="Title:TArrayS">Array of shorts</a>
+<li>TArrow...................... <a name="Title:TArrow">one arrow ---></a>
+<li>TAtt3D...................... <a name="Title:TAtt3D">3D attributes</a>
+<li>TAttAxis.................... <a name="Title:TAttAxis">Axis attributes</a>
+<li>TAttCanvas.................. <a name="Title:TAttCanvas">Canvas attributes</a>
+<li>TAttFill.................... <a name="Title:TAttFill">Fill area attributes</a>
+<li>TAttFillCanvas.............. <a name="Title:TAttFillCanvas">A specialized dialog canvas to set fill attributes.</a>
+<li>TAttLine.................... <a name="Title:TAttLine">Line attributes</a>
+<li>TAttLineCanvas.............. <a name="Title:TAttLineCanvas">A specialized dialog canvas to set line attributes.</a>
+<li>TAttMarker.................. <a name="Title:TAttMarker">Marker attributes</a>
+<li>TAttMarkerCanvas............ <a name="Title:TAttMarkerCanvas">A specialized dialog canvas to set marker attributes.</a>
+<li>TAttPad..................... <a name="Title:TAttPad">Pad attributes</a>
+<li>TAttParticle................ <a name="Title:TAttParticle">Particle definition</a>
+<li>TAttText.................... <a name="Title:TAttText">Text attributes</a>
+<li>TAttTextCanvas.............. <a name="Title:TAttTextCanvas">A specialized dialog canvas to set text attributes.</a>
+<li>TAxis....................... <a name="Title:TAxis">Axis class</a>
+<li>TAxis3D..................... <a name="Title:TAxis3D">3-D ruler painting class</a>
+<li>TBaseClass.................. <a name="Title:TBaseClass">Description of a base class</a>
+<li>TBasket..................... <a name="Title:TBasket">the TBranch buffers</a>
+<li>TBenchmark.................. <a name="Title:TBenchmark">ROOT utility to help benchmarking applications</a>
+<li>TBox........................ <a name="Title:TBox">Box class</a>
+<li>TBranch..................... <a name="Title:TBranch">Branch descriptor</a>
+<li>TBranchClones............... <a name="Title:TBranchClones">Branch in case of an array of clone objects</a>
+<li>TBranchObject............... <a name="Title:TBranchObject">Branch in case of an object</a>
+<li>TBRIK....................... <a name="Title:TBRIK">TBRIK shape</a>
+<li>TBrowser.................... <a name="Title:TBrowser">ROOT Object Browser</a>
+<li>TBrowserImp................. <a name="Title:TBrowserImp">ABC describing browser implementation protocol</a>
+<li>TBtree...................... <a name="Title:TBtree">A B-tree</a>
+<li>TBtreeIter.................. <a name="Title:TBtreeIter">B-tree iterator</a>
+<li>TBuffer..................... <a name="Title:TBuffer">Buffer base class used for serializing objects</a>
+<li>TButton..................... <a name="Title:TButton">A user interface button.</a>
+<li>TCanvas..................... <a name="Title:TCanvas">Graphics canvas</a>
+<li>TCanvasImp.................. <a name="Title:TCanvasImp">ABC describing main window protocol</a>
+<li>TChain...................... <a name="Title:TChain">A chain of TTrees</a>
+<li>TChainElement............... <a name="Title:TChainElement">A chain element</a>
+<li>TCint....................... <a name="Title:TCint">Interface to CINT C/C++ interpreter</a>
+<li>TClass...................... <a name="Title:TClass">Dictionary containing class information</a>
+<li>TClassTable................. <a name="Title:TClassTable">Table of known classes</a>
+<li>TClassTree.................. <a name="Title:TClassTree">Manager class to draw classes inheritance tree and relations</a>
+<li>TClonesArray................ <a name="Title:TClonesArray">An array of clone objects</a>
+<li>TCollection................. <a name="Title:TCollection">Collection abstract base class</a>
+<li>TColor...................... <a name="Title:TColor">Color defined by RGB or HLS</a>
+<li>TCONE....................... <a name="Title:TCONE">CONE shape</a>
+<li>TCONS....................... <a name="Title:TCONS">CONS shape</a>
+<li>TContextMenu................ <a name="Title:TContextMenu">Context sensitive popup menu</a>
+<li>TContextMenuImp............. <a name="Title:TContextMenuImp">Context sensitive popup menu implementation</a>
+<li>TControlBar................. <a name="Title:TControlBar">Control bar</a>
+<li>TControlBarButton........... <a name="Title:TControlBarButton">The Control bar button</a>
+<li>TControlBarImp.............. <a name="Title:TControlBarImp">GUI independent controlbar abc</a>
+<li>TCTUB....................... <a name="Title:TCTUB">The Cut Tube shape</a>
+<li>TCurlyArc................... <a name="Title:TCurlyArc">a curly arc</a>
+<li>TCurlyLine.................. <a name="Title:TCurlyLine">A curly polyline</a>
+<li>TCut........................ <a name="Title:TCut">A specialized string object used for TTree selections</a>
+<li>TCutG....................... <a name="Title:TCutG">A Graphical cut.</a>
+<li>TDatabasePDG................ <a name="Title:TDatabasePDG">PDG particle database</a>
+<li>TDataMember................. <a name="Title:TDataMember">Dictionary for a class data member</a>
+<li>TDataType................... <a name="Title:TDataType">Basic data type descriptor</a>
+<li>TDatime..................... <a name="Title:TDatime">Date and time 950130 124559</a>
+<li>TDialogCanvas............... <a name="Title:TDialogCanvas">A specialized canvas to set attributes.</a>
+<li>TDiamond.................... <a name="Title:TDiamond">Diamond class</a>
+<li>TDictionary................. <a name="Title:TDictionary">ABC defining interface to dictionary</a>
+<li>TDirectory.................. <a name="Title:TDirectory">Describe directory structure in memory</a>
+<li>TDrawPanelHist.............. <a name="Title:TDrawPanelHist">Class used to control histogram drawing options</a>
+<li>TEllipse.................... <a name="Title:TEllipse">An ellipse</a>
+<li>TELTU....................... <a name="Title:TELTU">ELTU shape</a>
+<li>TEnv........................ <a name="Title:TEnv">Handle ROOT configuration resources</a>
+<li>TEventList.................. <a name="Title:TEventList">A list of selected entries in a TTree.</a>
+<li>TExec....................... <a name="Title:TExec">To execute a CINT command</a>
+<li>TExMap...................... <a name="Title:TExMap">Map with external hash</a>
+<li>TF1......................... <a name="Title:TF1">The Parametric 1-D function</a>
+<li>TF2......................... <a name="Title:TF2">The Parametric 2-D function</a>
+<li>TF3......................... <a name="Title:TF3">The Parametric 3-D function</a>
+<li>TFile....................... <a name="Title:TFile">ROOT file</a>
+<li>TFileHandler................ <a name="Title:TFileHandler">Handles events on file descriptors</a>
+<li>TFitPanel................... <a name="Title:TFitPanel">Class used to control histograms fit panel</a>
+<li>TFitPanelGraph.............. <a name="Title:TFitPanelGraph">Class used to control graphs fit panel</a>
+<li>TFitter..................... <a name="Title:TFitter">The ROOT standard fitter based on TMinuit</a>
+<li>TFormula.................... <a name="Title:TFormula">The formula base class f(x,y,z,par)</a>
+<li>TFrame...................... <a name="Title:TFrame">Pad graphics frame</a>
+<li>TFree....................... <a name="Title:TFree">Description of free segments on a file</a>
+<li>TFunction................... <a name="Title:TFunction">Dictionary for global function</a>
+<li>TGaxis...................... <a name="Title:TGaxis">Graphics axis</a>
+<li>TGButton.................... <a name="Title:TGButton">Button widget abstract base class</a>
+<li>TGCanvas.................... <a name="Title:TGCanvas">A canvas with two scrollbars and a viewport</a>
+<li>TGCheckButton............... <a name="Title:TGCheckButton">A check button widget</a>
+<li>TGClient.................... <a name="Title:TGClient">Class making connection to display server</a>
+<li>TGColumnLayout.............. <a name="Title:TGColumnLayout">Column layout manager</a>
+<li>TGComboBox.................. <a name="Title:TGComboBox">Combo box widget</a>
+<li>TGComboBoxPopup............. <a name="Title:TGComboBoxPopup">Combobox popup window</a>
+<li>TGCompositeFrame............ <a name="Title:TGCompositeFrame">Base class for composite widgets (menubars, etc.)</a>
+<li>TGDimension................. <a name="Title:TGDimension">Dimension object (width, height)</a>
+<li>TGDoubleHSlider............. <a name="Title:TGDoubleHSlider">Horizontal double slider widget</a>
+<li>TGDoubleSlider.............. <a name="Title:TGDoubleSlider">Double slider widget abstract base class</a>
+<li>TGDoubleVSlider............. <a name="Title:TGDoubleVSlider">Vertical double slider widget</a>
+<li>TGeant3..................... <a name="Title:TGeant3">C++ interface to Geant basic routines </a>
+<li>TGenerator.................. <a name="Title:TGenerator">Event generator interface abstract baseclass</a>
+<li>TGeometry................... <a name="Title:TGeometry">Structure for Matrices, Shapes and Nodes</a>
+<li>TGFileContainer............. <a name="Title:TGFileContainer">Container containing file system objects</a>
+<li>TGFileDialog................ <a name="Title:TGFileDialog">File selection dialog</a>
+<li>TGFrame..................... <a name="Title:TGFrame">Base class for simple widgets (button, etc.)</a>
+<li>TGGroupFrame................ <a name="Title:TGGroupFrame">A composite frame with border and title</a>
+<li>TGHorizontal3DLine.......... <a name="Title:TGHorizontal3DLine">A horizontal 3D separator line</a>
+<li>TGHorizontalFrame........... <a name="Title:TGHorizontalFrame">Composite frame with horizontal child layout</a>
+<li>TGHorizontalLayout.......... <a name="Title:TGHorizontalLayout">Horizontal layout manager</a>
+<li>TGHotString................. <a name="Title:TGHotString">Graphics string with hot character</a>
+<li>TGHScrollBar................ <a name="Title:TGHScrollBar">Horizontal scrollbar widget</a>
+<li>TGHSlider................... <a name="Title:TGHSlider">Horizontal slider widget</a>
+<li>TGIcon...................... <a name="Title:TGIcon">Icon GUI class</a>
+<li>TGLabel..................... <a name="Title:TGLabel">A label GUI element</a>
+<li>TGLayoutHints............... <a name="Title:TGLayoutHints">Class describing GUI layout hints</a>
+<li>TGLayoutManager............. <a name="Title:TGLayoutManager">Layout manager abstract base class</a>
+<li>TGLBContainer............... <a name="Title:TGLBContainer">Listbox container</a>
+<li>TGLBEntry................... <a name="Title:TGLBEntry">Basic listbox entry</a>
+<li>TGListBox................... <a name="Title:TGListBox">Listbox widget</a>
+<li>TGListDetailsLayout......... <a name="Title:TGListDetailsLayout">Layout manager for TGListView details</a>
+<li>TGListLayout................ <a name="Title:TGListLayout">Layout manager for TGListView widget</a>
+<li>TGListTree.................. <a name="Title:TGListTree">Show items in a tree structured list</a>
+<li>TGListTreeItem.............. <a name="Title:TGListTreeItem">Item that goes into a TGListTree container</a>
+<li>TGListView.................. <a name="Title:TGListView">List view widget (iconbox, small icons or tabular view)</a>
+<li>TGlobal..................... <a name="Title:TGlobal">Global variable class</a>
+<li>TGLVContainer............... <a name="Title:TGLVContainer">Listview container</a>
+<li>TGLVEntry................... <a name="Title:TGLVEntry">Item that goes into a TGListView container</a>
+<li>TGMainFrame................. <a name="Title:TGMainFrame">Top level window frame</a>
+<li>TGMatrixLayout.............. <a name="Title:TGMatrixLayout">Matrix layout manager</a>
+<li>TGMenuBar................... <a name="Title:TGMenuBar">Menu bar class</a>
+<li>TGMenuTitle................. <a name="Title:TGMenuTitle">Menu title class</a>
+<li>TGMimeTypes................. <a name="Title:TGMimeTypes">Pool of mime type objects</a>
+<li>TGMsgBox.................... <a name="Title:TGMsgBox">A message dialog box</a>
+<li>TGObject.................... <a name="Title:TGObject">ROOT GUI base class</a>
+<li>TGPicture................... <a name="Title:TGPicture">Pictures and icons used by the GUI classes</a>
+<li>TGPictureButton............. <a name="Title:TGPictureButton">A picture button widget</a>
+<li>TGPicturePool............... <a name="Title:TGPicturePool">Picture and icon cache</a>
+<li>TGPopupMenu................. <a name="Title:TGPopupMenu">Popup menu</a>
+<li>TGPosition.................. <a name="Title:TGPosition">Position object (x and y)</a>
+<li>TGRadioButton............... <a name="Title:TGRadioButton">A radio button widget</a>
+<li>TGraph...................... <a name="Title:TGraph">Graph graphics class</a>
+<li>TGraphAsymmErrors........... <a name="Title:TGraphAsymmErrors">a Graph with asymmetric error bars</a>
+<li>TGraphErrors................ <a name="Title:TGraphErrors">a Graph with error bars</a>
+<li>TGroupButton................ <a name="Title:TGroupButton">A user interface button in a group of buttons.</a>
+<li>TGRowLayout................. <a name="Title:TGRowLayout">Row layout manager</a>
+<li>TGScrollBar................. <a name="Title:TGScrollBar">Scrollbar widget</a>
+<li>TGScrollBarElement.......... <a name="Title:TGScrollBarElement">Scrollbar element (head, tail, slider)</a>
+<li>TGSelectedPicture........... <a name="Title:TGSelectedPicture">Selected looking picture</a>
+<li>TGSlider.................... <a name="Title:TGSlider">Slider widget abstract base class</a>
+<li>TGStatusBar................. <a name="Title:TGStatusBar">Status bar widget</a>
+<li>TGString.................... <a name="Title:TGString">Graphics string</a>
+<li>TGTab....................... <a name="Title:TGTab">Tab widget</a>
+<li>TGTabElement................ <a name="Title:TGTabElement">Little tab on tab widget</a>
+<li>TGTabLayout................. <a name="Title:TGTabLayout">Layout manager for TGTab widget</a>
+<li>TGText...................... <a name="Title:TGText">Text used by TGTextEdit</a>
+<li>TGTextBuffer................ <a name="Title:TGTextBuffer">Text buffer used by widgets like TGTextEntry, etc.</a>
+<li>TGTextButton................ <a name="Title:TGTextButton">A text button widget</a>
+<li>TGTextEntry................. <a name="Title:TGTextEntry">The TGTextEntry widget is a simple line editor for inputting text</a>
+<li>TGTextFrame................. <a name="Title:TGTextFrame">Frame containing (multi-line) text</a>
+<li>TGTextLBEntry............... <a name="Title:TGTextLBEntry">Text listbox entry</a>
+<li>TGTextView.................. <a name="Title:TGTextView">Text view widget (contains a text frame and vertical scrollbar)</a>
+<li>TGTileLayout................ <a name="Title:TGTileLayout">Tile layout manager</a>
+<li>TGToolBar................... <a name="Title:TGToolBar">A bar containing picture buttons</a>
+<li>TGToolTip................... <a name="Title:TGToolTip">One line help text</a>
+<li>TGTRA....................... <a name="Title:TGTRA">GTRA shape</a>
+<li>TGTransientFrame............ <a name="Title:TGTransientFrame">Frame for dialog (transient) windows</a>
+<li>TGuiFactory................. <a name="Title:TGuiFactory">Abstract factory for GUI components</a>
+<li>TGVerticalFrame............. <a name="Title:TGVerticalFrame">Composite frame with vertical child layout</a>
+<li>TGVerticalLayout............ <a name="Title:TGVerticalLayout">Vertical layout manager</a>
+<li>TGViewPort.................. <a name="Title:TGViewPort">Viewport through which to look at a frame</a>
+<li>TGVScrollBar................ <a name="Title:TGVScrollBar">Vertical scrollbar widget</a>
+<li>TGVSlider................... <a name="Title:TGVSlider">Vertical slider widget</a>
+<li>TGWidget.................... <a name="Title:TGWidget">Widget base class</a>
+<li>TGWindow.................... <a name="Title:TGWindow">GUI Window base class</a>
+<li>TGX11....................... <a name="Title:TGX11">Interface to X11</a>
+<li>TH1......................... <a name="Title:TH1">1-Dim histogram base class</a>
+<li>TH1C........................ <a name="Title:TH1C">1-Dim histograms (one char per channel)</a>
+<li>TH1D........................ <a name="Title:TH1D">1-Dim histograms (one double per channel)</a>
+<li>TH1F........................ <a name="Title:TH1F">1-Dim histograms (one float per channel)</a>
+<li>TH1S........................ <a name="Title:TH1S">1-Dim histograms (one short per channel)</a>
+<li>TH2......................... <a name="Title:TH2">2-Dim histogram base class</a>
+<li>TH2C........................ <a name="Title:TH2C">2-Dim histograms (one char per channel)</a>
+<li>TH2D........................ <a name="Title:TH2D">2-Dim histograms (one double per channel)</a>
+<li>TH2F........................ <a name="Title:TH2F">2-Dim histograms (one float per channel)</a>
+<li>TH2S........................ <a name="Title:TH2S">2-Dim histograms (one short per channel)</a>
+<li>TH3......................... <a name="Title:TH3">3-Dim histogram base class</a>
+<li>TH3C........................ <a name="Title:TH3C">3-Dim histograms (one char per channel)</a>
+<li>TH3D........................ <a name="Title:TH3D">3-Dim histograms (one double per channel)</a>
+<li>TH3F........................ <a name="Title:TH3F">3-Dim histograms (one float per channel)</a>
+<li>TH3S........................ <a name="Title:TH3S">3-Dim histograms (one short per channel)</a>
+<li>THashList................... <a name="Title:THashList">Doubly linked list with hashtable for lookup</a>
+<li>THashTable.................. <a name="Title:THashTable">A hash table</a>
+<li>THashTableIter.............. <a name="Title:THashTableIter">Hash table iterator</a>
+<li>THelix...................... <a name="Title:THelix">A Helix drawn as a PolyLine3D</a>
+<li>THIGZ....................... <a name="Title:THIGZ">Emulation of HIGZ for Root</a>
+<li>THtml....................... <a name="Title:THtml">Convert class(es) into HTML file(s)</a>
+<li>THYPE....................... <a name="Title:THYPE">HYPE shape</a>
+<li>TInetAddress................ <a name="Title:TInetAddress">Represents an Internet Protocol (IP) address</a>
+<li>TInspectCanvas.............. <a name="Title:TInspectCanvas">The canvas Inspector</a>
+<li>TInterpreter................ <a name="Title:TInterpreter">ABC defining interface to generic interpreter</a>
+<li>TIter....................... <a name="Title:TIter">Iterator wrapper</a>
+<li>TIterator................... <a name="Title:TIterator">Iterator abstract base class</a>
+<li>TKey........................ <a name="Title:TKey">Header description of a logical record on file</a>
+<li>TKeyMapFile................. <a name="Title:TKeyMapFile">Utility class for browsing TMapFile objects.</a>
+<li>TLatex...................... <a name="Title:TLatex">The Latex-style text processor class</a>
+<li>TLazyMatrix................. <a name="Title:TLazyMatrix">Lazy matrix</a>
+<li>TLeaf....................... <a name="Title:TLeaf">Leaf: description of a Branch data type</a>
+<li>TLeafB...................... <a name="Title:TLeafB">A TLeaf for an 8 bit Integer data type.</a>
+<li>TLeafC...................... <a name="Title:TLeafC">A TLeaf for a variable length string.</a>
+<li>TLeafD...................... <a name="Title:TLeafD">A TLeaf for a 64 bit floating point data type.</a>
+<li>TLeafF...................... <a name="Title:TLeafF">A TLeaf for a 32 bit floating point data type.</a>
+<li>TLeafI...................... <a name="Title:TLeafI">A TLeaf for an Integer data type.</a>
+<li>TLeafObject................. <a name="Title:TLeafObject">A TLeaf for a general object derived from TObject.</a>
+<li>TLeafS...................... <a name="Title:TLeafS">A TLeaf for a 16 bit Integer data type.</a>
+<li>TLegend..................... <a name="Title:TLegend">Legend of markers/lines/boxes to represent obj's</a>
+<li>TLegendEntry................ <a name="Title:TLegendEntry">Storage class for one entry of a TLegend</a>
+<li>TLine....................... <a name="Title:TLine">A line segment</a>
+<li>TLink....................... <a name="Title:TLink">Link: hypertext link to an object</a>
+<li>TList....................... <a name="Title:TList">Doubly linked list</a>
+<li>TListIter................... <a name="Title:TListIter">Linked list iterator</a>
+<li>TLorentzRotation............ <a name="Title:TLorentzRotation">Lorentz transformations including boosts and rotations</a>
+<li>TLorentzVector.............. <a name="Title:TLorentzVector">A four vector with (-,-,-,+) metric</a>
+<li>TMap........................ <a name="Title:TMap">A map</a>
+<li>TMapFile.................... <a name="Title:TMapFile">Memory mapped directory structure</a>
+<li>TMapIter.................... <a name="Title:TMapIter">Map iterator</a>
+<li>TMarker..................... <a name="Title:TMarker">Marker</a>
+<li>TMarker3DBox................ <a name="Title:TMarker3DBox">a special 3-D marker designed for event display</a>
+<li>TMaterial................... <a name="Title:TMaterial">Materials used in the Geometry Shapes</a>
+<li>TMath....................... <a name="Title:TMath">Interface to math routines</a>
+<li>TMatrix..................... <a name="Title:TMatrix">Matrix class</a>
+<li>TMatrixColumn............... <a name="Title:TMatrixColumn">One column of a matrix</a>
+<li>TMatrixDiag................. <a name="Title:TMatrixDiag">Diagonal of a matrix</a>
+<li>TMatrixRow.................. <a name="Title:TMatrixRow">One row of a matrix</a>
+<li>TMCParticle................. <a name="Title:TMCParticle">LUJETS particles data record.</a>
+<li>TMemberInspector............ <a name="Title:TMemberInspector">ABC for inspecting class data members</a>
+<li>TMessage.................... <a name="Title:TMessage">Message buffer class</a>
+<li>TMessageHandler............. <a name="Title:TMessageHandler">Generic message handler</a>
+<li>TMethod..................... <a name="Title:TMethod">Dictionary for a class member function (method)</a>
+<li>TMethodArg.................. <a name="Title:TMethodArg">Dictionary for a method argument</a>
+<li>TMethodCall................. <a name="Title:TMethodCall">Method calling interface</a>
+<li>TMinuit..................... <a name="Title:TMinuit">The MINUIT minimisation package</a>
+<li>TMixture.................... <a name="Title:TMixture">Mixtures used in the Geometry Shapes</a>
+<li>TMonitor.................... <a name="Title:TMonitor">Monitor activity on a set of TSocket objects</a>
+<li>TNamed...................... <a name="Title:TNamed">The basis for a named object (name, title)</a>
+<li>TNetFile.................... <a name="Title:TNetFile">A ROOT file that reads/writes via a rootd server</a>
+<li>TNode....................... <a name="Title:TNode">Description of parameters to position a 3-D geometry object</a>
+<li>TNodeDiv.................... <a name="Title:TNodeDiv">Description of parameters to divide a 3-D geometry object</a>
+<li>TNtuple..................... <a name="Title:TNtuple">A simple tree with only one branch of floats.</a>
+<li>TObjArray................... <a name="Title:TObjArray">An array of objects</a>
+<li>TObjArrayIter............... <a name="Title:TObjArrayIter">Object array iterator</a>
+<li>TObject..................... <a name="Title:TObject">Basic ROOT object</a>
+<li>TObjectTable................ <a name="Title:TObjectTable">Table of active objects</a>
+<li>TObjString.................. <a name="Title:TObjString">Collectable string class</a>
+<li>TOrdCollection.............. <a name="Title:TOrdCollection">An ordered collection</a>
+<li>TOrdCollectionIter.......... <a name="Title:TOrdCollectionIter">Ordered collection iterator</a>
+<li>TPad........................ <a name="Title:TPad">A Graphics pad</a>
+<li>TPARA....................... <a name="Title:TPARA">PARA shape</a>
+<li>TParticle................... <a name="Title:TParticle">TParticle vertex particle information</a>
+<li>TParticlePDG................ <a name="Title:TParticlePDG">PDG static particle definition</a>
+<li>TPave....................... <a name="Title:TPave">Pave. A box with shadowing</a>
+<li>TPaveClass.................. <a name="Title:TPaveClass">A TPaveLabel specialized for TClassTree objects</a>
+<li>TPaveLabel.................. <a name="Title:TPaveLabel">PaveLabel. A Pave with a label</a>
+<li>TPaveStats.................. <a name="Title:TPaveStats">a special TPaveText to draw histogram statistics.</a>
+<li>TPavesText.................. <a name="Title:TPavesText">Stacked Paves with text strings</a>
+<li>TPaveText................... <a name="Title:TPaveText">PaveText. A Pave with several lines of text.</a>
+<li>TPaveTree................... <a name="Title:TPaveTree">A TPaveLabel specialized for Geant GDTREE</a>
+<li>TPCON....................... <a name="Title:TPCON">PCON shape</a>
+<li>TPGON....................... <a name="Title:TPGON">PGON shape</a>
+<li>TPoints..................... <a name="Title:TPoints">2-D graphics point</a>
+<li>TPoints3DABC................ <a name="Title:TPoints3DABC">A 3-D Points</a>
+<li>TPolyLine................... <a name="Title:TPolyLine">A PolyLine</a>
+<li>TPolyLine3D................. <a name="Title:TPolyLine3D">A 3-D PolyLine</a>
+<li>TPolyMarker................. <a name="Title:TPolyMarker">An array of points with the same marker</a>
+<li>TPolyMarker3D............... <a name="Title:TPolyMarker3D">An array of 3-D points with the same marker</a>
+<li>TPostScript................. <a name="Title:TPostScript">PostScript driver</a>
+<li>TPrimary.................... <a name="Title:TPrimary">TPrimary vertex particle information</a>
+<li>TProcessEventTimer.......... <a name="Title:TProcessEventTimer">Process pending events at fixed time intervals</a>
+<li>TProfile.................... <a name="Title:TProfile">Profile histogram class</a>
+<li>TPythia..................... <a name="Title:TPythia">Interface to Pythia Event Generator</a>
+<li>TRandom..................... <a name="Title:TRandom">Random number generators</a>
+<li>TRandom2.................... <a name="Title:TRandom2">Random number generators with periodicity > 10**14</a>
+<li>TRandom3.................... <a name="Title:TRandom3">Random number generator: Mersenne Twistor</a>
+<li>TRealData................... <a name="Title:TRealData">Description of persistent data members</a>
+<li>TRegexp..................... <a name="Title:TRegexp">Regular expression class</a>
+<li>TRint....................... <a name="Title:TRint">ROOT Interactive Application Interface</a>
+<li>TROOT....................... <a name="Title:TROOT">Top level (or root) structure for all classes</a>
+<li>TRootApplication............ <a name="Title:TRootApplication">ROOT native GUI application environment</a>
+<li>TRootBrowser................ <a name="Title:TRootBrowser">ROOT native GUI version of browser</a>
+<li>TRootCanvas................. <a name="Title:TRootCanvas">ROOT native GUI version of main window with menubar and drawing area</a>
+<li>TRootContextMenu............ <a name="Title:TRootContextMenu">ROOT native GUI context sensitive popup menu</a>
+<li>TRootControlBar............. <a name="Title:TRootControlBar">ROOT native GUI implementation of TControlBar</a>
+<li>TRootDialog................. <a name="Title:TRootDialog">Native GUI method argument prompt dialog box</a>
+<li>TRootEmbeddedCanvas......... <a name="Title:TRootEmbeddedCanvas">A ROOT TCanvas that can be embedded in a TGFrame</a>
+<li>TRootGuiFactory............. <a name="Title:TRootGuiFactory">Factory for ROOT GUI components</a>
+<li>TRootHelpDialog............. <a name="Title:TRootHelpDialog">Dialog to display help text</a>
+<li>TRotation................... <a name="Title:TRotation">Rotations of TVector3 objects</a>
+<li>TRotMatrix.................. <a name="Title:TRotMatrix">Rotation Matrix for 3-D geometry objects</a>
+<li>TSeqCollection.............. <a name="Title:TSeqCollection">Sequenceable collection ABC</a>
+<li>TServerSocket............... <a name="Title:TServerSocket">This class implements server sockets</a>
+<li>TShape...................... <a name="Title:TShape">Basic shape</a>
+<li>TSignalHandler.............. <a name="Title:TSignalHandler">Signal event handler</a>
+<li>TSlider..................... <a name="Title:TSlider">A user interface slider.</a>
+<li>TSliderBox.................. <a name="Title:TSliderBox">The moving box of a TSlider</a>
+<li>TSocket..................... <a name="Title:TSocket">This class implements client sockets</a>
+<li>TSortedList................. <a name="Title:TSortedList">A sorted list</a>
+<li>TSpectrum................... <a name="Title:TSpectrum">Peak Finder, background estimator, Deconvolution</a>
+<li>TSPHE....................... <a name="Title:TSPHE">SPHE shape</a>
+<li>TSQLResult.................. <a name="Title:TSQLResult">SQL query result</a>
+<li>TSQLRow..................... <a name="Title:TSQLRow">One row of an SQL query result</a>
+<li>TSQLServer.................. <a name="Title:TSQLServer">Connection to SQL server</a>
+<li>TStopwatch.................. <a name="Title:TStopwatch">A stopwatch which times real and cpu time</a>
+<li>TStorage.................... <a name="Title:TStorage">Storage manager class</a>
+<li>TString..................... <a name="Title:TString">Basic string class</a>
+<li>TStringLong................. <a name="Title:TStringLong">Long string class (more than 255 chars)</a>
+<li>TStyle...................... <a name="Title:TStyle">A collection of all graphics attributes</a>
+<li>TSysEvtHandler.............. <a name="Title:TSysEvtHandler">ABC for handling system events</a>
+<li>TSystem..................... <a name="Title:TSystem">ABC defining a generic interface to the OS</a>
+<li>TSystemDirectory............ <a name="Title:TSystemDirectory">A system directory</a>
+<li>TSystemFile................. <a name="Title:TSystemFile">A system file</a>
+<li>TTabCom..................... <a name="Title:TTabCom">Perform comand line completion when hitting <TAB></a>
+<li>TText....................... <a name="Title:TText">Text</a>
+<li>TTime....................... <a name="Title:TTime">Basic time type with milli second precision</a>
+<li>TTimer...................... <a name="Title:TTimer">Handle timer event</a>
+<li>TToggle..................... <a name="Title:TToggle">Facility for toggling datamembers on/off</a>
+<li>TToggleGroup................ <a name="Title:TToggleGroup">Group of contex-menu toggle objects</a>
+<li>TTRAP....................... <a name="Title:TTRAP">TRAP shape</a>
+<li>TTRD1....................... <a name="Title:TTRD1">TRD1 shape</a>
+<li>TTRD2....................... <a name="Title:TTRD2">TRD2 shape</a>
+<li>TTree....................... <a name="Title:TTree">Tree descriptor (the main ROOT I/O class)</a>
+<li>TTreeResult................. <a name="Title:TTreeResult">TTree query result</a>
+<li>TTreeRow.................... <a name="Title:TTreeRow">One row of an TTree query result</a>
+<li>TTUBE....................... <a name="Title:TTUBE">TUBE shape</a>
+<li>TTUBS....................... <a name="Title:TTUBS">TUBS shape</a>
+<li>TUnixSystem................. <a name="Title:TUnixSystem">Interface to Unix OS services</a>
+<li>TUrl........................ <a name="Title:TUrl">Represents an URL</a>
+<li>TVector..................... <a name="Title:TVector">Vector class</a>
+<li>TVector2.................... <a name="Title:TVector2">a two dim physics vector</a>
+<li>TVector3.................... <a name="Title:TVector3">A three vector</a>
+<li>TView....................... <a name="Title:TView">3-D View</a>
+<li>TVirtualFitter.............. <a name="Title:TVirtualFitter">Abstract interface for fitting</a>
+<li>TVirtualHistPainter......... <a name="Title:TVirtualHistPainter">Abstract interface for histogram painters</a>
+<li>TVirtualPad................. <a name="Title:TVirtualPad">Abstract base class for Pads and Canvases</a>
+<li>TVirtualPS.................. <a name="Title:TVirtualPS">Abstract interface to a PostScript driver</a>
+<li>TVirtualTreePlayer.......... <a name="Title:TVirtualTreePlayer">Abstract interface for Tree players</a>
+<li>TVirtualX................... <a name="Title:TVirtualX">ABC defining a generic interface to graphics system</a>
+<li>TWbox....................... <a name="Title:TWbox">A window box (box with 3-D effects)</a>
+<li>TWebFile.................... <a name="Title:TWebFile">A ROOT file that reads via a http server</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TAttParticle............... <a name="Title:TAttParticle">Particle definition</a>
+<li>TDatabasePDG............... <a name="Title:TDatabasePDG">PDG particle database</a>
+<li>TGenerator................. <a name="Title:TGenerator">Event generator interface abstract baseclass</a>
+<li>TParticle.................. <a name="Title:TParticle">TParticle vertex particle information</a>
+<li>TParticlePDG............... <a name="Title:TParticlePDG">PDG static particle definition</a>
+<li>TPrimary................... <a name="Title:TPrimary">TPrimary vertex particle information</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TAxis3D.................... <a name="Title:TAxis3D">3-D ruler painting class</a>
+<li>TBRIK...................... <a name="Title:TBRIK">TBRIK shape</a>
+<li>TCONE...................... <a name="Title:TCONE">CONE shape</a>
+<li>TCONS...................... <a name="Title:TCONS">CONS shape</a>
+<li>TCTUB...................... <a name="Title:TCTUB">The Cut Tube shape</a>
+<li>TELTU...................... <a name="Title:TELTU">ELTU shape</a>
+<li>TGeometry.................. <a name="Title:TGeometry">Structure for Matrices, Shapes and Nodes</a>
+<li>TGTRA...................... <a name="Title:TGTRA">GTRA shape</a>
+<li>THelix..................... <a name="Title:THelix">A Helix drawn as a PolyLine3D</a>
+<li>THYPE...................... <a name="Title:THYPE">HYPE shape</a>
+<li>TMarker3DBox............... <a name="Title:TMarker3DBox">a special 3-D marker designed for event display</a>
+<li>TMaterial.................. <a name="Title:TMaterial">Materials used in the Geometry Shapes</a>
+<li>TMixture................... <a name="Title:TMixture">Mixtures used in the Geometry Shapes</a>
+<li>TNode...................... <a name="Title:TNode">Description of parameters to position a 3-D geometry object</a>
+<li>TNodeDiv................... <a name="Title:TNodeDiv">Description of parameters to divide a 3-D geometry object</a>
+<li>TPARA...................... <a name="Title:TPARA">PARA shape</a>
+<li>TPCON...................... <a name="Title:TPCON">PCON shape</a>
+<li>TPGON...................... <a name="Title:TPGON">PGON shape</a>
+<li>TPoints3DABC............... <a name="Title:TPoints3DABC">A 3-D Points</a>
+<li>TPolyLine3D................ <a name="Title:TPolyLine3D">A 3-D PolyLine</a>
+<li>TPolyMarker3D.............. <a name="Title:TPolyMarker3D">An array of 3-D points with the same marker</a>
+<li>TRotMatrix................. <a name="Title:TRotMatrix">Rotation Matrix for 3-D geometry objects</a>
+<li>TShape..................... <a name="Title:TShape">Basic shape</a>
+<li>TSPHE...................... <a name="Title:TSPHE">SPHE shape</a>
+<li>TTRAP...................... <a name="Title:TTRAP">TRAP shape</a>
+<li>TTRD1...................... <a name="Title:TTRD1">TRD1 shape</a>
+<li>TTRD2...................... <a name="Title:TTRD2">TRD2 shape</a>
+<li>TTUBE...................... <a name="Title:TTUBE">TUBE shape</a>
+<li>TTUBS...................... <a name="Title:TTUBS">TUBS shape</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TAttCanvas................. <a name="Title:TAttCanvas">Canvas attributes</a>
+<li>TAttFillCanvas............. <a name="Title:TAttFillCanvas">A specialized dialog canvas to set fill attributes.</a>
+<li>TAttLineCanvas............. <a name="Title:TAttLineCanvas">A specialized dialog canvas to set line attributes.</a>
+<li>TAttMarkerCanvas........... <a name="Title:TAttMarkerCanvas">A specialized dialog canvas to set marker attributes.</a>
+<li>TAttTextCanvas............. <a name="Title:TAttTextCanvas">A specialized dialog canvas to set text attributes.</a>
+<li>TButton.................... <a name="Title:TButton">A user interface button.</a>
+<li>TCanvas.................... <a name="Title:TCanvas">Graphics canvas</a>
+<li>TClassTree................. <a name="Title:TClassTree">Manager class to draw classes inheritance tree and relations</a>
+<li>TControlBar................ <a name="Title:TControlBar">Control bar</a>
+<li>TControlBarButton.......... <a name="Title:TControlBarButton">The Control bar button</a>
+<li>TDialogCanvas.............. <a name="Title:TDialogCanvas">A specialized canvas to set attributes.</a>
+<li>TDrawPanelHist............. <a name="Title:TDrawPanelHist">Class used to control histogram drawing options</a>
+<li>TFitPanel.................. <a name="Title:TFitPanel">Class used to control histograms fit panel</a>
+<li>TFitPanelGraph............. <a name="Title:TFitPanelGraph">Class used to control graphs fit panel</a>
+<li>TGroupButton............... <a name="Title:TGroupButton">A user interface button in a group of buttons.</a>
+<li>TInspectCanvas............. <a name="Title:TInspectCanvas">The canvas Inspector</a>
+<li>TPad....................... <a name="Title:TPad">A Graphics pad</a>
+<li>TPaveClass................. <a name="Title:TPaveClass">A TPaveLabel specialized for TClassTree objects</a>
+<li>TSlider.................... <a name="Title:TSlider">A user interface slider.</a>
+<li>TSliderBox................. <a name="Title:TSliderBox">The moving box of a TSlider</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TGButton................... <a name="Title:TGButton">Button widget abstract base class</a>
+<li>TGCanvas................... <a name="Title:TGCanvas">A canvas with two scrollbars and a viewport</a>
+<li>TGCheckButton.............. <a name="Title:TGCheckButton">A check button widget</a>
+<li>TGClient................... <a name="Title:TGClient">Class making connection to display server</a>
+<li>TGColumnLayout............. <a name="Title:TGColumnLayout">Column layout manager</a>
+<li>TGComboBox................. <a name="Title:TGComboBox">Combo box widget</a>
+<li>TGComboBoxPopup............ <a name="Title:TGComboBoxPopup">Combobox popup window</a>
+<li>TGCompositeFrame........... <a name="Title:TGCompositeFrame">Base class for composite widgets (menubars, etc.)</a>
+<li>TGDimension................ <a name="Title:TGDimension">Dimension object (width, height)</a>
+<li>TGDoubleHSlider............ <a name="Title:TGDoubleHSlider">Horizontal double slider widget</a>
+<li>TGDoubleSlider............. <a name="Title:TGDoubleSlider">Double slider widget abstract base class</a>
+<li>TGDoubleVSlider............ <a name="Title:TGDoubleVSlider">Vertical double slider widget</a>
+<li>TGFileContainer............ <a name="Title:TGFileContainer">Container containing file system objects</a>
+<li>TGFileDialog............... <a name="Title:TGFileDialog">File selection dialog</a>
+<li>TGFrame.................... <a name="Title:TGFrame">Base class for simple widgets (button, etc.)</a>
+<li>TGGroupFrame............... <a name="Title:TGGroupFrame">A composite frame with border and title</a>
+<li>TGHorizontal3DLine......... <a name="Title:TGHorizontal3DLine">A horizontal 3D separator line</a>
+<li>TGHorizontalFrame.......... <a name="Title:TGHorizontalFrame">Composite frame with horizontal child layout</a>
+<li>TGHorizontalLayout......... <a name="Title:TGHorizontalLayout">Horizontal layout manager</a>
+<li>TGHotString................ <a name="Title:TGHotString">Graphics string with hot character</a>
+<li>TGHScrollBar............... <a name="Title:TGHScrollBar">Horizontal scrollbar widget</a>
+<li>TGHSlider.................. <a name="Title:TGHSlider">Horizontal slider widget</a>
+<li>TGIcon..................... <a name="Title:TGIcon">Icon GUI class</a>
+<li>TGLabel.................... <a name="Title:TGLabel">A label GUI element</a>
+<li>TGLayoutHints.............. <a name="Title:TGLayoutHints">Class describing GUI layout hints</a>
+<li>TGLayoutManager............ <a name="Title:TGLayoutManager">Layout manager abstract base class</a>
+<li>TGLBContainer.............. <a name="Title:TGLBContainer">Listbox container</a>
+<li>TGLBEntry.................. <a name="Title:TGLBEntry">Basic listbox entry</a>
+<li>TGListBox.................. <a name="Title:TGListBox">Listbox widget</a>
+<li>TGListDetailsLayout........ <a name="Title:TGListDetailsLayout">Layout manager for TGListView details</a>
+<li>TGListLayout............... <a name="Title:TGListLayout">Layout manager for TGListView widget</a>
+<li>TGListTree................. <a name="Title:TGListTree">Show items in a tree structured list</a>
+<li>TGListTreeItem............. <a name="Title:TGListTreeItem">Item that goes into a TGListTree container</a>
+<li>TGListView................. <a name="Title:TGListView">List view widget (iconbox, small icons or tabular view)</a>
+<li>TGLVContainer.............. <a name="Title:TGLVContainer">Listview container</a>
+<li>TGLVEntry.................. <a name="Title:TGLVEntry">Item that goes into a TGListView container</a>
+<li>TGMainFrame................ <a name="Title:TGMainFrame">Top level window frame</a>
+<li>TGMatrixLayout............. <a name="Title:TGMatrixLayout">Matrix layout manager</a>
+<li>TGMenuBar.................. <a name="Title:TGMenuBar">Menu bar class</a>
+<li>TGMenuTitle................ <a name="Title:TGMenuTitle">Menu title class</a>
+<li>TGMimeTypes................ <a name="Title:TGMimeTypes">Pool of mime type objects</a>
+<li>TGMsgBox................... <a name="Title:TGMsgBox">A message dialog box</a>
+<li>TGObject................... <a name="Title:TGObject">ROOT GUI base class</a>
+<li>TGPicture.................. <a name="Title:TGPicture">Pictures and icons used by the GUI classes</a>
+<li>TGPictureButton............ <a name="Title:TGPictureButton">A picture button widget</a>
+<li>TGPicturePool.............. <a name="Title:TGPicturePool">Picture and icon cache</a>
+<li>TGPopupMenu................ <a name="Title:TGPopupMenu">Popup menu</a>
+<li>TGPosition................. <a name="Title:TGPosition">Position object (x and y)</a>
+<li>TGRadioButton.............. <a name="Title:TGRadioButton">A radio button widget</a>
+<li>TGRowLayout................ <a name="Title:TGRowLayout">Row layout manager</a>
+<li>TGScrollBar................ <a name="Title:TGScrollBar">Scrollbar widget</a>
+<li>TGScrollBarElement......... <a name="Title:TGScrollBarElement">Scrollbar element (head, tail, slider)</a>
+<li>TGSelectedPicture.......... <a name="Title:TGSelectedPicture">Selected looking picture</a>
+<li>TGSlider................... <a name="Title:TGSlider">Slider widget abstract base class</a>
+<li>TGStatusBar................ <a name="Title:TGStatusBar">Status bar widget</a>
+<li>TGString................... <a name="Title:TGString">Graphics string</a>
+<li>TGTab...................... <a name="Title:TGTab">Tab widget</a>
+<li>TGTabElement............... <a name="Title:TGTabElement">Little tab on tab widget</a>
+<li>TGTabLayout................ <a name="Title:TGTabLayout">Layout manager for TGTab widget</a>
+<li>TGText..................... <a name="Title:TGText">Text used by TGTextEdit</a>
+<li>TGTextBuffer............... <a name="Title:TGTextBuffer">Text buffer used by widgets like TGTextEntry, etc.</a>
+<li>TGTextButton............... <a name="Title:TGTextButton">A text button widget</a>
+<li>TGTextEntry................ <a name="Title:TGTextEntry">The TGTextEntry widget is a simple line editor for inputting text</a>
+<li>TGTextFrame................ <a name="Title:TGTextFrame">Frame containing (multi-line) text</a>
+<li>TGTextLBEntry.............. <a name="Title:TGTextLBEntry">Text listbox entry</a>
+<li>TGTextView................. <a name="Title:TGTextView">Text view widget (contains a text frame and vertical scrollbar)</a>
+<li>TGTileLayout............... <a name="Title:TGTileLayout">Tile layout manager</a>
+<li>TGToolBar.................. <a name="Title:TGToolBar">A bar containing picture buttons</a>
+<li>TGToolTip.................. <a name="Title:TGToolTip">One line help text</a>
+<li>TGTransientFrame........... <a name="Title:TGTransientFrame">Frame for dialog (transient) windows</a>
+<li>TGVerticalFrame............ <a name="Title:TGVerticalFrame">Composite frame with vertical child layout</a>
+<li>TGVerticalLayout........... <a name="Title:TGVerticalLayout">Vertical layout manager</a>
+<li>TGViewPort................. <a name="Title:TGViewPort">Viewport through which to look at a frame</a>
+<li>TGVScrollBar............... <a name="Title:TGVScrollBar">Vertical scrollbar widget</a>
+<li>TGVSlider.................. <a name="Title:TGVSlider">Vertical slider widget</a>
+<li>TGWidget................... <a name="Title:TGWidget">Widget base class</a>
+<li>TGWindow................... <a name="Title:TGWindow">GUI Window base class</a>
+<li>TRootApplication........... <a name="Title:TRootApplication">ROOT native GUI application environment</a>
+<li>TRootBrowser............... <a name="Title:TRootBrowser">ROOT native GUI version of browser</a>
+<li>TRootCanvas................ <a name="Title:TRootCanvas">ROOT native GUI version of main window with menubar and drawing area</a>
+<li>TRootContextMenu........... <a name="Title:TRootContextMenu">ROOT native GUI context sensitive popup menu</a>
+<li>TRootControlBar............ <a name="Title:TRootControlBar">ROOT native GUI implementation of TControlBar</a>
+<li>TRootDialog................ <a name="Title:TRootDialog">Native GUI method argument prompt dialog box</a>
+<li>TRootEmbeddedCanvas........ <a name="Title:TRootEmbeddedCanvas">A ROOT TCanvas that can be embedded in a TGFrame</a>
+<li>TRootGuiFactory............ <a name="Title:TRootGuiFactory">Factory for ROOT GUI components</a>
+<li>TRootHelpDialog............ <a name="Title:TRootHelpDialog">Dialog to display help text</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TArc....................... <a name="Title:TArc">Arc of a circle</a>
+<li>TArrow..................... <a name="Title:TArrow">one arrow ---></a>
+<li>TBox....................... <a name="Title:TBox">Box class</a>
+<li>TCurlyArc.................. <a name="Title:TCurlyArc">a curly arc</a>
+<li>TCurlyLine................. <a name="Title:TCurlyLine">A curly polyline</a>
+<li>TCutG...................... <a name="Title:TCutG">A Graphical cut.</a>
+<li>TDiamond................... <a name="Title:TDiamond">Diamond class</a>
+<li>TEllipse................... <a name="Title:TEllipse">An ellipse</a>
+<li>TFrame..................... <a name="Title:TFrame">Pad graphics frame</a>
+<li>TGaxis..................... <a name="Title:TGaxis">Graphics axis</a>
+<li>TGraph..................... <a name="Title:TGraph">Graph graphics class</a>
+<li>TGraphAsymmErrors.......... <a name="Title:TGraphAsymmErrors">a Graph with asymmetric error bars</a>
+<li>TGraphErrors............... <a name="Title:TGraphErrors">a Graph with error bars</a>
+<li>TLatex..................... <a name="Title:TLatex">The Latex-style text processor class</a>
+<li>TLegend.................... <a name="Title:TLegend">Legend of markers/lines/boxes to represent obj's</a>
+<li>TLegendEntry............... <a name="Title:TLegendEntry">Storage class for one entry of a TLegend</a>
+<li>TLine...................... <a name="Title:TLine">A line segment</a>
+<li>TLink...................... <a name="Title:TLink">Link: hypertext link to an object</a>
+<li>TMarker.................... <a name="Title:TMarker">Marker</a>
+<li>TPave...................... <a name="Title:TPave">Pave. A box with shadowing</a>
+<li>TPaveLabel................. <a name="Title:TPaveLabel">PaveLabel. A Pave with a label</a>
+<li>TPaveStats................. <a name="Title:TPaveStats">a special TPaveText to draw histogram statistics.</a>
+<li>TPavesText................. <a name="Title:TPavesText">Stacked Paves with text strings</a>
+<li>TPaveText.................. <a name="Title:TPaveText">PaveText. A Pave with several lines of text.</a>
+<li>TPoints.................... <a name="Title:TPoints">2-D graphics point</a>
+<li>TPolyLine.................. <a name="Title:TPolyLine">A PolyLine</a>
+<li>TText...................... <a name="Title:TText">Text</a>
+<li>TWbox...................... <a name="Title:TWbox">A window box (box with 3-D effects)</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>THtml...................... <a name="Title:THtml">Convert class(es) into HTML file(s)</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TAxis...................... <a name="Title:TAxis">Axis class</a>
+<li>TF1........................ <a name="Title:TF1">The Parametric 1-D function</a>
+<li>TF2........................ <a name="Title:TF2">The Parametric 2-D function</a>
+<li>TF3........................ <a name="Title:TF3">The Parametric 3-D function</a>
+<li>TFormula................... <a name="Title:TFormula">The formula base class f(x,y,z,par)</a>
+<li>TH1........................ <a name="Title:TH1">1-Dim histogram base class</a>
+<li>TH1C....................... <a name="Title:TH1C">1-Dim histograms (one char per channel)</a>
+<li>TH1D....................... <a name="Title:TH1D">1-Dim histograms (one double per channel)</a>
+<li>TH1F....................... <a name="Title:TH1F">1-Dim histograms (one float per channel)</a>
+<li>TH1S....................... <a name="Title:TH1S">1-Dim histograms (one short per channel)</a>
+<li>TH2........................ <a name="Title:TH2">2-Dim histogram base class</a>
+<li>TH2C....................... <a name="Title:TH2C">2-Dim histograms (one char per channel)</a>
+<li>TH2D....................... <a name="Title:TH2D">2-Dim histograms (one double per channel)</a>
+<li>TH2F....................... <a name="Title:TH2F">2-Dim histograms (one float per channel)</a>
+<li>TH2S....................... <a name="Title:TH2S">2-Dim histograms (one short per channel)</a>
+<li>TH3........................ <a name="Title:TH3">3-Dim histogram base class</a>
+<li>TH3C....................... <a name="Title:TH3C">3-Dim histograms (one char per channel)</a>
+<li>TH3D....................... <a name="Title:TH3D">3-Dim histograms (one double per channel)</a>
+<li>TH3F....................... <a name="Title:TH3F">3-Dim histograms (one float per channel)</a>
+<li>TH3S....................... <a name="Title:TH3S">3-Dim histograms (one short per channel)</a>
+<li>TPolyMarker................ <a name="Title:TPolyMarker">An array of points with the same marker</a>
+<li>TProfile................... <a name="Title:TProfile">Profile histogram class</a>
+<li>TSpectrum.................. <a name="Title:TSpectrum">Peak Finder, background estimator, Deconvolution</a>
+<li>TVirtualHistPainter........ <a name="Title:TVirtualHistPainter">Abstract interface for histogram painters</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:26 2000 -->
+<!-- -->
+<head>
+<title>List of data types</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2> List of data types </h2><hr>
+<dl><dd>
+<pre>
+<b><a name="char">char</a></b> ............... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="unsigned char">unsigned char</a></b> ...... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="short">short</a></b> .............. <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="unsigned short">unsigned short</a></b> ..... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="int">int</a></b> ................ <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="unsigned int">unsigned int</a></b> ....... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="long">long</a></b> ............... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="unsigned long">unsigned long</a></b> ...... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="float">float</a></b> .............. <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="double">double</a></b> ............. <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="void">void</a></b> ............... <a name="Title:Builtin basic type">Builtin basic type</a>
+<b><a name="Char_t">Char_t</a></b> ............. <a name="Title:Signed Character 1 byte">Signed Character 1 byte</a>
+<b><a name="UChar_t">UChar_t</a></b> ............ <a name="Title:Unsigned Character 1 byte">Unsigned Character 1 byte</a>
+<b><a name="Short_t">Short_t</a></b> ............ <a name="Title:Signed Short integer 2 bytes">Signed Short integer 2 bytes</a>
+<b><a name="UShort_t">UShort_t</a></b> ........... <a name="Title:Unsigned Short integer 2 bytes">Unsigned Short integer 2 bytes</a>
+<b><a name="Int_t">Int_t</a></b> .............. <a name="Title:Signed integer 4 bytes">Signed integer 4 bytes</a>
+<b><a name="UInt_t">UInt_t</a></b> ............. <a name="Title:Unsigned integer 4 bytes">Unsigned integer 4 bytes</a>
+<b><a name="Seek_t">Seek_t</a></b> ............. <a name="Title:File pointer">File pointer</a>
+<b><a name="Long_t">Long_t</a></b> ............. <a name="Title:Signed long integer 8 bytes">Signed long integer 8 bytes</a>
+<b><a name="ULong_t">ULong_t</a></b> ............ <a name="Title:Unsigned long integer 8 bytes">Unsigned long integer 8 bytes</a>
+<b><a name="Float_t">Float_t</a></b> ............ <a name="Title:Float 4 bytes">Float 4 bytes</a>
+<b><a name="Double_t">Double_t</a></b> ........... <a name="Title:Float 8 bytes">Float 8 bytes</a>
+<b><a name="Text_t">Text_t</a></b> ............. <a name="Title:General string">General string</a>
+<b><a name="Bool_t">Bool_t</a></b> ............. <a name="Title:Boolean (0=false, 1=true)">Boolean (0=false, 1=true)</a>
+<b><a name="Byte_t">Byte_t</a></b> ............. <a name="Title:Byte (8 bits)">Byte (8 bits)</a>
+<b><a name="Version_t">Version_t</a></b> .......... <a name="Title:Class version identifier">Class version identifier</a>
+<b><a name="Option_t">Option_t</a></b> ........... <a name="Title:Option string">Option string</a>
+<b><a name="Ssiz_t">Ssiz_t</a></b> ............. <a name="Title:String size">String size</a>
+<b><a name="Real_t">Real_t</a></b> ............. <a name="Title:TVector and TMatrix element type">TVector and TMatrix element type</a>
+<b><a name="VoidFuncPtr_t">VoidFuncPtr_t</a></b> ...... <a name="Title:pointer to void function">pointer to void function</a>
+<b><a name="Axis_t">Axis_t</a></b> ............. <a name="Title:Axis values type">Axis values type</a>
+<b><a name="Stat_t">Stat_t</a></b> ............. <a name="Title:Statistics type">Statistics type</a>
+<b><a name="Font_t">Font_t</a></b> ............. <a name="Title:Font number">Font number</a>
+<b><a name="Style_t">Style_t</a></b> ............ <a name="Title:Style number">Style number</a>
+<b><a name="Marker_t">Marker_t</a></b> ........... <a name="Title:Marker number">Marker number</a>
+<b><a name="Width_t">Width_t</a></b> ............ <a name="Title:Line width">Line width</a>
+<b><a name="Color_t">Color_t</a></b> ............ <a name="Title:Color number">Color number</a>
+<b><a name="SCoord_t">SCoord_t</a></b> ........... <a name="Title:Screen coordinates">Screen coordinates</a>
+<b><a name="Coord_t">Coord_t</a></b> ............ <a name="Title:Pad world coordinates">Pad world coordinates</a>
+<b><a name="Angle_t">Angle_t</a></b> ............ <a name="Title:Graphics angle">Graphics angle</a>
+<b><a name="Size_t">Size_t</a></b> ............. <a name="Title:Attribute size">Attribute size</a>
+<b><a name="ErrorHandlerFunc_t">ErrorHandlerFunc_t</a></b> . <a name="Title:Statistics type">Statistics type</a>
+<b><a name="Handle_t">Handle_t</a></b> ........... <a name="Title:Generic resource handle">Generic resource handle</a>
+<b><a name="Display_t">Display_t</a></b> .......... <a name="Title:Display handle">Display handle</a>
+<b><a name="Window_t">Window_t</a></b> ........... <a name="Title:Window handle">Window handle</a>
+<b><a name="Pixmap_t">Pixmap_t</a></b> ........... <a name="Title:Pixmap handle">Pixmap handle</a>
+<b><a name="Drawable_t">Drawable_t</a></b> ......... <a name="Title:Drawable handle">Drawable handle</a>
+<b><a name="Colormap_t">Colormap_t</a></b> ......... <a name="Title:Colormap handle">Colormap handle</a>
+<b><a name="Cursor_t">Cursor_t</a></b> ........... <a name="Title:Cursor handle">Cursor handle</a>
+<b><a name="FontH_t">FontH_t</a></b> ............ <a name="Title:Font handle (as opposed to Font_t which is an index)">Font handle (as opposed to Font_t which is an index)</a>
+<b><a name="KeySym_t">KeySym_t</a></b> ........... <a name="Title:Key symbol handle">Key symbol handle</a>
+<b><a name="Atom_t">Atom_t</a></b> ............. <a name="Title:WM token">WM token</a>
+<b><a name="GContext_t">GContext_t</a></b> ......... <a name="Title:Graphics context handle (or pointer, needs to be long)">Graphics context handle (or pointer, needs to be long)</a>
+<b><a name="FontStruct_t">FontStruct_t</a></b> ....... <a name="Title:Pointer to font structure">Pointer to font structure</a>
+<b><a name="Mask_t">Mask_t</a></b> ............. <a name="Title:Structure mask type">Structure mask type</a>
+<b><a name="Time_t">Time_t</a></b> ............. <a name="Title:Statistics type">Statistics type</a>
+<b><a name="TSeqCol">TSeqCol</a></b> ............ <a name="Title:Attribute size">Attribute size</a>
+<b><a name="SigHandler_t">SigHandler_t</a></b> ....... <a name="Title:Statistics type">Statistics type</a>
+<b><a name="Erwork_t">Erwork_t</a></b> ........... <a name="Title:Attribute size">Attribute size</a>
+</pre>
+</dl>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:26 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TLazyMatrix................ <a name="Title:TLazyMatrix">Lazy matrix</a>
+<li>TMatrix.................... <a name="Title:TMatrix">Matrix class</a>
+<li>TMatrixColumn.............. <a name="Title:TMatrixColumn">One column of a matrix</a>
+<li>TMatrixDiag................ <a name="Title:TMatrixDiag">Diagonal of a matrix</a>
+<li>TMatrixRow................. <a name="Title:TMatrixRow">One row of a matrix</a>
+<li>TVector.................... <a name="Title:TVector">Vector class</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TBaseClass................. <a name="Title:TBaseClass">Description of a base class</a>
+<li>TCint...................... <a name="Title:TCint">Interface to CINT C/C++ interpreter</a>
+<li>TClass..................... <a name="Title:TClass">Dictionary containing class information</a>
+<li>TDataMember................ <a name="Title:TDataMember">Dictionary for a class data member</a>
+<li>TDataType.................. <a name="Title:TDataType">Basic data type descriptor</a>
+<li>TDictionary................ <a name="Title:TDictionary">ABC defining interface to dictionary</a>
+<li>TFunction.................. <a name="Title:TFunction">Dictionary for global function</a>
+<li>TGlobal.................... <a name="Title:TGlobal">Global variable class</a>
+<li>TInterpreter............... <a name="Title:TInterpreter">ABC defining interface to generic interpreter</a>
+<li>TMethod.................... <a name="Title:TMethod">Dictionary for a class member function (method)</a>
+<li>TMethodArg................. <a name="Title:TMethodArg">Dictionary for a method argument</a>
+<li>TMethodCall................ <a name="Title:TMethodCall">Method calling interface</a>
+<li>TToggle.................... <a name="Title:TToggle">Facility for toggling datamembers on/off</a>
+<li>TToggleGroup............... <a name="Title:TToggleGroup">Group of contex-menu toggle objects</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TFitter.................... <a name="Title:TFitter">The ROOT standard fitter based on TMinuit</a>
+<li>TMinuit.................... <a name="Title:TMinuit">The MINUIT minimisation package</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TInetAddress............... <a name="Title:TInetAddress">Represents an Internet Protocol (IP) address</a>
+<li>TMessage................... <a name="Title:TMessage">Message buffer class</a>
+<li>TMonitor................... <a name="Title:TMonitor">Monitor activity on a set of TSocket objects</a>
+<li>TNetFile................... <a name="Title:TNetFile">A ROOT file that reads/writes via a rootd server</a>
+<li>TServerSocket.............. <a name="Title:TServerSocket">This class implements server sockets</a>
+<li>TSocket.................... <a name="Title:TSocket">This class implements client sockets</a>
+<li>TSQLResult................. <a name="Title:TSQLResult">SQL query result</a>
+<li>TSQLRow.................... <a name="Title:TSQLRow">One row of an SQL query result</a>
+<li>TSQLServer................. <a name="Title:TSQLServer">Connection to SQL server</a>
+<li>TUrl....................... <a name="Title:TUrl">Represents an URL</a>
+<li>TWebFile................... <a name="Title:TWebFile">A ROOT file that reads via a http server</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TLorentzRotation........... <a name="Title:TLorentzRotation">Lorentz transformations including boosts and rotations</a>
+<li>TLorentzVector............. <a name="Title:TLorentzVector">A four vector with (-,-,-,+) metric</a>
+<li>TRotation.................. <a name="Title:TRotation">Rotations of TVector3 objects</a>
+<li>TVector2................... <a name="Title:TVector2">a two dim physics vector</a>
+<li>TVector3................... <a name="Title:TVector3">A three vector</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TPostScript................ <a name="Title:TPostScript">PostScript driver</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TMCParticle................ <a name="Title:TMCParticle">LUJETS particles data record.</a>
+<li>TPythia.................... <a name="Title:TPythia">Interface to Pythia Event Generator</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TRint...................... <a name="Title:TRint">ROOT Interactive Application Interface</a>
+<li>TTabCom.................... <a name="Title:TTabCom">Perform comand line completion when hitting <TAB></a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TBasket.................... <a name="Title:TBasket">the TBranch buffers</a>
+<li>TBranch.................... <a name="Title:TBranch">Branch descriptor</a>
+<li>TBranchClones.............. <a name="Title:TBranchClones">Branch in case of an array of clone objects</a>
+<li>TBranchObject.............. <a name="Title:TBranchObject">Branch in case of an object</a>
+<li>TChain..................... <a name="Title:TChain">A chain of TTrees</a>
+<li>TChainElement.............. <a name="Title:TChainElement">A chain element</a>
+<li>TCut....................... <a name="Title:TCut">A specialized string object used for TTree selections</a>
+<li>TEventList................. <a name="Title:TEventList">A list of selected entries in a TTree.</a>
+<li>TLeaf...................... <a name="Title:TLeaf">Leaf: description of a Branch data type</a>
+<li>TLeafB..................... <a name="Title:TLeafB">A TLeaf for an 8 bit Integer data type.</a>
+<li>TLeafC..................... <a name="Title:TLeafC">A TLeaf for a variable length string.</a>
+<li>TLeafD..................... <a name="Title:TLeafD">A TLeaf for a 64 bit floating point data type.</a>
+<li>TLeafF..................... <a name="Title:TLeafF">A TLeaf for a 32 bit floating point data type.</a>
+<li>TLeafI..................... <a name="Title:TLeafI">A TLeaf for an Integer data type.</a>
+<li>TLeafObject................ <a name="Title:TLeafObject">A TLeaf for a general object derived from TObject.</a>
+<li>TLeafS..................... <a name="Title:TLeafS">A TLeaf for a 16 bit Integer data type.</a>
+<li>TNtuple.................... <a name="Title:TNtuple">A simple tree with only one branch of floats.</a>
+<li>TTree...................... <a name="Title:TTree">Tree descriptor (the main ROOT I/O class)</a>
+<li>TTreeResult................ <a name="Title:TTreeResult">TTree query result</a>
+<li>TTreeRow................... <a name="Title:TTreeRow">One row of an TTree query result</a>
+<li>TVirtualTreePlayer......... <a name="Title:TVirtualTreePlayer">Abstract interface for Tree players</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TUnixSystem................ <a name="Title:TUnixSystem">Interface to Unix OS services</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>AliABSO.................... <a name="Title:AliABSO">Muon Absorber Class</a>
+<li>AliABSOv0.................. <a name="Title:AliABSOv0">Muon Absorber Class</a>
+<li>AliBODY.................... <a name="Title:AliBODY">Class manager for the ALICE body</a>
+<li>AliCASTOR.................. <a name="Title:AliCASTOR">CASTOR detector class</a>
+<li>AliCASTORhit............... <a name="Title:AliCASTORhit">Hits for CASTOR</a>
+<li>AliCASTORv1................ <a name="Title:AliCASTORv1">Class for CASTOR version 1</a>
+<li>AliDetector................ <a name="Title:AliDetector">Base class for ALICE detectors</a>
+<li>AliDigit................... <a name="Title:AliDigit">Base class for all Alice digits</a>
+<li>AliDigitNew................ <a name="Title:AliDigitNew">Base class for all Alice digits</a>
+<li>AliDimuCombinator.......... <a name="Title:AliDimuCombinator">Dimuon Combinator</a>
+<li>AliDIPO.................... <a name="Title:AliDIPO">Class for the dipole magnet</a>
+<li>AliDIPOv1.................. <a name="Title:AliDIPOv1">Class for the Magnetic Dipole version 1</a>
+<li>AliDIPOv2.................. <a name="Title:AliDIPOv2">Class manager for magnetic dipole version 2</a>
+<li>AliDisplay................. <a name="Title:AliDisplay">Utility class to display ALICE outline, tracks, hits,..</a>
+<li>AliDrawVolume.............. <a name="Title:AliDrawVolume">Volume Object for Drawing </a>
+<li>AliFMD..................... <a name="Title:AliFMD">Class for the FMD detector</a>
+<li>AliFMDhit.................. <a name="Title:AliFMDhit">Hits for detector FMD</a>
+<li>AliFMDv0................... <a name="Title:AliFMDv0">Class for FMD version 0</a>
+<li>AliFMDv1................... <a name="Title:AliFMDv1">Class for FMD version 1</a>
+<li>AliFRAME................... <a name="Title:AliFRAME">Class for Space Frame</a>
+<li>AliFRAMEv0................. <a name="Title:AliFRAMEv0">Class for FRAME version 0</a>
+<li>AliFRAMEv1................. <a name="Title:AliFRAMEv1">Class for FRAME version 0</a>
+<li>AliGeant3.................. <a name="Title:AliGeant3">Generic MonteCarlo Class</a>
+<li>AliGeant3GeometryGUI....... <a name="Title:AliGeant3GeometryGUI">GUI for Geant3 geometry visualisation</a>
+<li>AliGenBox.................. <a name="Title:AliGenBox">Square box random generator</a>
+<li>AliGenCocktail............. <a name="Title:AliGenCocktail"></a>
+<li>AliGenCocktailEntry........ <a name="Title:AliGenCocktailEntry"></a>
+<li>AliGenDoubleScan........... <a name="Title:AliGenDoubleScan">Generation of particles on a grid </a>
+<li>AliGenerator............... <a name="Title:AliGenerator"></a>
+<li>AliGenExtFile.............. <a name="Title:AliGenExtFile">Boundary source</a>
+<li>AliGenFixed................ <a name="Title:AliGenFixed">Single particle generator</a>
+<li>AliGenFLUKAsource.......... <a name="Title:AliGenFLUKAsource">Boundary source</a>
+<li>AliGenHalo................. <a name="Title:AliGenHalo"></a>
+<li>AliGenHIJINGpara........... <a name="Title:AliGenHIJINGpara">Hijing parametrisation generator</a>
+<li>AliGenMUONlib.............. <a name="Title:AliGenMUONlib"></a>
+<li>AliGenParam................ <a name="Title:AliGenParam">Generator using parameterised pt- and y-distribution</a>
+<li>AliGenPHOSlib.............. <a name="Title:AliGenPHOSlib"></a>
+<li>AliGenPythia............... <a name="Title:AliGenPythia"></a>
+<li>AliGenScan................. <a name="Title:AliGenScan">Boundary source</a>
+<li>AliGeometry................ <a name="Title:AliGeometry">description , version 1</a>
+<li>AliGuiGeomMain............. <a name="Title:AliGuiGeomMain">MainFrame for Geometry Browser</a>
+<li>AliGUIMaterial............. <a name="Title:AliGUIMaterial">Material Object for GUI </a>
+<li>AliGUIMedium............... <a name="Title:AliGUIMedium">Tracking Medium Object for GUI </a>
+<li>AliHALL.................... <a name="Title:AliHALL">Class for ALICE experimental hall</a>
+<li>AliHeader.................. <a name="Title:AliHeader">Alice event header</a>
+<li>AliHit..................... <a name="Title:AliHit">Base class for all Alice hits</a>
+<li>AliITS..................... <a name="Title:AliITS"></a>
+<li>AliITSdigit................ <a name="Title:AliITSdigit">Digit (Header) object for set:ITS</a>
+<li>AliITSdigitSSD............. <a name="Title:AliITSdigitSSD"></a>
+<li>AliITSgeom................. <a name="Title:AliITSgeom"></a>
+<li>AliITSgeomSDD.............. <a name="Title:AliITSgeomSDD"></a>
+<li>AliITSgeomSPD.............. <a name="Title:AliITSgeomSPD"></a>
+<li>AliITSgeomSSD.............. <a name="Title:AliITSgeomSSD"></a>
+<li>AliITShit.................. <a name="Title:AliITShit">Hits object for set:ITS</a>
+<li>AliITSmodule............... <a name="Title:AliITSmodule"></a>
+<li>AliITSmoduleSDD............ <a name="Title:AliITSmoduleSDD"></a>
+<li>AliITSmoduleSPD............ <a name="Title:AliITSmoduleSPD"></a>
+<li>AliITSmoduleSSD............ <a name="Title:AliITSmoduleSSD"></a>
+<li>AliITSv1................... <a name="Title:AliITSv1">Hits manager for set:ITS version 1</a>
+<li>AliITSv3................... <a name="Title:AliITSv3">Hits manager for set:ITS version 3</a>
+<li>AliITSv5................... <a name="Title:AliITSv5">Hits manager for ITS version 5</a>
+<li>AliLego.................... <a name="Title:AliLego">Utility class to compute and draw Radiation Length Map</a>
+<li>AliLegoGenerator........... <a name="Title:AliLegoGenerator">Lego generator</a>
+<li>AliMAG..................... <a name="Title:AliMAG">Class manager for detector:MAG</a>
+<li>AliMagF.................... <a name="Title:AliMagF">Base class for all Alice MagField</a>
+<li>AliMagFC................... <a name="Title:AliMagFC">Class for all Alice Constant MagField </a>
+<li>AliMagFCM.................. <a name="Title:AliMagFCM">Class for all Alice MagField with Constant Mesh</a>
+<li>AliMC...................... <a name="Title:AliMC">Geometry Interface Class</a>
+<li>AliModule.................. <a name="Title:AliModule">Base class for ALICE Modules</a>
+<li>AliMUON.................... <a name="Title:AliMUON">Hits manager for set:MUON</a>
+<li>AliMUONchamber............. <a name="Title:AliMUONchamber"></a>
+<li>AliMUONcluster............. <a name="Title:AliMUONcluster">Cluster object for set:MUON</a>
+<li>AliMUONClusterFinder....... <a name="Title:AliMUONClusterFinder">Class for clustering and reconstruction of space points</a>
+<li>AliMUONClusterFinderv0..... <a name="Title:AliMUONClusterFinderv0">Class for clustering and reconstruction of space points</a>
+<li>AliMUONcorrelation......... <a name="Title:AliMUONcorrelation">Cathode correlation object for set:MUON</a>
+<li>AliMUONdigit............... <a name="Title:AliMUONdigit">Digits for set:MUON</a>
+<li>AliMUONdisplay............. <a name="Title:AliMUONdisplay">Utility class to display MUON clusters...</a>
+<li>AliMUONhit................. <a name="Title:AliMUONhit">Hits object for set:MUON</a>
+<li>AliMUONHitMap.............. <a name="Title:AliMUONHitMap">virtual base class for muon HitMap</a>
+<li>AliMUONHitMapA1............ <a name="Title:AliMUONHitMapA1">Implements HitMap as a 2-dim array</a>
+<li>AliMUONlist................ <a name="Title:AliMUONlist">Digits for set:MUON</a>
+<li>AliMUONpoints.............. <a name="Title:AliMUONpoints">Class to draw detector clusters (is PolyMarker3D)</a>
+<li>AliMUONRawCluster.......... <a name="Title:AliMUONRawCluster">Cluster object for set:MUON</a>
+<li>AliMUONreccluster.......... <a name="Title:AliMUONreccluster">Cluster object for set:MUON</a>
+<li>AliMUONresponse............ <a name="Title:AliMUONresponse">Implementation of Mathieson CPC response </a>
+<li>AliMUONresponseV0.......... <a name="Title:AliMUONresponseV0"></a>
+<li>AliMUONsegmentation........ <a name="Title:AliMUONsegmentation">Segmentation class for homogeneous segmentation</a>
+<li>AliMUONsegmentationV0...... <a name="Title:AliMUONsegmentationV0"></a>
+<li>AliMUONsegmentationV01..... <a name="Title:AliMUONsegmentationV01"></a>
+<li>AliMUONsegmentationV02..... <a name="Title:AliMUONsegmentationV02">Muon chamber segmentation version 02</a>
+<li>AliMUONsegmentationV04..... <a name="Title:AliMUONsegmentationV04"></a>
+<li>AliMUONsegmentationV05..... <a name="Title:AliMUONsegmentationV05"></a>
+<li>AliMUONsegmentationV1...... <a name="Title:AliMUONsegmentationV1"></a>
+<li>AliMUONTUBE................ <a name="Title:AliMUONTUBE"></a>
+<li>AliMUONv0.................. <a name="Title:AliMUONv0">Hits manager for set:MUON version 0</a>
+<li><a name="AliPHOS" href="./AliPHOS.html">AliPHOS</a> .................... <a name="Title:AliPHOS">Photon Spectrometer Detector (base class)</a>
+<li><a name="AliPHOSAnalyze" href="./AliPHOSAnalyze.html">AliPHOSAnalyze</a> ............. <a name="Title:AliPHOSAnalyze">PHOSv0 event analyzis algorithm</a>
+<li><a name="AliPHOSClusterizer" href="./AliPHOSClusterizer.html">AliPHOSClusterizer</a> ......... <a name="Title:AliPHOSClusterizer">Clusterization algorithm class (abstract base class)</a>
+<li><a name="AliPHOSClusterizerv1" href="./AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a> ....... <a name="Title:AliPHOSClusterizerv1">Clusterizer implementation version 1</a>
+<li><a name="AliPHOSDigit" href="./AliPHOSDigit.html">AliPHOSDigit</a> ............... <a name="Title:AliPHOSDigit">Digit in PHOS </a>
+<li><a name="AliPHOSEmcRecPoint" href="./AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> ......... <a name="Title:AliPHOSEmcRecPoint">EMC RecPoint (cluster)</a>
+<li><a name="AliPHOSFastRecParticle" href="./AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> ..... <a name="Title:AliPHOSFastRecParticle">Reconstructed Particle produced by the fast simulation </a>
+<li><a name="AliPHOSGeometry" href="./AliPHOSGeometry.html">AliPHOSGeometry</a> ............ <a name="Title:AliPHOSGeometry">PHOS geometry class </a>
+<li><a name="AliPHOSHit" href="./AliPHOSHit.html">AliPHOSHit</a> ................. <a name="Title:AliPHOSHit">Hit for PHOS</a>
+<li><a name="AliPHOSLink" href="./AliPHOSLink.html">AliPHOSLink</a> ................ <a name="Title:AliPHOSLink">Auxilliary algorithm class used by AliPHOSTrackSegmentMaker</a>
+<li><a name="AliPHOSPID" href="./AliPHOSPID.html">AliPHOSPID</a> ................. <a name="Title:AliPHOSPID">Particle Identifier algorithm (base class)</a>
+<li><a name="AliPHOSPIDv1" href="./AliPHOSPIDv1.html">AliPHOSPIDv1</a> ............... <a name="Title:AliPHOSPIDv1">Particle identifier implementation version 1</a>
+<li><a name="AliPHOSPpsdRecPoint" href="./AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> ........ <a name="Title:AliPHOSPpsdRecPoint">PPSD RecPoint</a>
+<li><a name="AliPHOSReconstructioner" href="./AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> .... <a name="Title:AliPHOSReconstructioner">Reconstruction algorithm class (Base Class)</a>
+<li><a name="AliPHOSRecParticle" href="./AliPHOSRecParticle.html">AliPHOSRecParticle</a> ......... <a name="Title:AliPHOSRecParticle">Reconstructed Particle</a>
+<li><a name="AliPHOSRecPoint" href="./AliPHOSRecPoint.html">AliPHOSRecPoint</a> ............ <a name="Title:AliPHOSRecPoint">RecPoint for PHOS (Base Class)</a>
+<li><a name="AliPHOSTrackSegment" href="./AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> ........ <a name="Title:AliPHOSTrackSegment">Track segment in PHOS</a>
+<li><a name="AliPHOSTrackSegmentMaker" href="./AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> ... <a name="Title:AliPHOSTrackSegmentMaker">Algorithm class to make PHOS track segments (Base Class)</a>
+<li><a name="AliPHOSTrackSegmentMakerv1" href="./AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a> . <a name="Title:AliPHOSTrackSegmentMakerv1">Implementation version 1 of algorithm class to make PHOS track segments </a>
+<li><a name="AliPHOSv0" href="./AliPHOSv0.html">AliPHOSv0</a> .................. <a name="Title:AliPHOSv0">Implementation of PHOS manager class for layout EMC+PPSD</a>
+<li><a name="AliPHOSv1" href="./AliPHOSv1.html">AliPHOSv1</a> .................. <a name="Title:AliPHOSv1">Implementation of PHOS manager class for layout EMC+PPSD with light transport, MIPS in PIN and electronic noise</a>
+<li><a name="AliPHOSvFast" href="./AliPHOSvFast.html">AliPHOSvFast</a> ............... <a name="Title:AliPHOSvFast">Implementation of the PHOS manager class for fast simulations </a>
+<li>AliPIPE.................... <a name="Title:AliPIPE">Beam Pipe base Class</a>
+<li>AliPIPEv0.................. <a name="Title:AliPIPEv0">Class for PIPE version 0</a>
+<li>AliPIPEv1.................. <a name="Title:AliPIPEv1">Class for PIPE version 1</a>
+<li>AliPIPEv3.................. <a name="Title:AliPIPEv3">Class for PIPE version 3</a>
+<li>AliPMD..................... <a name="Title:AliPMD">Base Class for Photon Multiplicity Detector</a>
+<li>AliPMDhit.................. <a name="Title:AliPMDhit">Hits object for set:PMD</a>
+<li>AliPMDv0................... <a name="Title:AliPMDv0">Hits manager for set:PMD</a>
+<li>AliPMDv1................... <a name="Title:AliPMDv1">Hits manager for set:PMD</a>
+<li>AliPMDv2................... <a name="Title:AliPMDv2">Hits manager for set:PMD</a>
+<li>AliPoints.................. <a name="Title:AliPoints">Class to draw detector hits (is PolyMarker3D)</a>
+<li>AliPythia.................. <a name="Title:AliPythia">ALICE UI to PYTHIA</a>
+<li>AliRecPoint................ <a name="Title:AliRecPoint"></a>
+<li>AliRICH.................... <a name="Title:AliRICH">Hits manager for set:RICH</a>
+<li>AliRICHCerenkov............ <a name="Title:AliRICHCerenkov">Cerenkovs object for set:RICH</a>
+<li>AliRICHchamber............. <a name="Title:AliRICHchamber"></a>
+<li>AliRICHcluster............. <a name="Title:AliRICHcluster">Cluster object for set:RICH</a>
+<li>AliRICHdigit............... <a name="Title:AliRICHdigit">Digits for set:RICH</a>
+<li>AliRICHdisplay............. <a name="Title:AliRICHdisplay">Utility class to display RICH clusters...</a>
+<li>AliRICHhit................. <a name="Title:AliRICHhit">Hits object for set:RICH</a>
+<li>AliRICHHitMap.............. <a name="Title:AliRICHHitMap">virtual base class for muon HitMap</a>
+<li>AliRICHHitMapA1............ <a name="Title:AliRICHHitMapA1">Implements HitMap as a 2-dim array</a>
+<li>AliRICHlist................ <a name="Title:AliRICHlist">Digits for set:RICH</a>
+<li>AliRICHpoints.............. <a name="Title:AliRICHpoints">Class to draw detector clusters (is PolyMarker3D)</a>
+<li>AliRICHRecCluster.......... <a name="Title:AliRICHRecCluster">Cluster object for set:RICH</a>
+<li>AliRICHreccluster.......... <a name="Title:AliRICHreccluster">Cluster object for set:RICH</a>
+<li>AliRICHresponse............ <a name="Title:AliRICHresponse"></a>
+<li>AliRICHresponseCkv......... <a name="Title:AliRICHresponseCkv"></a>
+<li>AliRICHresponseV0.......... <a name="Title:AliRICHresponseV0"></a>
+<li>AliRICHsegmentation........ <a name="Title:AliRICHsegmentation"></a>
+<li>AliRICHsegmentationV0...... <a name="Title:AliRICHsegmentationV0"></a>
+<li>AliRICHv0.................. <a name="Title:AliRICHv0">Hits manager for set:RICH version 0</a>
+<li>AliRun..................... <a name="Title:AliRun">Supervisor class for all Alice detectors</a>
+<li>AliSHIL.................... <a name="Title:AliSHIL">Muon Shield Class</a>
+<li>AliSHILv0.................. <a name="Title:AliSHILv0">Muon Shield Class (Open Geometry)</a>
+<li>AliSTART................... <a name="Title:AliSTART">Class for the START detector</a>
+<li>AliSTARTdigit.............. <a name="Title:AliSTARTdigit">Digit (Header) object for set:ITS</a>
+<li>AliSTARThit................ <a name="Title:AliSTARThit">Hits for detector START</a>
+<li>AliSTARTv0................. <a name="Title:AliSTARTv0">Class for START version 0</a>
+<li>AliTOF..................... <a name="Title:AliTOF">Time Of Flight base class</a>
+<li>AliTOFhit.................. <a name="Title:AliTOFhit">Hits for Time Of Flight</a>
+<li>AliTOFv0................... <a name="Title:AliTOFv0">Time Of Flight version 0</a>
+<li>AliTOFv1................... <a name="Title:AliTOFv1">Time Of Flight version 1</a>
+<li>AliTOFv2................... <a name="Title:AliTOFv2">Time Of Flight version 2</a>
+<li>AliTOFv3................... <a name="Title:AliTOFv3">Time Of Flight version 3</a>
+<li>AliTOFv4................... <a name="Title:AliTOFv4">Time Of Flight version 4</a>
+<li>AliTOFv5................... <a name="Title:AliTOFv5">Time Of Flight version 1</a>
+<li>AliTOFv6................... <a name="Title:AliTOFv6">Time Of Flight version 6</a>
+<li>AliTPC..................... <a name="Title:AliTPC">Time Projection Chamber class</a>
+<li>AliTPCcluster.............. <a name="Title:AliTPCcluster">Time Projection Chamber clusters</a>
+<li>AliTPCD.................... <a name="Title:AliTPCD"></a>
+<li>AliTPCdigit................ <a name="Title:AliTPCdigit">Time Projection Chamber digits</a>
+<li>AliTPChit.................. <a name="Title:AliTPChit">Time Projection Chamber hits</a>
+<li>AliTPCParam................ <a name="Title:AliTPCParam">parameter object for set:TPC</a>
+<li>AliTPCPRF2D................ <a name="Title:AliTPCPRF2D"></a>
+<li>AliTPCRF1D................. <a name="Title:AliTPCRF1D"></a>
+<li>AliTPCtrack................ <a name="Title:AliTPCtrack">Time Projection Chamber reconstructed tracks</a>
+<li>AliTPCv0................... <a name="Title:AliTPCv0">Time Projection Chamber version 0 - coarse</a>
+<li>AliTPCv1................... <a name="Title:AliTPCv1">Time Projection Chamber version 1</a>
+<li>AliTPCv2................... <a name="Title:AliTPCv2">Time Projection Chamber version 2</a>
+<li>AliTPCv3................... <a name="Title:AliTPCv3">Time Projection Chamber version 3</a>
+<li>AliTRD..................... <a name="Title:AliTRD">Transition Radiation Detector base class</a>
+<li>AliTRDarrayI............... <a name="Title:AliTRDarrayI"></a>
+<li>AliTRDcluster.............. <a name="Title:AliTRDcluster">Cluster for Transition Radiation Detector</a>
+<li>AliTRDclusterizer.......... <a name="Title:AliTRDclusterizer">TRD-Cluster manager base class</a>
+<li>AliTRDclusterizerV0........ <a name="Title:AliTRDclusterizerV0">TRD-Cluster manager, fast simulator</a>
+<li>AliTRDclusterizerV1........ <a name="Title:AliTRDclusterizerV1">TRD-Cluster manager, slow simulator</a>
+<li>AliTRDdataArray............ <a name="Title:AliTRDdataArray">Data container for one TRD detector segment</a>
+<li>AliTRDdigit................ <a name="Title:AliTRDdigit">Digits for Transition Radiation Detector</a>
+<li>AliTRDdigitizer............ <a name="Title:AliTRDdigitizer">TRD-Digits manager</a>
+<li>AliTRDgeometry............. <a name="Title:AliTRDgeometry">TRD geometry base class</a>
+<li>AliTRDgeometryFull......... <a name="Title:AliTRDgeometryFull">TRD geometry without hole</a>
+<li>AliTRDgeometryHole......... <a name="Title:AliTRDgeometryHole">TRD geometry with hole</a>
+<li>AliTRDhit.................. <a name="Title:AliTRDhit">Hits for Transition Radiation Detector</a>
+<li>AliTRDmatrix............... <a name="Title:AliTRDmatrix">The TRD detector matrix for one readout chamber</a>
+<li>AliTRDpixel................ <a name="Title:AliTRDpixel">Information for one detector pixel </a>
+<li>AliTRDrecPoint............. <a name="Title:AliTRDrecPoint">Reconstructed point for the TRD</a>
+<li>AliTRDsegmentArray......... <a name="Title:AliTRDsegmentArray">TRD detector segment array </a>
+<li>AliTRDsegmentArrayBase..... <a name="Title:AliTRDsegmentArrayBase"></a>
+<li>AliTRDsegmentID............ <a name="Title:AliTRDsegmentID"></a>
+<li>AliTRDv0................... <a name="Title:AliTRDv0">Transition Radiation Detector version 0 (fast simulator)</a>
+<li>AliTRDv1................... <a name="Title:AliTRDv1">Transition Radiation Detector version 1 (slow simulator)</a>
+<li>AliVMC..................... <a name="Title:AliVMC">Generic MonteCarlo Class</a>
+<li>AliZDC..................... <a name="Title:AliZDC">Zero Degree Calorimeter base class</a>
+<li>AliZDChit.................. <a name="Title:AliZDChit">Hits for the Zero Degree Calorimeter</a>
+<li>AliZDCv1................... <a name="Title:AliZDCv1">Zero Degree Calorimeter version 1</a>
+<li>TGeant3.................... <a name="Title:TGeant3">C++ interface to Geant basic routines </a>
+<li>THIGZ...................... <a name="Title:THIGZ">Emulation of HIGZ for Root</a>
+<li>TPaveTree.................. <a name="Title:TPaveTree">A TPaveLabel specialized for Geant GDTREE</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>Index</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<h2>Index</h2><hr>
+<pre>
+<ul>
+<li>TGX11...................... <a name="Title:TGX11">Interface to X11</a>
+</ul>
+</pre>
+
+<hr><br>
+<!--SIGNATURE-->
+<em>Last update: Sun Mar 12 00:48:27 2000</em><br>
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:47 2000 -->
+<!-- -->
+<head>
+<title>AliPHOS - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Base Class for PHOS description:</b>
+<b>// PHOS consists of a PbWO4 calorimeter (EMCA) and a gazeous charged </b>
+<b>// particles detector (CPV or PPSD).</b>
+<b>// The only provided method here is CreateMaterials, </b>
+<b>// which defines the materials common to all PHOS versions. </b>
+<b>// </b>
+<b>//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH) </b>
+<b>//////////////////////////////////////////////////////////////////////////////</b>
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOS.h">AliPHOS.h</a>"
+#include "AliMC.h"
+#include "AliRun.h"
+
+ClassImp(AliPHOS)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOS:~AliPHOS"> </a><a href=".././AliPHOS.html">AliPHOS</a>::~<a href=".././AliPHOS.html">AliPHOS</a>()
+{
+ delete fHits ;
+ delete fDigits ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOS:CreateMaterials"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOS.html#AliPHOS:CreateMaterials">AliPHOS::CreateMaterials</a>()
+{
+<b> // Definitions of materials to build PHOS and associated tracking media.</b>
+<b> // media number in idtmed are 699 to 798.</b>
+
+<b> // --- The PbWO4 crystals ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aX[3] = {207.19, 183.85, 16.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zX[3] = {82.0, 74.0, 8.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wX[3] = {1.0, 1.0, 4.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dX = 8.28 ;
+
+ AliMixture(0, "PbWO4$", aX, zX, dX, -3, wX) ;
+
+
+<b> // --- The polysterene scintillator (CH) ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aP[2] = {12.011, 1.00794} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zP[2] = {6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wP[2] = {1.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dP = 1.032 ;
+
+ AliMixture(1, "Polystyrene$", aP, zP, dP, -2, wP) ;
+
+<b> // --- Aluminium ---</b>
+ AliMaterial(2, "Al$", 26.98, 13., 2.7, 8.9, 999., 0, 0) ;
+<b> // --- Absorption length is ignored ^</b>
+
+<b> // --- Tyvek (CnH2n) ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aT[2] = {12.011, 1.00794} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zT[2] = {6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wT[2] = {1.0, 2.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dT = 0.331 ;
+
+ AliMixture(3, "Tyvek$", aT, zT, dT, -2, wT) ;
+
+<b> // --- Polystyrene foam ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aF[2] = {12.011, 1.00794} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zF[2] = {6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wF[2] = {1.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dF = 0.12 ;
+
+ AliMixture(4, "Foam$", aF, zF, dF, -2, wF) ;
+
+<b> // --- Titanium ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aTIT[3] = {47.88, 26.98, 54.94} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zTIT[3] = {22.0, 13.0, 25.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wTIT[3] = {69.0, 6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dTIT = 4.5 ;
+
+ AliMixture(5, "Titanium$", aTIT, zTIT, dTIT, -3, wTIT);
+
+<b> // --- Silicon ---</b>
+ AliMaterial(6, "Si$", 28.0855, 14., 2.33, 9.36, 42.3, 0, 0) ;
+
+
+
+<b> // --- Foam thermo insulation ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aTI[2] = {12.011, 1.00794} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zTI[2] = {6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wTI[2] = {1.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dTI = 0.1 ;
+
+ AliMixture(7, "Thermo Insul.$", aTI, zTI, dTI, -2, wTI) ;
+
+<b> // --- Textolitn ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aTX[4] = {16.0, 28.09, 12.011, 1.00794} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zTX[4] = {8.0, 14.0, 6.0, 1.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wTX[4] = {292.0, 68.0, 462.0, 736.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dTX = 1.75 ;
+
+ AliMixture(8, "Textolit$", aTX, zTX, dTX, -4, wTX) ;
+
+<b> //--- FR4 ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aFR[3] = {28.0855, 15.9994, 17.749} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zFR[3] = {14., 8., 8.875} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wFR[3] = {.28, .32, .4} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dFR = 1.8 ;
+
+ AliMixture(9, "FR4$", aFR, zFR, dFR, -3, wFR) ;
+
+<b> // --- The Composite Material for micromegas (so far polyetylene) --- </b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aCM[2] = {12.01, 1.} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zCM[2] = {6., 1.} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wCM[2] = {1., 2.} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dCM = 0.935 ;
+
+ AliMixture(10, "Compo Mat$", aCM, zCM, dCM, -2, wCM) ;
+
+<b> // --- Copper --- </b>
+ AliMaterial(11, "Cu$", 63.546, 29, 8.96, 1.43, 14.8, 0, 0) ;
+
+<b> // --- G10 : Printed Circuit material --- </b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aG10[4] = { 12., 1., 16., 28.} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zG10[4] = { 6., 1., 8., 14.} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wG10[4] = { .259, .288, .248, .205} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dG10 = 1.7 ;
+
+ AliMixture(12, "G10$", aG10, zG10, dG10, -4, wG10);
+
+<b> // --- Lead --- </b>
+ AliMaterial(13, "Pb$", 207.2, 82, 11.35, 0.56, 0., 0, 0) ;
+
+<b> // --- The gas mixture --- </b>
+<b> // Co2</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aCO[2] = {12.0, 16.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zCO[2] = {6.0, 8.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wCO[2] = {1.0, 2.0} ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dCO = 0.001977 ;
+
+ AliMixture(14, "CO2$", aCO, zCO, dCO, -2, wCO);
+
+<b> // Ar</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dAr = 0.001782 ;
+ AliMaterial(15, "Ar$", 39.948, 18.0, dAr, 14.0, 0., 0, 0) ;
+
+<b> // ArCo2</b>
+ <a href="../ListOfTypes.html#Char_t">Char_t</a> namate[21];
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> aGM[2] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zGM[2] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wGM[2] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dGM ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> absL, radL, density ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> buf[1] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nbuf ;
+
+ gMC->Gfmate((*fIdmate)[15], namate, aGM[0], zGM[0], density, radL, absL, buf, nbuf) ; // Get properties of Ar
+ gMC->Gfmate((*fIdmate)[14], namate, aGM[1], zGM[1], density, radL, absL, buf, nbuf) ; // Get properties of CO2
+
+
+<b> // Create gas mixture </b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> arContent = 0.80 ; // Ar-content of the Ar/CO2-mixture (80% / 20%)
+
+ wGM[0] = arContent;
+ wGM[1] = 1. - arContent ;
+ dGM = wGM[0] * dAr + wGM[1] * dCO;
+
+ AliMixture(16, "ArCO2$", aGM, zGM, dGM, 2, wGM) ;
+
+
+<b> // --- Air ---</b>
+ AliMaterial(99, "Air$", 14.61, 7.3, 0.001205, 30420., 67500., 0, 0) ;
+
+
+<b> // DEFINITION OF THE TRACKING MEDIA</b>
+
+<b> // for PHOS: idtmed[699->798] equivalent to fIdtmed[0->100]</b>
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * idtmed = fIdtmed->GetArray() - 699 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> isxfld = gAlice->Field()->Integ() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> sxmgmx = gAlice->Field()->Max() ;
+
+<b> // The scintillator of the calorimeter made of PBW04 -> idtmed[699]</b>
+ AliMedium(0, "PHOS Xtal $", 0, 1,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // The scintillator of the CPV made of Polystyrene scintillator -> idtmed[700]</b>
+ AliMedium(1, "CPV scint. $", 1, 1,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // Various Aluminium parts made of Al -> idtmed[701]</b>
+ AliMedium(2, "Al parts $", 2, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.001, 0.001, 0, 0) ;
+
+<b> // The Tywek which wraps the calorimeter crystals -> idtmed[702]</b>
+ AliMedium(3, "Tyvek wrapper$", 3, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.001, 0.001, 0, 0) ;
+
+<b> // The Polystyrene foam around the calorimeter module -> idtmed[703]</b>
+ AliMedium(4, "Polyst. foam $", 4, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // The Titanium around the calorimeter crystal -> idtmed[704]</b>
+ AliMedium(5, "Titan. cover $", 5, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.0001, 0.0001, 0, 0) ;
+
+<b> // The Silicon of the pin diode to read out the calorimeter crystal -> idtmed[705] </b>
+ AliMedium(6, "Si PIN $", 6, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.01, 0.01, 0, 0) ;
+
+<b> // The thermo insulating material of the box which contains the calorimeter module -> idtmed[706]</b>
+ AliMedium(7, "Thermo Insul.$", 7, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // The Textolit which makes up the box which contains the calorimeter module -> idtmed[707]</b>
+ AliMedium(8, "Textolit $", 8, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // FR4: The Plastic which makes up the frame of micromegas -> idtmed[708]</b>
+ AliMedium(9, "FR4 $", 9, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.0001, 0, 0) ;
+
+
+<b> // The Composite Material for micromegas -> idtmed[709]</b>
+ AliMedium(10, "CompoMat $", 10, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // Copper -> idtmed[710]</b>
+ AliMedium(11, "Copper $", 11, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.0001, 0, 0) ;
+
+<b> // G10: Printed Circuit material -> idtmed[711]</b>
+
+ AliMedium(12, "G10 $", 12, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.01, 0, 0) ;
+
+<b> // The Lead -> idtmed[712]</b>
+
+ AliMedium(13, "Lead $", 13, 0,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.1, 0, 0) ;
+
+<b> // The gas mixture: ArCo2 -> idtmed[715]</b>
+
+ AliMedium(16, "ArCo2 $", 16, 1,
+ isxfld, sxmgmx, 10.0, 0.1, 0.1, 0.1, 0.01, 0, 0) ;
+
+<b> // Air -> idtmed[798] </b>
+ AliMedium(99, "Air $", 99, 0,
+ isxfld, sxmgmx, 10.0, 1.0, 0.1, 0.1, 10.0, 0, 0) ;
+
+<b> // --- Set decent energy thresholds for gamma and electron tracking</b>
+
+<b> // Tracking threshold for photons and electrons in the scintillator crystal </b>
+ gMC->Gstpar(idtmed[699], "CUTGAM",0.5E-4) ;
+ gMC->Gstpar(idtmed[699], "CUTELE",1.0E-4) ;
+
+<b> // --- Generate explicitly delta rays in the titan cover ---</b>
+ gMC->Gstpar(idtmed[704], "LOSS",3.) ;
+ gMC->Gstpar(idtmed[704], "DRAY",1.) ;
+<b> // --- and in aluminium parts ---</b>
+ gMC->Gstpar(idtmed[701], "LOSS",3.) ;
+ gMC->Gstpar(idtmed[701], "DRAY",1.) ;
+<b> // --- and in PIN diode</b>
+ gMC->Gstpar(idtmed[705], "LOSS",3) ;
+ gMC->Gstpar(idtmed[705], "DRAY",1) ;
+<b> // --- and in the passive convertor</b>
+ gMC->Gstpar(idtmed[712], "LOSS",3) ;
+ gMC->Gstpar(idtmed[712], "DRAY",1) ;
+<b> // Tracking threshold for photons and electrons in the gas ArC02 </b>
+ gMC->Gstpar(idtmed[715], "CUTGAM",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "CUTELE",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "CUTNEU",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "CUTHAD",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "CUTMUO",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "BCUTE",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "BCUTM",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "DCUTE",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "DCUTM",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "PPCUTM",5.E-7) ;
+ gMC->Gstpar(idtmed[715], "LOSS",2.) ;
+ gMC->Gstpar(idtmed[715], "DRAY",0.) ;
+ gMC->Gstpar(idtmed[715], "STRA",2.) ;
+
+
+
+
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:54 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSAnalyze - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Algorythm class to analyze PHOSv0 events:</b>
+<b>// Construct histograms and displays them.</b>
+<b>// Use the macro EditorBar.C for best access to the functionnalities</b>
+<b>//</b>
+<b>//*-- Author: Y. Schutz (SUBATECH) </b>
+<b>//////////////////////////////////////////////////////////////////////////////</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TFile.h"
+#include "TH1.h"
+#include "TPad.h"
+#include "TH2.h"
+#include "TParticle.h"
+#include "TClonesArray.h"
+#include "TTree.h"
+#include "TMath.h"
+#include "TCanvas.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+#include <cstdio>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "AliRun.h"
+#include "<a href="../AliPHOSAnalyze.h">AliPHOSAnalyze.h</a>"
+#include "<a href="../AliPHOSClusterizerv1.h">AliPHOSClusterizerv1.h</a>"
+#include "<a href="../AliPHOSTrackSegmentMakerv1.h">AliPHOSTrackSegmentMakerv1.h</a>"
+#include "<a href="../AliPHOSPIDv1.h">AliPHOSPIDv1.h</a>"
+#include "<a href="../AliPHOSReconstructioner.h">AliPHOSReconstructioner.h</a>"
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+#include "<a href="../AliPHOSTrackSegment.h">AliPHOSTrackSegment.h</a>"
+#include "<a href="../AliPHOSRecParticle.h">AliPHOSRecParticle.h</a>"
+
+ClassImp(AliPHOSAnalyze)
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:AliPHOSAnalyze"> </a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze::AliPHOSAnalyze</a>()
+{
+<b> // default ctor (useless)</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> = 0 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:AliPHOSAnalyze"> </a><a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:AliPHOSAnalyze">AliPHOSAnalyze::AliPHOSAnalyze</a>(<a href="../ListOfTypes.html#Text_t">Text_t</a> * name)
+{
+<b> // ctor: analyze events from root file: name</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> ok = <a href="#AliPHOSAnalyze:OpenRootFile">OpenRootFile</a>(name) ;
+ if ( !ok ) {
+ cout << " <a href=".././AliPHOSAnalyze.html">AliPHOSAnalyze</a> > Error opening " << name << endl ;
+ }
+ else {
+ gAlice = (AliRun*) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->Get("gAlice");
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a> = (<a href=".././AliPHOSv0.html">AliPHOSv0</a> *)gAlice->GetDetector("PHOS") ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetName(), <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetTitle() ) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> = -999 ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:~AliPHOSAnalyze"> </a><a href=".././AliPHOSAnalyze.html">AliPHOSAnalyze</a>::~<a href=".././AliPHOSAnalyze.html">AliPHOSAnalyze</a>()
+{
+<b> // dtor</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->Close() ;
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> = 0 ;
+
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a> = 0 ;
+
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a> = 0 ;
+
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a> = 0 ;
+
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a> = 0 ;
+
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a> ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a> = 0 ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:AnalyzeOneEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:AnalyzeOneEvent">AliPHOSAnalyze::AnalyzeOneEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> evt)
+{
+<b> // analyze one single event with id=evt</b>
+
+ TStopwatch ts ;
+ ts.Start() ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> ok = <a href="#AliPHOSAnalyze:Init">Init</a>(evt) ;
+
+ if ( ok ) {
+<b> //=========== Get the number of entries in the Digits array</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nId = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>->Digits()->GetEntries();
+ printf("AnalyzeOneEvent > Number of entries in the Digit array is %d n",nId);
+
+<b> //=========== Do the reconstruction</b>
+
+ cout << "AnalyzeOneEvent > Found " << nId << " digits in PHOS" << endl ;
+
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:Reconstruction">Reconstruction</a>(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a>);
+
+<b> // =========== End of reconstruction</b>
+
+<b> // =========== Write the root file</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->Write() ;
+
+<b> // =========== Finish</b>
+
+ cout << "AnalyzeOneEvent > event # " << <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> << " processed" << endl ;
+ } // ok
+ else
+ cout << "AnalyzeOneEvent > filed to process event # " << evt << endl ;
+
+ ts.Stop() ; cout << "CPU time = " << ts.CpuTime() << endl ;
+ cout << "Real time = " << ts.RealTime() << endl ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:AnalyzeManyEvents"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:AnalyzeManyEvents">AliPHOSAnalyze::AnalyzeManyEvents</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> Nevents, <a href="../ListOfTypes.html#Int_t">Int_t</a> module)
+{
+<b> // analyzes Nevents events in a single PHOS module </b>
+
+ if ( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> == 0 )
+ cout << "AnalyzeManyEvents > " << "Root File not openned" << endl ;
+ else
+ {
+<b> //========== Get AliRun object from file </b>
+ gAlice = (AliRun*) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->Get("gAlice") ;
+<b> //=========== Get the PHOS object and associated geometry from the file </b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a> = (<a href=".././AliPHOSv0.html">AliPHOSv0</a> *)gAlice->GetDetector("PHOS") ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetName(), <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetTitle() );
+<b> //========== Booking Histograms</b>
+ cout << "AnalyzeManyEvents > " << "Booking Histograms" << endl ;
+ <a href="#AliPHOSAnalyze:BookingHistograms">BookingHistograms</a>();
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ievent;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emc ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsd ;
+<b> // <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * tracksegment ;</b>
+ <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> * recparticle;
+ for ( ievent=0; ievent<Nevents; ievent++)
+ {
+ if (ievent==0) cout << "AnalyzeManyEvents > " << "Starting Analyzing " << endl ;
+<b> //========== Create the Clusterizer</b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a> = new <a href=".././AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a>() ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetEmcEnergyThreshold">SetEmcEnergyThreshold</a>(0.025) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetEmcClusteringThreshold">SetEmcClusteringThreshold</a>(0.50) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetPpsdEnergyThreshold">SetPpsdEnergyThreshold</a> (0.0000002) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetPpsdClusteringThreshold">SetPpsdClusteringThreshold</a>(0.0000001) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetLocalMaxCut">SetLocalMaxCut</a>(0.03) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetCalibrationParameters">SetCalibrationParameters</a>(0., 0.00000001) ;
+<b> //========== Creates the track segment maker</b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a> = new <a href=".././AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>() ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>-><a href=".././AliPHOSTrackSegmentMaker.html#AliPHOSTrackSegmentMaker:UnsetUnfoldFlag">UnsetUnfoldFlag</a>() ;
+<b> //========== Creates the particle identifier</b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a> = new <a href=".././AliPHOSPIDv1.html">AliPHOSPIDv1</a>() ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>-><a href=".././AliPHOSPID.html#AliPHOSPID:SetShowerProfileCuts">SetShowerProfileCuts</a>(0.3, 1.8, 0.3, 1.8 ) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>->Print() ;
+<b> //========== Creates the Reconstructioner </b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a> = new <a href=".././AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>) ;
+<b> //========== Event Number</b>
+ if ( ( log10(ievent+1) - (<a href="../ListOfTypes.html#Int_t">Int_t</a>)(log10(ievent+1)) ) == 0. ) cout << "AnalyzeManyEvents > " << "Event is " << ievent << endl ;
+<b> //=========== Connects the various Tree's for evt</b>
+ gAlice->GetEvent(ievent);
+<b> //=========== Gets the Digit TTree</b>
+ gAlice->TreeD()->GetEvent(0) ;
+<b> //=========== Gets the number of entries in the Digits array </b>
+ TIter nextdigit(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>->Digits()) ;
+ while( ( digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)nextdigit() ) )
+ {
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a>(digit->GetId(), relid) ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:IsInEmc">IsInEmc</a>(digit)) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a>->Fill(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:Calibrate">Calibrate</a>(digit->GetAmp())) ;
+ else
+ {
+ if (relid[1]<17) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a>->Fill(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:Calibrate">Calibrate</a>(digit->GetAmp()));
+ if (relid[1]>16) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a>->Fill(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:Calibrate">Calibrate</a>(digit->GetAmp()));
+ }
+ }
+<b> //=========== Do the reconstruction</b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:Reconstruction">Reconstruction</a>(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a>);
+<b> //=========== Cluster in module</b>
+ TIter nextEmc(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:EmcClusters">EmcClusters</a>() ) ;
+ while((emc = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *)nextEmc()))
+ {
+ if ( emc->GetPHOSMod() == module )
+ {
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a>->Fill( emc->GetTotalEnergy() );
+ TIter nextPpsd( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:PpsdClusters">PpsdClusters</a>()) ;
+ while((ppsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *)nextPpsd()))
+ {
+ if ( ppsd->GetPHOSMod() == module )
+ {
+ if (!ppsd->GetUp()) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a>->Fill(emc->GetTotalEnergy(),ppsd->GetTotalEnergy()) ;
+ }
+ }
+ }
+ }
+<b> //=========== Cluster in module PPSD Down</b>
+ TIter nextPpsd(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:PpsdClusters">PpsdClusters</a>() ) ;
+ while((ppsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *)nextPpsd()))
+ {
+ if ( ppsd->GetPHOSMod() == module )
+ {
+ if (!ppsd->GetUp()) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a>->Fill(ppsd->GetTotalEnergy()) ;
+ if (ppsd->GetUp()) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a> ->Fill(ppsd->GetTotalEnergy()) ;
+ }
+ }
+<b> //========== TRackSegments in the event</b>
+ TIter nextRecParticle(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:RecParticles">RecParticles</a>() ) ;
+ while((recparticle = (<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> *)nextRecParticle()))
+ {
+ if ( recparticle->GetPHOSTrackSegment()->GetPHOSMod() == module )
+ {
+ cout << "Particle type is " << recparticle->GetType() << endl ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> numberofprimaries = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * listofprimaries = recparticle->GetPrimaries(numberofprimaries) ;
+ cout << "Number of primaries = " << numberofprimaries << endl ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ for ( index = 0 ; index < numberofprimaries ; index++)
+ cout << " primary # " << index << " = " << listofprimaries[index] << endl ;
+ switch(recparticle->GetType())
+ {
+ case kGAMMA:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonEnergy">fhPhotonEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionY">fhPhotonPositionY</a>->Fill(recpart. ) ; </b>
+ cout << "PHOTON" << endl;
+ break;
+ case kELECTRON:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronEnergy">fhElectronEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionY">fhElectronPositionY</a>->Fill(recpart. ) ; </b>
+ cout << "ELECTRON" << endl;
+ break;
+ case kNEUTRALHADRON:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronEnergy">fhNeutralHadronEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionY">fhNeutralHadronPositionY</a>->Fill(recpart. ) ; </b>
+ cout << "NEUTRAl HADRON" << endl;
+ break ;
+ case kNEUTRALEM:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMEnergy">fhNeutralEMEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionY">fhNeutralEMPositionY</a>->Fill(recpart. ) ; </b>
+<b> //cout << "NEUTRAL EM" << endl;</b>
+ break ;
+ case kCHARGEDHADRON:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronEnergy">fhChargedHadronEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionY">fhChargedHadronPositionY</a>->Fill(recpart. ) ; </b>
+ cout << "CHARGED HADRON" << endl;
+ break ;
+ case kGAMMAHADRON:
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronEnergy">fhPhotonHadronEnergy</a>->Fill(recparticle->Energy() ) ;
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a>->Fill(recpart. ) ;</b>
+<b> //<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionY">fhPhotonHadronPositionY</a>->Fill(recpart. ) ; </b>
+ cout << "PHOTON HADRON" << endl;
+ break ;
+ }
+ }
+ }
+<b> // Deleting <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a> et <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a></b>
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>->Delete();
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>->Delete();
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>->Delete();
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a>->Delete();
+
+ } // endfor
+ <a href="#AliPHOSAnalyze:SavingHistograms">SavingHistograms</a>();
+ } // endif
+} // endfunction
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:BookingHistograms"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:BookingHistograms">AliPHOSAnalyze::BookingHistograms</a>()
+{
+<b> // Books the histograms where the results of the analysis are stored (to be changed)</b>
+
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a> ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a> )
+ delete <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a> ;
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a> = new TH1F("hEmcDigit", "hEmcDigit", 1000, 0. , 25.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a> = new TH1F("hVetoDigit", "hVetoDigit", 500, 0. , 3.e-5);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a> = new TH1F("hConvertorDigit","hConvertorDigit", 500, 0. , 3.e-5);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a> = new TH1F("hEmcCluster", "hEmcCluster", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a> = new TH1F("hVetoCluster", "hVetoCluster", 500, 0. , 3.e-5);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a> = new TH1F("hConvertorCluster","hConvertorCluster",500, 0. , 3.e-5);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a> = new TH2F("hConvertorEmc", "hConvertorEmc", 200, 1. , 3., 200, 0., 3.e-5);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonEnergy">fhPhotonEnergy</a> = new TH1F("hPhotonEnergy", "hPhotonEnergy", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronEnergy">fhElectronEnergy</a> = new TH1F("hElectronEnergy","hElectronEnergy", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronEnergy">fhNeutralHadronEnergy</a> = new TH1F("hNeutralHadronEnergy", "hNeutralHadronEnergy", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMEnergy">fhNeutralEMEnergy</a> = new TH1F("hNeutralEMEnergy", "hNeutralEMEnergy", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronEnergy">fhChargedHadronEnergy</a> = new TH1F("hChargedHadronEnergy", "hChargedHadronEnergy", 1000, 0. , 30.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronEnergy">fhPhotonHadronEnergy</a> = new TH1F("hPhotonHadronEnergy","hPhotonHadronEnergy",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a> = new TH1F("hPhotonPositionX","hPhotonPositionX", 500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a> = new TH1F("hElectronPositionX","hElectronPositionX",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a> = new TH1F("hNeutralHadronPositionX","hNeutralHadronPositionX",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a> = new TH1F("hNeutralEMPositionX","hNeutralEMPositionX",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a> = new TH1F("hChargedHadronPositionX","hChargedHadronPositionX",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a> = new TH1F("hPhotonHadronPositionX","hPhotonHadronPositionX",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionY">fhPhotonPositionY</a> = new TH1F("hPhotonPositionY","hPhotonPositionY", 500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionY">fhElectronPositionY</a> = new TH1F("hElectronPositionY","hElectronPositionY",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionY">fhNeutralHadronPositionY</a> = new TH1F("hNeutralHadronPositionY","hNeutralHadronPositionY",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionY">fhNeutralEMPositionY</a> = new TH1F("hNeutralEMPositionY","hNeutralEMPositionY",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionY">fhChargedHadronPositionY</a> = new TH1F("hChargedHadronPositionY","hChargedHadronPositionY",500,-80. , 80.);
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionY">fhPhotonHadronPositionY</a> = new TH1F("hPhotonHadronPositionY","hPhotonHadronPositionY",500,-80. , 80.);
+
+
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:Init"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:Init">AliPHOSAnalyze::Init</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> evt)
+{
+<b> // Do a few initializations: open the root file</b>
+<b> // get the AliRun object</b>
+<b> // defines the clusterizer, tracksegment maker and particle identifier</b>
+<b> // sets the associated parameters</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> ok = kTRUE ;
+
+<b> //========== Open galice root file </b>
+
+ if ( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> == 0 ) {
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> * name = new <a href="../ListOfTypes.html#Text_t">Text_t</a>[80] ;
+ cout << "AnalyzeOneEvent > Enter file root file name : " ;
+ cin >> name ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> ok = <a href="#AliPHOSAnalyze:OpenRootFile">OpenRootFile</a>(name) ;
+ if ( !ok )
+ cout << " <a href=".././AliPHOSAnalyze.html">AliPHOSAnalyze</a> > Error opening " << name << endl ;
+ else {
+<b> //========== Get AliRun object from file </b>
+
+ gAlice = (AliRun*) <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->Get("gAlice") ;
+
+<b> //=========== Get the PHOS object and associated geometry from the file </b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a> = (<a href=".././AliPHOSv0.html">AliPHOSv0</a> *)gAlice->GetDetector("PHOS") ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>( <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetName(), <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:GetGeometry">GetGeometry</a>()->GetTitle() );
+ } // else !ok
+ } // if <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>
+
+ if ( ok ) {
+
+<b> //========== Create the Clusterizer</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a> = new <a href=".././AliPHOSClusterizerv1.html">AliPHOSClusterizerv1</a>() ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetEmcEnergyThreshold">SetEmcEnergyThreshold</a>(0.030) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetEmcClusteringThreshold">SetEmcClusteringThreshold</a>(1.0) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetPpsdEnergyThreshold">SetPpsdEnergyThreshold</a> (0.0000002) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetPpsdClusteringThreshold">SetPpsdClusteringThreshold</a>(0.0000001) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetLocalMaxCut">SetLocalMaxCut</a>(0.03) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:SetCalibrationParameters">SetCalibrationParameters</a>(0., 0.00000001) ;
+ cout << "AnalyzeOneEvent > using clusterizer " << <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>->GetName() << endl ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:PrintParameters">PrintParameters</a>() ;
+
+<b> //========== Creates the track segment maker</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a> = new <a href=".././AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>() ;
+ cout << "AnalyzeOneEvent > using tack segment maker " << <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>->GetName() << endl ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>-><a href=".././AliPHOSTrackSegmentMaker.html#AliPHOSTrackSegmentMaker:UnsetUnfoldFlag">UnsetUnfoldFlag</a>() ;
+
+<b> //========== Creates the particle identifier</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a> = new <a href=".././AliPHOSPIDv1.html">AliPHOSPIDv1</a>() ;
+ cout << "AnalyzeOneEvent > using particle identifier " << <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>->GetName() << endl ;
+
+<b> //========== Creates the Reconstructioner </b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRec">fRec</a> = new <a href=".././AliPHOSReconstructioner.html">AliPHOSReconstructioner</a>(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fTrs">fTrs</a>, <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPID">fPID</a>) ;
+
+<b> //=========== Connect the various Tree's for evt</b>
+
+ if ( evt == -999 ) {
+ cout << "AnalyzeOneEvent > Enter event number : " ;
+ cin >> evt ;
+ cout << evt << endl ;
+ }
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> = evt ;
+ gAlice->GetEvent(evt);
+
+<b> //=========== Get the Digit TTree</b>
+
+ gAlice->TreeD()->GetEvent(0) ;
+
+ } // ok
+
+ return ok ;
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:DisplayKineEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:DisplayKineEvent">AliPHOSAnalyze::DisplayKineEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> evt)
+{
+<b> // Display particles from the Kine Tree in global Alice (theta, phi) coordinates. </b>
+<b> // One PHOS module at the time.</b>
+<b> // The particle type can be selected.</b>
+
+ if (evt == -999)
+ evt = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> module ;
+ cout << "DisplayKineEvent > which module (1-5, -1: all) ? " ;
+ cin >> module ; cout << module << endl ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> testparticle ;
+ cout << " 22 : PHOTON " << endl
+ << " (-)11 : (POSITRON)ELECTRON " << endl
+ << " (-)2112 : (ANTI)NEUTRON " << endl
+ << " -999 : Everything else " << endl ;
+ cout << "DisplayKineEvent > enter PDG particle code to display " ;
+ cin >> testparticle ; cout << testparticle << endl ;
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> histoname[80] ;
+ sprintf(histoname,"Event %d: Incident particles in module %d", evt, module) ;
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> tm, tM, pm, pM ; // min and Max theta and phi covered by module
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(module, tm, tM, pm, pM, kDegre) ;
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> theta, phi ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcXtalCoverage">EmcXtalCoverage</a>(theta, phi, kDegre) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> tdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( (tM - tm) / theta ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( (pM - pm) / phi ) ;
+
+ tm -= theta ;
+ tM += theta ;
+ pm -= phi ;
+ pM += phi ;
+
+ TH2F * histoparticle = new TH2F("histoparticle", histoname,
+ pdim, pm, pM, tdim, tm, tM) ;
+ histoparticle->SetStats(kFALSE) ;
+
+<b> // Get pointers to Alice Particle TClonesArray</b>
+
+ TParticle * particle;
+ TClonesArray * particlearray = gAlice->Particles();
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> canvasname[80];
+ sprintf(canvasname,"Particles incident in PHOS/EMC module # %d",module) ;
+ TCanvas * kinecanvas = new TCanvas("kinecanvas", canvasname, 650, 500) ;
+
+<b> // get the KINE Tree</b>
+
+ TTree * kine = gAlice->TreeK() ;
+ <a href="../ListOfTypes.html#Stat_t">Stat_t</a> nParticles = kine->GetEntries() ;
+ cout << "DisplayKineEvent > events in kine " << nParticles << endl ;
+
+<b> // loop over particles</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kRADDEG = 180. / TMath::Pi() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index1 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nparticlein = 0 ;
+ for (index1 = 0 ; index1 < nParticles ; index1++){
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nparticle = particlearray->GetEntriesFast() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index2 ;
+ for( index2 = 0 ; index2 < nparticle ; index2++) {
+ particle = (TParticle*)particlearray->UncheckedAt(index2) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> particletype = particle->GetPdgCode() ;
+ if (testparticle == -999 || testparticle == particletype) {
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> phi = particle->Phi() ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> theta = particle->Theta() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> mod ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> x, z ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(theta, phi, mod, z, x) ;
+ if ( mod == module ) {
+ nparticlein++ ;
+ if (particle->Energy() > <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:GetEmcClusteringThreshold">GetEmcClusteringThreshold</a>() )
+ histoparticle->Fill(phi*kRADDEG, theta*kRADDEG, particle->Energy() ) ;
+ }
+ }
+ }
+ }
+ kinecanvas->Draw() ;
+ histoparticle->Draw("color") ;
+ TPaveText * pavetext = new TPaveText(294, 100, 300, 101);
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> text[40] ;
+ sprintf(text, "Particles: %d ", nparticlein) ;
+ pavetext->AddText(text) ;
+ pavetext->Draw() ;
+ kinecanvas->Update();
+
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:DisplayRecParticles"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:DisplayRecParticles">AliPHOSAnalyze::DisplayRecParticles</a>()
+{
+<b> // Display reconstructed particles in global Alice(theta, phi) coordinates. </b>
+<b> // One PHOS module at the time.</b>
+<b> // Click on symbols indicate the reconstructed particle type. </b>
+
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> == -999) {
+ cout << "DisplayRecParticles > Analyze an event first ... (y/n) " ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> answer[1] ;
+ cin >> answer ; cout << answer ;
+ if ( answer == "y" )
+ <a href="#AliPHOSAnalyze:AnalyzeOneEvent">AnalyzeOneEvent</a>() ;
+ }
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> != -999) {
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> module ;
+ cout << "DisplayRecParticles > which module (1-5, -1: all) ? " ;
+ cin >> module ; cout << module << endl ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> histoname[80] ;
+ sprintf(histoname,"Event %d: Reconstructed particles in module %d", <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a>, module) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> tm, tM, pm, pM ; // min and Max theta and phi covered by module
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(module, tm, tM, pm, pM, kDegre) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> theta, phi ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcXtalCoverage">EmcXtalCoverage</a>(theta, phi, kDegre) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> tdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( (tM - tm) / theta ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( (pM - pm) / phi ) ;
+ tm -= theta ;
+ tM += theta ;
+ pm -= phi ;
+ TH2F * histoRparticle = new TH2F("histoRparticle", histoname,
+ pdim, pm, pM, tdim, tm, tM) ;
+ histoRparticle->SetStats(kFALSE) ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> canvasname[80] ;
+ sprintf(canvasname, "Reconstructed particles in PHOSmodule # %d", module) ;
+ TCanvas * rparticlecanvas = new TCanvas("RparticleCanvas", canvasname, 650, 500) ;
+ <a href="../ListOfTypes.html#RecParticlesList">RecParticlesList</a> * rpl = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:RecParticles">RecParticles</a>() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nRecParticles = rpl->GetEntries() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nRecParticlesInModule = 0 ;
+ TIter nextRecPart(rpl) ;
+ <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> * rp ;
+ cout << "DisplayRecParticles > " << nRecParticles << " reconstructed particles " << endl ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kRADDEG = 180. / TMath::Pi() ;
+ while ( (rp = (<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> *)nextRecPart() ) ) {
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * ts = rp->GetPHOSTrackSegment() ;
+ if ( ts->GetPHOSMod() == module ) {
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> numberofprimaries = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * listofprimaries = rp->GetPrimaries(numberofprimaries) ;
+ cout << "Number of primaries = " << numberofprimaries << endl ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ for ( index = 0 ; index < numberofprimaries ; index++)
+ cout << " primary # " << index << " = " << listofprimaries[index] << endl ;
+
+ nRecParticlesInModule++ ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> theta = rp->Theta() * kRADDEG ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> phi = rp->Phi() * kRADDEG ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> energy = rp->Energy() ;
+ histoRparticle->Fill(phi, theta, energy) ;
+ }
+ }
+ histoRparticle->Draw("color") ;
+
+ nextRecPart.Reset() ;
+ while ( (rp = (<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> *)nextRecPart() ) ) {
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * ts = rp->GetPHOSTrackSegment() ;
+ if ( ts->GetPHOSMod() == module )
+ rp->Draw("P") ;
+ }
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> text[80] ;
+ sprintf(text, "reconstructed particles: %d", nRecParticlesInModule) ;
+ TPaveText * pavetext = new TPaveText(292, 100, 300, 101);
+ pavetext->AddText(text) ;
+ pavetext->Draw() ;
+ rparticlecanvas->Update() ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:DisplayRecPoints"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:DisplayRecPoints">AliPHOSAnalyze::DisplayRecPoints</a>()
+{
+<b> // Display reconstructed points in local PHOS-module (x, z) coordinates. </b>
+<b> // One PHOS module at the time.</b>
+<b> // Click on symbols displays the EMC cluster, or PPSD information.</b>
+
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> == -999) {
+ cout << "DisplayRecPoints > Analyze an event first ... (y/n) " ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> answer[1] ;
+ cin >> answer ; cout << answer ;
+ if ( answer == "y" )
+ <a href="#AliPHOSAnalyze:AnalyzeOneEvent">AnalyzeOneEvent</a>() ;
+ }
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> != -999) {
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> module ;
+ cout << "DisplayRecPoints > which module (1-5, -1: all) ? " ;
+ cin >> module ; cout << module << endl ;
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> canvasname[80];
+ sprintf(canvasname,"Digits in PHOS/EMC module # %d",module) ;
+ TCanvas * modulecanvas = new TCanvas("module", canvasname, 650, 500) ;
+ modulecanvas->Draw() ;
+
+<b> //=========== Creating 2d-histogram of the PHOS module</b>
+<b> // a little bit junkie but is used to test Geom functinalities</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> tm, tM, pm, pM ; // min and Max theta and phi covered by module
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(module, tm, tM, pm, pM);
+<b> // convert angles into coordinates local to the EMC module of interest</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> emcModuleNumber ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> emcModulexm, emcModulezm ; // minimum local coordinate in a given EMCA module
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> emcModulexM, emcModulezM ; // maximum local coordinate in a given EMCA module
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(tm, pm, emcModuleNumber, emcModulezm, emcModulexm) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(tM, pM, emcModuleNumber, emcModulezM, emcModulexM) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> xdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( ( emcModulexM - emcModulexm ) / <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> zdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( ( emcModulezM - emcModulezm ) / <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xmin = emcModulexm - <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xMax = emcModulexM + <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zmin = emcModulezm - <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zMax = emcModulezM + <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> histoname[80];
+ sprintf(histoname,"Event %d: Digits and RecPoints in module %d", <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a>, module) ;
+ TH2F * hModule = new TH2F("HistoReconstructed", histoname,
+ xdim, xmin, xMax, zdim, zmin, zMax) ;
+ hModule->SetMaximum(2.0);
+ hModule->SetMinimum(0.0);
+ hModule->SetStats(kFALSE);
+
+ TIter next(<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>->Digits()) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> energy, y, z;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> etot=0.;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4]; <a href="../ListOfTypes.html#Int_t">Int_t</a> nDigits = 0 ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+
+<b> // Making 2D histogram of the EMC module</b>
+ while((digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)next()))
+ {
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a>(digit->GetId(), relid) ;
+ if (relid[0] == module && relid[1] == 0)
+ {
+ energy = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:Calibrate">Calibrate</a>(digit->GetAmp()) ;
+ cout << "Energy is " << energy << " and threshold is " << <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:GetEmcEnergyThreshold">GetEmcEnergyThreshold</a>() << endl;
+ if (energy > <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fClu">fClu</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:GetEmcEnergyThreshold">GetEmcEnergyThreshold</a>() ){
+ nDigits++ ;
+ etot += energy ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelPosInModule">RelPosInModule</a>(relid,y,z) ;
+ hModule->Fill(y, z, energy) ;
+ }
+ }
+ }
+ cout <<"DrawRecPoints > Found in module "
+ << module << " " << nDigits << " digits with total energy " << etot << endl ;
+ hModule->Draw("col2") ;
+
+<b> //=========== Cluster in module</b>
+
+ TClonesArray * emcRP = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:EmcClusters">EmcClusters</a>() ;
+ etot = 0.;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> totalnClusters = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nClusters = 0 ;
+ TIter nextemc(emcRP) ;
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emc ;
+ while((emc = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *)nextemc()))
+ {
+<b> // <a href="../ListOfTypes.html#Int_t">Int_t</a> numberofprimaries ;</b>
+<b> // <a href="../ListOfTypes.html#Int_t">Int_t</a> * primariesarray = new <a href="../ListOfTypes.html#Int_t">Int_t</a>[10] ;</b>
+<b> // emc->GetPrimaries(numberofprimaries, primariesarray) ;</b>
+ totalnClusters++ ;
+ if ( emc->GetPHOSMod() == module )
+ {
+ nClusters++ ;
+ energy = emc->GetTotalEnergy() ;
+ etot+= energy ;
+ emc->Draw("M") ;
+ }
+ }
+ cout << "DrawRecPoints > Found " << totalnClusters << " EMC Clusters in PHOS" << endl ;
+ cout << "DrawRecPoints > Found in module " << module << " " << nClusters << " EMC Clusters " << endl ;
+ cout << "DrawRecPoints > total energy " << etot << endl ;
+
+ TPaveText * pavetext = new TPaveText(22, 80, 83, 90);
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> text[40] ;
+ sprintf(text, "digits: %d; clusters: %d", nDigits, nClusters) ;
+ pavetext->AddText(text) ;
+ pavetext->Draw() ;
+ modulecanvas->Update();
+
+<b> //=========== Cluster in module PPSD Down</b>
+
+ TClonesArray * ppsdRP = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:PpsdClusters">PpsdClusters</a>() ;
+ etot = 0.;
+ TIter nextPpsd(ppsdRP) ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsd ;
+ while((ppsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *)nextPpsd()))
+ {
+ totalnClusters++ ;
+ if ( ppsd->GetPHOSMod() == module )
+ {
+ nClusters++ ;
+ energy = ppsd->GetEnergy() ;
+ etot+=energy ;
+ if (!ppsd->GetUp()) ppsd->Draw("P") ;
+ }
+ }
+ cout << "DrawRecPoints > Found " << totalnClusters << " Ppsd Down Clusters in PHOS" << endl ;
+ cout << "DrawRecPoints > Found in module " << module << " " << nClusters << " Ppsd Down Clusters " << endl ;
+ cout << "DrawRecPoints > total energy " << etot << endl ;
+
+<b> //=========== Cluster in module PPSD Up</b>
+
+ ppsdRP = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:PpsdClusters">PpsdClusters</a>() ;
+ etot = 0.;
+ TIter nextPpsdUp(ppsdRP) ;
+ while((ppsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *)nextPpsdUp()))
+ {
+ totalnClusters++ ;
+ if ( ppsd->GetPHOSMod() == module )
+ {
+ nClusters++ ;
+ energy = ppsd->GetEnergy() ;
+ etot+=energy ;
+ if (ppsd->GetUp()) ppsd->Draw("P") ;
+ }
+ }
+ cout << "DrawRecPoints > Found " << totalnClusters << " Ppsd Up Clusters in PHOS" << endl ;
+ cout << "DrawRecPoints > Found in module " << module << " " << nClusters << " Ppsd Up Clusters " << endl ;
+ cout << "DrawRecPoints > total energy " << etot << endl ;
+
+ } // if !-999
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:DisplayTrackSegments"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:DisplayTrackSegments">AliPHOSAnalyze::DisplayTrackSegments</a>()
+{
+<b> // Display track segments in local PHOS-module (x, z) coordinates. </b>
+<b> // One PHOS module at the time.</b>
+<b> // One symbol per PHOS subsystem: EMC, upper PPSD, lower PPSD.</b>
+
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> == -999) {
+ cout << "DisplayTrackSegments > Analyze an event first ... (y/n) " ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> answer[1] ;
+ cin >> answer ; cout << answer ;
+ if ( answer == "y" )
+ <a href="#AliPHOSAnalyze:AnalyzeOneEvent">AnalyzeOneEvent</a>() ;
+ }
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a> != -999) {
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> module ;
+ cout << "DisplayTrackSegments > which module (1-5, -1: all) ? " ;
+ cin >> module ; cout << module << endl ;
+<b> //=========== Creating 2d-histogram of the PHOS module</b>
+<b> // a little bit junkie but is used to test Geom functinalities</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> tm, tM, pm, pM ; // min and Max theta and phi covered by module
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(module, tm, tM, pm, pM);
+<b> // convert angles into coordinates local to the EMC module of interest</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> emcModuleNumber ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> emcModulexm, emcModulezm ; // minimum local coordinate in a given EMCA module
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> emcModulexM, emcModulezM ; // maximum local coordinate in a given EMCA module
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(tm, pm, emcModuleNumber, emcModulezm, emcModulexm) ;
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">ImpactOnEmc</a>(tM, pM, emcModuleNumber, emcModulezM, emcModulexM) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> xdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( ( emcModulexM - emcModulexm ) / <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> zdim = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( ( emcModulezM - emcModulezm ) / <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xmin = emcModulexm - <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xMax = emcModulexM + <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zmin = emcModulezm - <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zMax = emcModulezM + <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> histoname[80];
+ sprintf(histoname,"Event %d: Track Segments in module %d", <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fEvt">fEvt</a>, module) ;
+ TH2F * histotrack = new TH2F("histotrack", histoname,
+ xdim, xmin, xMax, zdim, zmin, zMax) ;
+ histotrack->SetStats(kFALSE);
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> canvasname[80];
+ sprintf(canvasname,"Track segments in PHOS/EMC-PPSD module # %d", module) ;
+ TCanvas * trackcanvas = new TCanvas("TrackSegmentCanvas", canvasname, 650, 500) ;
+ histotrack->Draw() ;
+
+ <a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsegl = <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fPHOS">fPHOS</a>-><a href=".././AliPHOSv0.html#AliPHOSv0:TrackSegments">TrackSegments</a>() ;
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * trseg ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nTrackSegments = trsegl->GetEntries() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> etot = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nTrackSegmentsInModule = 0 ;
+ for(index = 0; index < nTrackSegments ; index++){
+ trseg = (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * )trsegl->At(index) ;
+ etot+= trseg->GetEnergy() ;
+ if ( trseg->GetPHOSMod() == module ) {
+ nTrackSegmentsInModule++ ;
+ trseg->Draw("P");
+ }
+ }
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> text[80] ;
+ sprintf(text, "track segments: %d", nTrackSegmentsInModule) ;
+ TPaveText * pavetext = new TPaveText(22, 80, 83, 90);
+ pavetext->AddText(text) ;
+ pavetext->Draw() ;
+ trackcanvas->Update() ;
+ cout << "DisplayTrackSegments > Found " << trsegl->GetEntries() << " Track segments with total energy "<< etot << endl ;
+
+ }
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:OpenRootFile"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:OpenRootFile">AliPHOSAnalyze::OpenRootFile</a>(<a href="../ListOfTypes.html#Text_t">Text_t</a> * name)
+{
+<b> // Open the root file named "name"</b>
+
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a> = new TFile(name, "update") ;
+ return <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->IsOpen() ;
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSAnalyze:SavingHistograms"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:SavingHistograms">AliPHOSAnalyze::SavingHistograms</a>()
+{
+<b> // Saves the histograms in a root file named "name.analyzed" </b>
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> outputname[80] ;
+ sprintf(outputname,"%s.analyzed",<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fRootFile">fRootFile</a>->GetName());
+ TFile output(outputname,"RECREATE");
+ output.cd();
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcDigit">fhEmcDigit</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoDigit">fhVetoDigit</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorDigit">fhConvertorDigit</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhEmcCluster">fhEmcCluster</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhVetoCluster">fhVetoCluster</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorCluster">fhConvertorCluster</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a> )
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhConvertorEmc">fhConvertorEmc</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonEnergy">fhPhotonEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonEnergy">fhPhotonEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionY">fhPhotonPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonPositionX">fhPhotonPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronEnergy">fhElectronEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronEnergy">fhElectronEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionY">fhElectronPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhElectronPositionX">fhElectronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronEnergy">fhNeutralHadronEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronEnergy">fhNeutralHadronEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionY">fhNeutralHadronPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralHadronPositionX">fhNeutralHadronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMEnergy">fhNeutralEMEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMEnergy">fhNeutralEMEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionY">fhNeutralEMPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhNeutralEMPositionX">fhNeutralEMPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronEnergy">fhChargedHadronEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronEnergy">fhChargedHadronEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionY">fhChargedHadronPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhChargedHadronPositionX">fhChargedHadronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronEnergy">fhPhotonHadronEnergy</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronEnergy">fhPhotonHadronEnergy</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a>->Write() ;
+ if (<a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionY">fhPhotonHadronPositionY</a>)
+ <a href=".././AliPHOSAnalyze.html#AliPHOSAnalyze:fhPhotonHadronPositionX">fhPhotonHadronPositionX</a>->Write() ;
+
+ output.Write();
+ output.Close();
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSClusterizer - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Base class for the clusterization algorithm (pure abstract)</b>
+<b>//</b>
+<b>//*-- Author: Yves Schutz SUBATECH </b>
+<b>//////////////////////////////////////////////////////////////////////////////</b>
+
+<b>// --- ROOT system ---</b>
+
+
+
+<b>// --- Standard library ---</b>
+
+
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSClusterizer.h">AliPHOSClusterizer.h</a>"
+
+ClassImp(AliPHOSClusterizer)
+
+<b>//____________________________________________________________________________</b>
+<a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:AliPHOSClusterizer">AliPHOSClusterizer::AliPHOSClusterizer</a>()
+{
+<b> // ctor</b>
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizer:~AliPHOSClusterizer"> </a><a href=".././AliPHOSClusterizer.html">AliPHOSClusterizer</a>::~<a href=".././AliPHOSClusterizer.html">AliPHOSClusterizer</a>()
+{
+<b> // dtor</b>
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSClusterizerv1 - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation version 1 of the clusterization algorithm </b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH) </b>
+<b>//////////////////////////////////////////////////////////////////////////////</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TMath.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSClusterizerv1.h">AliPHOSClusterizerv1.h</a>"
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+#include "<a href="../AliPHOSEmcRecPoint.h">AliPHOSEmcRecPoint.h</a>"
+#include "<a href="../AliPHOSPpsdRecPoint.h">AliPHOSPpsdRecPoint.h</a>"
+#include "<a href="../AliPHOSv0.h">AliPHOSv0.h</a>"
+#include "AliRun.h"
+
+ClassImp(AliPHOSClusterizerv1)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:AliPHOSClusterizerv1"> </a><a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:AliPHOSClusterizerv1">AliPHOSClusterizerv1::AliPHOSClusterizerv1</a>()
+{
+<b> // default ctor (to be used)</b>
+
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fA">fA</a> = 0.;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fB">fB</a> = 0.01 ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a> = 0 ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a> = 0 ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcClusteringThreshold">fEmcClusteringThreshold</a> = 0.1;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcEnergyThreshold">fEmcEnergyThreshold</a> = 0.01;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdClusteringThreshold">fPpsdClusteringThreshold</a> = 0.00000015;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdEnergyThreshold">fPpsdEnergyThreshold</a> = 0.0000001;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fW0">fW0</a> = 4.5 ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fLocMaxCut">fLocMaxCut</a> = 0.06 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:AreNeighbours"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:AreNeighbours">AliPHOSClusterizerv1::AreNeighbours</a>(<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * d1, <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * d2)
+{
+<b> // Gives the neighbourness of two digits = 0 are not neighbour but continue searching </b>
+<b> // = 1 are neighbour</b>
+<b> // = 2 are not neighbour but do not continue searching</b>
+<b> // neighbours are defined as digits having at least common vertex</b>
+<b> // The order of d1 and d2 is important: first (d1) should be a digit already in a cluster </b>
+<b> // which is compared to a digit (d2) not yet in a cluster </b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv = 0 ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid1[4] ;
+ geom->AbsToRelNumbering(d1->GetId(), relid1) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid2[4] ;
+ geom->AbsToRelNumbering(d2->GetId(), relid2) ;
+
+ if ( (relid1[0] == relid2[0]) && (relid1[1]==relid2[1]) ) { // inside the same PHOS module and the same PPSD Module
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rowdiff = TMath::Abs( relid1[2] - relid2[2] ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> coldiff = TMath::Abs( relid1[3] - relid2[3] ) ;
+
+ if (( coldiff <= 1 ) && ( rowdiff <= 1 )){
+ rv = 1 ;
+ }
+ else {
+ if((relid2[2] > relid1[2]) && (relid2[3] > relid1[3]+1))
+ rv = 2; // Difference in row numbers is too large to look further
+ }
+
+ }
+ else {
+
+ if( (relid1[0] < relid2[0]) || (relid1[1] < relid2[1]) )
+ rv=2 ;
+
+ }
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:FillandSort"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:FillandSort">AliPHOSClusterizerv1::FillandSort</a>(const <a href="../ListOfTypes.html#DigitsList">DigitsList</a> * dl, TObjArray * tl)
+{
+<b> // Copies the digits with energy above thershold and sorts the list</b>
+<b> // according to increasing Id number</b>
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ TIter next(dl) ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+
+
+
+
+ while ( (digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)next()) ) {
+
+<b>// cout << " clusterizerv1 " << endl ;</b>
+<b>// <a href="../ListOfTypes.html#int">int</a> nprim = digit->GetNprimary() ;</b>
+<b>// <a href="../ListOfTypes.html#int">int</a> * aprim = digit->GetPrimary() ;</b>
+<b>// for ( <a href="../ListOfTypes.html#int">int</a> ii = 0 ; ii < nprim ; ii++)</b>
+<b>// cout << ii << " prim = " << aprim[ii] << endl ;</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> id = digit->GetId() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ene = <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>(digit->GetAmp()) ;
+ geom->AbsToRelNumbering(id, relid) ;
+ if(relid[1]==0){ // EMC
+ if ( ene > <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcEnergyThreshold">fEmcEnergyThreshold</a> )
+ tl->Add(digit) ;
+ }
+
+ else { //Ppsd
+ if ( ene > <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdEnergyThreshold">fPpsdEnergyThreshold</a> )
+ tl->Add(digit) ;
+ }
+
+ }
+ tl->Sort() ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:GetNumberOfClustersFound"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:GetNumberOfClustersFound">AliPHOSClusterizerv1::GetNumberOfClustersFound</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> * numb)
+{
+<b> // Fills numb with the number of EMC (numb[0]) clusters found</b>
+<b> // PPSD (numb[1]) clusters found</b>
+
+ numb[0] = <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a> ;
+ numb[1] = <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a> ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:IsInEmc"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:IsInEmc">AliPHOSClusterizerv1::IsInEmc</a>(<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit)
+{
+<b> // Tells if (true) or not (false) the digit is in a PHOS-EMC module</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> rv = kFALSE ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ geom->AbsToRelNumbering(digit->GetId(), relid) ;
+
+ if ( relid[1] == 0 )
+ rv = kTRUE;
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:MakeClusters"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:MakeClusters">AliPHOSClusterizerv1::MakeClusters</a>(const <a href="../ListOfTypes.html#DigitsList">DigitsList</a> * dl, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * emcl, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl)
+{
+<b> // Steering method to construct the clusters stored in a list of Reconstructed Points</b>
+<b> // A cluster is defined as a list of neighbour digits</b>
+
+<b> // Fill and sort the working digits list</b>
+ TObjArray tempodigitslist( dl->GetEntries() ) ;
+ <a href="#AliPHOSClusterizerv1:FillandSort">FillandSort</a>(dl, &tempodigitslist) ;
+
+<b> // Clusterization starts </b>
+ TIter nextdigit(&tempodigitslist) ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> notremoved = kTRUE ;
+
+
+ while ( (digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)nextdigit()) ) { // scan over the list of digits
+ <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> * clu ;
+
+ <a href="../ListOfTypes.html#int">int</a> * clusterdigitslist[dl->GetEntries()] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ if (( ( <a href="#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a>(digit) ) && ( <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>(digit->GetAmp() ) > <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcClusteringThreshold">fEmcClusteringThreshold</a> ) ) ||
+ ( ( !<a href="#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a>(digit) ) && ( <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>(digit->GetAmp() ) > <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdClusteringThreshold">fPpsdClusteringThreshold</a> ) ) ) {
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigitInCluster = 0 ;
+
+ if ( <a href="#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a>(digit) ) {
+ new ((*emcl)[<a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a>]) <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>(<a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fW0">fW0</a>, <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fLocMaxCut">fLocMaxCut</a>) ; // start a new EMC RecPoint
+ clu = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *) (*emcl)[<a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a>] ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfEmcClusters">fNumberOfEmcClusters</a>++ ;
+ clu->AddDigit(*digit, <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>(digit->GetAmp())) ;
+
+ clusterdigitslist[iDigitInCluster] = (<a href="../ListOfTypes.html#int">int</a>* ) digit ;
+ iDigitInCluster++ ;
+ tempodigitslist.Remove(digit) ;
+
+
+ }
+
+ else {
+ new ((*ppsdl)[<a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a>]) <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>() ; // start a new PPSD cluster
+ clu = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) ppsdl->At(<a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a>) ;
+ <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fNumberOfPpsdClusters">fNumberOfPpsdClusters</a>++ ;
+ clu->AddDigit(*digit, <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>(digit->GetAmp()) ) ;
+ clusterdigitslist[iDigitInCluster] = (<a href="../ListOfTypes.html#int">int</a>* ) digit ;
+ iDigitInCluster++ ;
+ tempodigitslist.Remove(digit) ;
+ nextdigit.Reset() ;
+
+<b> // Here we remove resting EMC digits, which cannot make cluster</b>
+
+ if( notremoved ) {
+
+ while( ( digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)nextdigit() ) ) {
+
+ if( <a href="#AliPHOSClusterizerv1:IsInEmc">IsInEmc</a>(digit) )
+ tempodigitslist.Remove(digit) ;
+ else
+ break ;
+
+ } // while digit
+
+ } // if notremoved
+
+ } // else
+
+ nextdigit.Reset() ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digitN ;
+ index = 0 ;
+ while (index < iDigitInCluster){ // scan over digits already in cluster
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) clusterdigitslist[index] ;
+ index++ ;
+ while ( (digitN = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)nextdigit()) ) { // scan over the reduced list of digits
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ineb = <a href="#AliPHOSClusterizerv1:AreNeighbours">AreNeighbours</a>(digit, digitN); // call (digit,digitN) in THAT oder !!!!!
+ switch (ineb ) {
+ case 0 : // not a neighbour
+ break ;
+ case 1 : // are neighbours
+ clu->AddDigit( *digitN, <a href="#AliPHOSClusterizerv1:Calibrate">Calibrate</a>( digitN->GetAmp() ) ) ;
+ clusterdigitslist[iDigitInCluster] =(<a href="../ListOfTypes.html#int">int</a>*) digitN ;
+ iDigitInCluster++ ;
+ tempodigitslist.Remove(digitN) ;
+ break ;
+ case 2 : // too far from each other
+ goto endofloop;
+ } // switch
+
+ } // while digitN
+
+ endofloop: ;
+ nextdigit.Reset() ;
+
+ } // loop over cluster
+
+ } //below energy theshold
+
+ } // while digit
+
+ tempodigitslist.Clear() ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSClusterizerv1:PrintParameters"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:PrintParameters">AliPHOSClusterizerv1::PrintParameters</a>()
+{
+<b> // Print the energy thresholds </b>
+
+ cout << "PHOS Clusterizer version 1 :" << endl
+ << " EMC Clustering threshold = " << <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcClusteringThreshold">fEmcClusteringThreshold</a> << endl
+ << " EMC Energy threshold = " << <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fEmcEnergyThreshold">fEmcEnergyThreshold</a> << endl
+ << " PPSD Clustering threshold = " << <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdClusteringThreshold">fPpsdClusteringThreshold</a> << endl
+ << " PPSD Energy threshold = " << <a href=".././AliPHOSClusterizerv1.html#AliPHOSClusterizerv1:fPpsdEnergyThreshold">fPpsdEnergyThreshold</a> << endl ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSDigit - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// PHOS digit: Id</b>
+<b>// energy</b>
+<b>// 3 identifiers for the primary particle(s) at the origine of the digit</b>
+<b>// The digits are made in FinishEvent() by summing all the hits in a single PHOS crystal or PPSD gas cell</b>
+<b>// It would be nice to replace the 3 identifiers by an array, but, because digits are kept in a TClonesQArray,</b>
+<b>// it is not possible to stream such an array... (beyond my understqnding!)</b>
+<b>//</b>
+<b>//*-- Author: Laurent Aphecetche & Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+
+
+ClassImp(AliPHOSDigit)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSDigit:AliPHOSDigit"> </a> <a href=".././AliPHOSDigit.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit::AliPHOSDigit</a>()
+{
+<b> // default ctor </b>
+
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> = 0 ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> = -1 ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> = -1 ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> = -1 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSDigit:AliPHOSDigit"> </a><a href=".././AliPHOSDigit.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit::AliPHOSDigit</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> primary, <a href="../ListOfTypes.html#Int_t">Int_t</a> id, <a href="../ListOfTypes.html#Int_t">Int_t</a> DigEnergy)
+{
+<b> // ctor with all data </b>
+
+ fId = id ;
+ fAmp = DigEnergy ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> = primary ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> = 1 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSDigit:AliPHOSDigit"> </a><a href=".././AliPHOSDigit.html#AliPHOSDigit:AliPHOSDigit">AliPHOSDigit::AliPHOSDigit</a>(const <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> & digit)
+{
+<b> // copy ctor</b>
+
+ fId = digit.fId;
+ fAmp = digit.fAmp ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSDigit:Compare"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSDigit.html#AliPHOSDigit:Compare">AliPHOSDigit::Compare</a>(TObject * obj)
+{
+<b> // Compares two digits with respect to its Id</b>
+<b> // to sort according increasing Id</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)obj ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iddiff = fId - digit->GetId() ;
+
+ if ( iddiff > 0 )
+ rv = 1 ;
+ else if ( iddiff < 0 )
+ rv = -1 ;
+ else
+ rv = 0 ;
+
+ return rv ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSDigit:GetPrimary"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSDigit.html#AliPHOSDigit:GetPrimary">AliPHOSDigit::GetPrimary</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> index) const
+{
+<b> // Returns the primary particle id index =1,2,3</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv = -1 ;
+ if ( index > 3 )
+ cout << "<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> ERROR > only 3 primaries allowed" << endl ;
+ else {
+ switch (index) {
+ case 1 :
+ rv = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> ;
+ break ;
+ case 2 :
+ rv = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> ;
+ break ;
+ case 3 :
+ rv = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> ;
+ break ;
+ }
+ }
+
+ return rv ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSDigit.html#AliPHOSDigit:operator">AliPHOSDigit::operator</a>==(<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> const & digit) const
+{
+<b> // Two digits are equal if they have the same Id</b>
+
+ if ( fId == digit.fId )
+ return kTRUE ;
+ else
+ return kFALSE ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a href=".././AliPHOSDigit.html">AliPHOSDigit</a>& <a href=".././AliPHOSDigit.html#AliPHOSDigit:operator">AliPHOSDigit::operator</a>+(<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> const & digit)
+{
+<b> // Adds the amplitude of digits and completes the list of primary particles</b>
+
+ fAmp += digit.fAmp ;
+
+<b> // Here comes something crummy ... but I do not know how to stream pointers</b>
+<b> // because <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> is in a TCLonesArray</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> tempo1[3] ;
+ tempo1[0] = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> ;
+ tempo1[1] = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> ;
+ tempo1[2] = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> tempo2[3] ;
+ tempo2[0] = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> ;
+ tempo2[1] = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> ;
+ tempo2[2] = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> max1 = <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> max2 = digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> ;
+
+ if ( <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> >= 3 ) {
+ cout << "<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> + operator ERROR > too many primaries, modify <a href=".././AliPHOSDigit.html">AliPHOSDigit</a>" << endl ;
+ }
+ else {
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> += digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> ;
+ if ( <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> > 3 ) {
+ cout << "<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> + operator ERROR > too many primaries, modify <a href=".././AliPHOSDigit.html">AliPHOSDigit</a>" << endl ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fNprimary">fNprimary</a> = 3 ;
+ }
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> tempo3[3] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ for (index = 0 ; index < max1 ; index++)
+ tempo3[index] = tempo1[index] ;
+ for (index = 0 ; index < max2 ; index++)
+ tempo3[index+max1] = tempo2[index] ;
+
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> = tempo3[0] ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> = tempo3[1] ;
+ <a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> = tempo3[2] ;
+
+ }
+<b> // end of crummy stuff </b>
+
+ return *this ;
+}
+
+<b>//____________________________________________________________________________</b>
+ostream& operator << ( ostream& out , const <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> & digit)
+{
+<b> // Prints the data of the digit</b>
+
+ out << "ID " << digit.fId << " Energy = " << digit.fAmp << endl
+ << "Primary 1 = " << digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary1">fPrimary1</a> << endl
+ << "Primary 2 = " << digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary2">fPrimary2</a> << endl
+ << "Primary 3 = " << digit.<a href=".././AliPHOSDigit.html#AliPHOSDigit:fPrimary3">fPrimary3</a> << endl ;
+
+ return out ;
+}
+
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:48 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSEmcRecPoint - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// RecPoint implementation for PHOS-EMC </b>
+<b>// An EmcRecPoint is a cluster of digits </b>
+<b>// </b>
+<b>//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+#include "TPad.h"
+#include "TH2.h"
+#include "TMath.h"
+#include "TCanvas.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSGeometry.h">AliPHOSGeometry.h</a>"
+#include "<a href="../AliPHOSEmcRecPoint.h">AliPHOSEmcRecPoint.h</a>"
+#include "AliRun.h"
+
+ClassImp(AliPHOSEmcRecPoint)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:AliPHOSEmcRecPoint"> </a><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:AliPHOSEmcRecPoint">AliPHOSEmcRecPoint::AliPHOSEmcRecPoint</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> W0, <a href="../ListOfTypes.html#Float_t">Float_t</a> LocMaxCut)
+ : <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a>()
+{
+<b> // ctor</b>
+
+ fMulDigit = 0 ;
+ fAmp = 0. ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a> = new <a href="../ListOfTypes.html#Float_t">Float_t</a>[fMaxDigit];
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a> = phosgeom->GetCrystalSize(0) ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a> = W0 ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a> = LocMaxCut ;
+ fLocPos.SetX(1000000.) ; //Local position should be evaluated
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:AddDigit"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:AddDigit">AliPHOSEmcRecPoint::AddDigit</a>(AliDigitNew & digit, <a href="../ListOfTypes.html#Float_t">Float_t</a> Energy)
+{
+<b> // Adds a digit to the RecPoint</b>
+<b> // and accumulates the total amplitude and the multiplicity </b>
+
+ if ( fMulDigit >= fMaxDigit ) { // increase the size of the lists
+ fMaxDigit*=2 ;
+ <a href="../ListOfTypes.html#int">int</a> * tempo = new ( <a href="../ListOfTypes.html#int">int</a>[fMaxDigit] ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> * tempoE = new ( <a href="../ListOfTypes.html#Float_t">Float_t</a>[fMaxDigit] ) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ for ( index = 0 ; index < fMulDigit ; index++ ){
+ tempo[index] = fDigitsList[index] ;
+ tempoE[index] = <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[index] ;
+ }
+
+ delete [] fDigitsList ;
+ fDigitsList = new ( <a href="../ListOfTypes.html#int">int</a>[fMaxDigit] ) ;
+
+ delete [] <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a> ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a> = new ( <a href="../ListOfTypes.html#Float_t">Float_t</a>[fMaxDigit] ) ;
+
+ for ( index = 0 ; index < fMulDigit ; index++ ){
+ fDigitsList[index] = tempo[index] ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[index] = tempoE[index] ;
+ }
+
+ delete [] tempo ;
+ delete [] tempoE ;
+ } // if
+
+ fDigitsList[fMulDigit] = (<a href="../ListOfTypes.html#int">int</a>) &digit ;
+ <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[fMulDigit++] = Energy ;
+ fAmp += Energy ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:AreNeighbours"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:AreNeighbours">AliPHOSEmcRecPoint::AreNeighbours</a>(<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit1, <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit2 )
+{
+<b> // Tells if (true) or not (false) two digits are neighbors)</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> aren = kFALSE ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid1[4] ;
+ phosgeom->AbsToRelNumbering(digit1->GetId(), relid1) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid2[4] ;
+ phosgeom->AbsToRelNumbering(digit2->GetId(), relid2) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rowdiff = TMath::Abs( relid1[2] - relid2[2] ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> coldiff = TMath::Abs( relid1[3] - relid2[3] ) ;
+
+ if (( coldiff <= 1 ) && ( rowdiff <= 1 ) && (coldiff + rowdiff > 0))
+ aren = kTRUE ;
+
+ return aren ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:Compare"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:Compare">AliPHOSEmcRecPoint::Compare</a>(TObject * obj)
+{
+<b> // Compares two RecPoints according to their position in the PHOS modules</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv ;
+
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * clu = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *)obj ;
+
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmod1 = this->GetPHOSMod() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmod2 = clu->GetPHOSMod() ;
+
+ TVector3 locpos1;
+ this-><a href="#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(locpos1) ;
+ TVector3 locpos2;
+ clu-><a href="#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(locpos2) ;
+
+ if(phosmod1 == phosmod2 ) {
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rowdif = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil(locpos1.X()/<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a>)-(<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil(locpos2.X()/<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a>) ;
+ if (rowdif> 0)
+ rv = -1 ;
+ else if(rowdif < 0)
+ rv = 1 ;
+ else if(locpos1.Z()>locpos2.Z())
+ rv = -1 ;
+ else
+ rv = 1 ;
+ }
+
+ else {
+ if(phosmod1 < phosmod2 )
+ rv = -1 ;
+ else
+ rv = 1 ;
+ }
+
+ return rv ;
+}
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:ExecuteEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:ExecuteEvent">AliPHOSEmcRecPoint::ExecuteEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> event, <a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Execute action corresponding to one event</b>
+<b> // This member function is called when a <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> is clicked with the locator</b>
+<b> //</b>
+<b> // If Left button is clicked on <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on </b>
+<b> // and switched off when the mouse button is released.</b>
+<b> //</b>
+
+<b> // static <a href="../ListOfTypes.html#Int_t">Int_t</a> pxold, pyold;</b>
+
+ static TGraph * digitgraph = 0 ;
+
+ if (!gPad->IsEditable()) return;
+
+ TH2F * histo = 0 ;
+ TCanvas * histocanvas ;
+
+ switch (event) {
+
+ case kButton1Down: {
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi[fMulDigit] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi[fMulDigit] ;
+
+<b> // create the histogram for the single cluster </b>
+<b> // 1. gets histogram boundaries</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ximax = -999. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zimax = -999. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ximin = 999. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zimin = 999. ;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi[iDigit], zi[iDigit]);
+ if ( xi[iDigit] > ximax )
+ ximax = xi[iDigit] ;
+ if ( xi[iDigit] < ximin )
+ ximin = xi[iDigit] ;
+ if ( zi[iDigit] > zimax )
+ zimax = zi[iDigit] ;
+ if ( zi[iDigit] < zimin )
+ zimin = zi[iDigit] ;
+ }
+ ximax += phosgeom->GetCrystalSize(0) / 2. ;
+ zimax += phosgeom->GetCrystalSize(2) / 2. ;
+ ximin -= phosgeom->GetCrystalSize(0) / 2. ;
+ zimin -= phosgeom->GetCrystalSize(2) / 2. ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> xdim = (<a href="../ListOfTypes.html#int">int</a>)( (ximax - ximin ) / phosgeom->GetCrystalSize(0) + 0.5 ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> zdim = (<a href="../ListOfTypes.html#int">int</a>)( (zimax - zimin ) / phosgeom->GetCrystalSize(2) + 0.5 ) ;
+
+<b> // 2. gets the histogram title</b>
+
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> title[100] ;
+ sprintf(title,"Energy=%1.2f GeV ; Digits ; %d ", GetEnergy(), GetDigitsMultiplicity()) ;
+
+ if (!histo) {
+ delete histo ;
+ histo = 0 ;
+ }
+ histo = new TH2F("cluster3D", title, xdim, ximin, ximax, zdim, zimin, zimax) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x, z ;
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, x, z);
+ histo->Fill(x, z, <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] ) ;
+ }
+
+ if (!digitgraph) {
+ digitgraph = new TGraph(fMulDigit,xi,zi);
+ digitgraph-> SetMarkerStyle(5) ;
+ digitgraph-> SetMarkerSize(1.) ;
+ digitgraph-> SetMarkerColor(1) ;
+ digitgraph-> Paint("P") ;
+ }
+
+ <a href="#AliPHOSEmcRecPoint:Print">Print</a>() ;
+ histocanvas = new TCanvas("cluser", "a single cluster", 600, 500) ;
+ histocanvas->Draw() ;
+ histo->Draw("lego1") ;
+
+ break;
+ }
+
+ case kButton1Up:
+ if (digitgraph) {
+ delete digitgraph ;
+ digitgraph = 0 ;
+ }
+ break;
+
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetDispersion"> </a><a href="../ListOfTypes.html#Float_t">Float_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetDispersion">AliPHOSEmcRecPoint::GetDispersion</a>()
+{
+<b> // Calculates the dispersion of the shower at the origine of the RecPoint</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> d = 0 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wtot = 0 ;
+
+ TVector3 locpos;
+ <a href="#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(locpos);
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = locpos.X() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = locpos.Z() ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> w = TMath::Max(0.,<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a>+TMath::Log(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit]/fAmp ) ) ;
+ d += w*((xi-x)*(xi-x) + (zi-z)*(zi-z) ) ;
+ wtot+=w ;
+ }
+
+ d /= wtot ;
+
+ return TMath::Sqrt(d) ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetElipsAxis"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetElipsAxis">AliPHOSEmcRecPoint::GetElipsAxis</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> * lambda)
+{
+<b> // Calculates the axis of the shower ellipsoid</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wtot = 0. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = 0.;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = 0.;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dxx = 0.;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dzz = 0.;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dxz = 0.;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> w = TMath::Max(0.,<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a>+TMath::Log(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit]/fAmp ) ) ;
+ dxx += w * xi * xi ;
+ x += w * xi ;
+ dzz += w * zi * zi ;
+ z += w * zi ;
+ dxz += w * xi * zi ;
+ wtot += w ;
+ }
+
+ dxx /= wtot ;
+ x /= wtot ;
+ dxx -= x * x ;
+ dzz /= wtot ;
+ z /= wtot ;
+ dzz -= z * z ;
+ dxz /= wtot ;
+ dxz -= x * z ;
+
+ lambda[0] = TMath::Sqrt( 0.5 * (dxx + dzz) + TMath::Sqrt( 0.25 * (dxx - dzz) * (dxx - dzz) + dxz * dxz ) ) ;
+ lambda[1] = TMath::Sqrt( 0.5 * (dxx + dzz) - TMath::Sqrt( 0.25 * (dxx - dzz) * (dxx - dzz) + dxz * dxz ) ) ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetLocalPosition"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">AliPHOSEmcRecPoint::GetLocalPosition</a>(TVector3 &LPos)
+{
+<b> // Calculates the center of gravity in the local PHOS-module coordinates </b>
+
+ if( fLocPos.X() < 1000000.) { // already evaluated
+ LPos = fLocPos ;
+ return ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> wtot = 0. ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = 0. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = 0. ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> w = TMath::Max( 0., <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a> + TMath::Log( <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] / fAmp ) ) ;
+ x += xi * w ;
+ z += zi * w ;
+ wtot += w ;
+
+ }
+
+ x /= wtot ;
+ z /= wtot ;
+ fLocPos.SetX(x) ;
+ fLocPos.SetY(0.) ;
+ fLocPos.SetZ(z) ;
+
+ LPos = fLocPos ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetMaximalEnergy"> </a><a href="../ListOfTypes.html#Float_t">Float_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetMaximalEnergy">AliPHOSEmcRecPoint::GetMaximalEnergy</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Finds the maximum energy in the cluster</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> menergy = 0. ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+
+ if(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] > menergy)
+ menergy = <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] ;
+ }
+ return menergy ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetMultiplicityAtLevel"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetMultiplicityAtLevel">AliPHOSEmcRecPoint::GetMultiplicityAtLevel</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> H)
+{
+<b> // Calculates the multiplicity of digits with energy larger than H*energy </b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> multipl = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit ;
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+
+ if(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] > H * fAmp)
+ multipl++ ;
+ }
+ return multipl ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:GetNumberOfLocalMax"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetNumberOfLocalMax">AliPHOSEmcRecPoint::GetNumberOfLocalMax</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> * maxAt, <a href="../ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy)
+{
+<b> // Calculates the number of local maxima in the cluster using fLocalMaxCut as the minimum</b>
+<b> // energy difference between two local maxima</b>
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digitN ;
+
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigitN ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit ;
+
+ for(iDigit = 0; iDigit < fMulDigit; iDigit++){
+ maxAt[iDigit] = fDigitsList[iDigit] ;
+ }
+
+ for(iDigit = 0 ; iDigit < fMulDigit; iDigit++) {
+ if(maxAt[iDigit] != -1) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) maxAt[iDigit] ;
+
+ for(iDigitN = 0; iDigitN < fMulDigit; iDigitN++) {
+ digitN = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigitN] ;
+
+ if ( <a href="#AliPHOSEmcRecPoint:AreNeighbours">AreNeighbours</a>(digit, digitN) ) {
+ if (<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] > <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigitN] ) {
+ maxAt[iDigitN] = -1 ;
+<b> // but may be digit too is not local max ?</b>
+ if(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] < <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigitN] + <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a>)
+ maxAt[iDigit] = -1 ;
+ }
+ else {
+ maxAt[iDigit] = -1 ;
+<b> // but may be digitN too is not local max ?</b>
+ if(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] > <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigitN] - <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a>)
+ maxAt[iDigitN] = -1 ;
+ }
+ } // if Areneighbours
+ } // while digitN
+ } // slot not empty
+ } // while digit
+
+ iDigitN = 0 ;
+ for(iDigit = 0; iDigit < fMulDigit; iDigit++) {
+ if(maxAt[iDigit] != -1){
+ maxAt[iDigitN] = maxAt[iDigit] ;
+ maxAtEnergy[iDigitN] = <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] ;
+ iDigitN++ ;
+ }
+ }
+ return iDigitN ;
+}
+
+
+<b>// //____________________________________________________________________________</b>
+<b>// <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>& <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:operator">AliPHOSEmcRecPoint::operator</a> = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> Clu) </b>
+<b>// {</b>
+<b>// <a href="../ListOfTypes.html#int">int</a> * dl = Clu.GetDigitsList() ; </b>
+
+<b>// if(fDigitsList) </b>
+<b>// delete fDigitsList ;</b>
+
+<b>// <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;</b>
+
+<b>// <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;</b>
+
+<b>// for(iDigit=0; iDigit<fMulDigit; iDigit++) {</b>
+<b>// digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) dl[iDigit];</b>
+<b>// <a href="#AliPHOSEmcRecPoint:AddDigit">AddDigit</a>(*digit) ;</b>
+<b>// }</b>
+
+<b>// fAmp = Clu.<a href="#AliPHOSEmcRecPoint:GetTotalEnergy">GetTotalEnergy</a>() ;</b>
+<b>// fGeom = Clu.GetGeom() ;</b>
+<b>// TVector3 locpos;</b>
+<b>// Clu.<a href="#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(locpos) ;</b>
+<b>// fLocPos = locpos;</b>
+<b>// fMulDigit = Clu.<a href="#AliPHOSEmcRecPoint:GetMultiplicity">GetMultiplicity</a>() ;</b>
+<b>// fMaxDigit = Clu.<a href="#AliPHOSEmcRecPoint:GetMaximumMultiplicity">GetMaximumMultiplicity</a>() ;</b>
+<b>// <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> = Clu.GetPHOSMod() ;</b>
+<b>// <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a> = Clu.<a href="#AliPHOSEmcRecPoint:GetLogWeightCut">GetLogWeightCut</a>() ; </b>
+<b>// <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a> = Clu.<a href="#AliPHOSEmcRecPoint:GetDelta">GetDelta</a>() ;</b>
+<b>// <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a> = Clu.<a href="#AliPHOSEmcRecPoint:GetLocMaxCut">GetLocMaxCut</a>() ;</b>
+
+<b>// delete dl ; </b>
+
+<b>// return *this ;</b>
+<b>// }</b>
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:Print"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:Print">AliPHOSEmcRecPoint::Print</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> * option)
+{
+<b> // Print the list of digits belonging to the cluster</b>
+
+ cout << "<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>: " << endl ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ cout << " Id = " << digit->GetId() ;
+ cout << " module = " << relid[0] ;
+ cout << " x = " << xi ;
+ cout << " z = " << zi ;
+ cout << " Energy = " << <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>[iDigit] << endl ;
+ }
+ cout << " Multiplicity = " << fMulDigit << endl ;
+ cout << " Cluster Energy = " << fAmp << endl ;
+
+}
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSEmcRecPoint:Streamer"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:Streamer">AliPHOSEmcRecPoint::Streamer</a>(TBuffer &R__b)
+{
+<b> // Stream an object of class <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>.</b>
+<b> // Needed because of the array <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a></b>
+
+ if (R__b.IsReading()) {
+ <a href="../ListOfTypes.html#Version_t">Version_t</a> R__v = R__b.ReadVersion(); if (R__v) { }
+ <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:Streamer">AliPHOSRecPoint::Streamer</a>(R__b);
+ R__b >> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a>;
+ R__b >> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a>;
+ R__b.ReadArray(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>);
+ R__b >> <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a>;
+ } else {
+ R__b.WriteVersion(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:IsA">AliPHOSEmcRecPoint::IsA</a>());
+ <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:Streamer">AliPHOSRecPoint::Streamer</a>(R__b);
+ R__b << <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fDelta">fDelta</a>;
+ R__b << <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fLocMaxCut">fLocMaxCut</a>;
+ R__b.WriteArray(<a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fEnergyList">fEnergyList</a>, GetMaximumDigitMultiplicity() );
+ R__b << <a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:fW0">fW0</a>;
+ }
+}
+
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:55 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSFastRecParticle - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// A Particle modified by PHOS response and produced by <a href=".././AliPHOSvFast.html">AliPHOSvFast</a></b>
+<b>// To become a general class of AliRoot ? </b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSFastRecParticle.h">AliPHOSFastRecParticle.h</a>"
+#include "TPad.h"
+#include "TPaveText.h"
+
+ClassImp(AliPHOSFastRecParticle)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:AliPHOSFastRecParticle"> </a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle::AliPHOSFastRecParticle</a>(const <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+{
+<b> // copy ctor</b>
+
+ <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a> = rp.<a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a> ;
+ fPdgCode = rp.fPdgCode;
+ fStatusCode = rp.fStatusCode;
+ fMother[0] = rp.fMother[0];
+ fMother[1] = rp.fMother[1];
+ fDaughter[0] = rp.fDaughter[0];
+ fDaughter[1] = rp.fDaughter[1];
+ fWeight = rp.fWeight;
+ fCalcMass = rp.fCalcMass;
+ fPx = rp.fPx;
+ fPy = rp.fPy;
+ fPz = rp.fPz;
+ fE = rp.fE;
+ fVx = rp.fVx;
+ fVy = rp.fVy;
+ fVz = rp.fVz;
+ fVt = rp.fVt;
+ fPolarTheta = rp.fPolarTheta;
+ fPolarPhi = rp.fPolarPhi;
+ fParticlePDG = rp.fParticlePDG;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:AliPHOSFastRecParticle"> </a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:AliPHOSFastRecParticle">AliPHOSFastRecParticle::AliPHOSFastRecParticle</a>(const TParticle & pp)
+{
+<b> // ctor from a TParticle (crummy?!)</b>
+
+ TParticle & pnoconst = const_cast<TParticle &>(pp) ;
+ <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & p = static_cast<<a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>&>(pnoconst) ;
+
+ fPdgCode = p.fPdgCode;
+ fStatusCode = p.fStatusCode;
+ fMother[0] = p.fMother[0];
+ fMother[1] = p.fMother[1];
+ fDaughter[0] = p.fDaughter[0];
+ fDaughter[1] = p.fDaughter[1];
+ fWeight = p.fWeight;
+ fCalcMass = p.fCalcMass;
+ fPx = p.fPx;
+ fPy = p.fPy;
+ fPz = p.fPz;
+ fE = p.fE;
+ fVx = p.fVx;
+ fVy = p.fVy;
+ fVz = p.fVz;
+ fVt = p.fVt;
+ fPolarTheta = p.fPolarTheta;
+ fPolarPhi = p.fPolarPhi;
+ fParticlePDG = p.fParticlePDG;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:DistancetoPrimitive"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:DistancetoPrimitive">AliPHOSFastRecParticle::DistancetoPrimitive</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Compute distance from point px,py to a <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> considered as a Tmarker</b>
+<b> // Compute the closest distance of approach from point px,py to this marker.</b>
+<b> // The distance is computed in pixels units.</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kRADDEG = 180. / TMath::Pi() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> x = Phi() * kRADDEG ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> y = Theta() * kRADDEG ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kMaxDiff = 10;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pxm = gPad->XtoAbsPixel(x);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pym = gPad->YtoAbsPixel(y);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> dist = (px-pxm)*(px-pxm) + (py-pym)*(py-pym);
+
+ if (dist > kMaxDiff) return 9999;
+ return dist;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:Draw"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:Draw">AliPHOSFastRecParticle::Draw</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *option)
+ {
+<b> // Draw this <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> with its current attributes</b>
+
+ AppendPad(option);
+ }
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:ExecuteEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:ExecuteEvent">AliPHOSFastRecParticle::ExecuteEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> event, <a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Execute action corresponding to one event</b>
+<b> // This member function is called when a <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> is clicked with the locator</b>
+
+ if (!gPad->IsEditable())
+ return ;
+
+ static TPaveText * clustertext = 0 ;
+
+ switch (event) {
+
+ case kButton1Down: {
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kRADDEG = 180. / TMath::Pi() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> x = Phi() * kRADDEG ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> y = Theta() * kRADDEG ;
+ clustertext = new TPaveText(x-1, y+1, x+5, y+3, "") ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> line1[40] ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> line2[40] ;
+ sprintf( line1, "PID: %s ", (const <a href="../ListOfTypes.html#char">char</a>*)<a href="#AliPHOSFastRecParticle:Name">Name</a>() ) ;
+ sprintf( line2, "ENERGY: %f ", Energy() ) ;
+ clustertext ->AddText(line1) ;
+ clustertext ->AddText(line2) ;
+ clustertext -><a href="#AliPHOSFastRecParticle:Draw">Draw</a>("");
+ gPad->Update() ;
+ break ;
+ }
+
+ case kButton1Up: {
+ delete clustertext ;
+ clustertext = 0 ;
+ gPad->Update() ;
+ break ;
+ }
+
+ }
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:GetPrimaries"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:GetPrimaries">AliPHOSFastRecParticle::GetPrimaries</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Retrieves the unique primary particle at the origine of the present reconstruced particle</b>
+
+ number = 1 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * list = new <a href="../ListOfTypes.html#Int_t">Int_t</a>[1] ;
+ list[0] = <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fPrimary">fPrimary</a> ;
+
+ return list ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:Name"> </a>TString <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:Name">AliPHOSFastRecParticle::Name</a>()
+{
+<b> // Returns the name of the particle type</b>
+
+ TString name ;
+ switch (<a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a>) {
+ case kGAMMA:
+ name = "PHOTON" ;
+ break ;
+ case kELECTRON:
+ name = "ELECTRON" ;
+ break ;
+ case kNEUTRAL:
+ name = "NEUTRAL" ;
+ break ;
+ case kCHARGEDHADRON:
+ name = "CHARGED HADRON" ;
+ break ;
+ case kNEUTRALHADRON:
+ name = "NEUTRAL HADRON" ;
+ break ;
+ case kNEUTRALEM:
+ name = "NEUTRAL EM" ;
+ break ;
+ case kGAMMAHADRON:
+ name = "PHOTON HADRON" ;
+ break ;
+
+ }
+ return name ;
+}
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:Paint"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:Paint">AliPHOSFastRecParticle::Paint</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *)
+{
+<b> // Paint this ALiRecParticle in theta,phi coordinate as a TMarker with its current attributes</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kRADDEG = 180. / TMath::Pi() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> x = Phi() * kRADDEG ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> y = Theta() * kRADDEG ;
+ <a href="../ListOfTypes.html#Color_t">Color_t</a> markercolor = 1 ;
+ <a href="../ListOfTypes.html#Size_t">Size_t</a> markersize = 1. ;
+ <a href="../ListOfTypes.html#Style_t">Style_t</a> markerstyle = 5 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor) ;
+ gVirtualX->SetMarkerSize (markersize) ;
+ gVirtualX->SetMarkerStyle(markerstyle) ;
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize) ;
+ gPad->PaintPolyMarker(1,&x,&y,"") ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSFastRecParticle:Print"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:Print">AliPHOSFastRecParticle::Print</a>()
+{
+<b> // Print the typr, energy and momentum</b>
+
+ cout << "<a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> > " << "type is " << <a href="#AliPHOSFastRecParticle:Name">Name</a>() << endl
+ << " " << "Energy = " << fE << endl
+ << " " << "Px = " << fPx << endl
+ << " " << "Py = " << fPy << endl
+ << " " << "Pz = " << fPz << endl ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSGeometry - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Geometry class for PHOS : singleton </b>
+<b>// The EMC modules are parametrized so that any configuration can be easily implemented </b>
+<b>// The title is used to identify the type of CPV used. So far only PPSD implemented</b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TVector3.h"
+#include "TRotation.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSGeometry.h">AliPHOSGeometry.h</a>"
+#include "<a href="../AliPHOSPpsdRecPoint.h">AliPHOSPpsdRecPoint.h</a>"
+#include "AliConst.h"
+
+ClassImp(AliPHOSGeometry)
+
+ AliPHOSGeometry * AliPHOSGeometry::fGeom = 0 ;
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:~AliPHOSGeometry"> </a><a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a>::~<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // dtor</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fRotMatrixArray">fRotMatrixArray</a>->Delete() ;
+ delete <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fRotMatrixArray">fRotMatrixArray</a> ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:AbsToRelNumbering"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:AbsToRelNumbering">AliPHOSGeometry::AbsToRelNumbering</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> AbsId, <a href="../ListOfTypes.html#Int_t">Int_t</a> * relid)
+{
+<b> // Converts the absolute numbering into the following array/</b>
+<b> // relid[0] = PHOS Module number 1:<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> </b>
+<b> // relid[1] = 0 if PbW04</b>
+<b> // = PPSD Module number 1:<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a>*<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a>*2 (2->up and bottom level)</b>
+<b> // relid[2] = Row number inside a PHOS or PPSD module</b>
+<b> // relid[3] = Column number inside a PHOS or PPSD module</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> rv = kTRUE ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> id = AbsId ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmodulenumber = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath:: Ceil( id / ( <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() ) ) ;
+
+ if ( phosmodulenumber > <a href="#AliPHOSGeometry:GetNModules">GetNModules</a>() ) { // its a PPSD pad
+
+ id -= <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() * <a href="#AliPHOSGeometry:GetNModules">GetNModules</a>() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> tempo = 2 * <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() ;
+ relid[0] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil( id / tempo ) ;
+ id -= ( relid[0] - 1 ) * tempo ;
+ relid[1] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil( id / ( <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() ) ) ;
+ id -= ( relid[1] - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() ;
+ relid[2] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil( id / <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() ) ;
+ relid[3] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>) ( id - ( relid[2] - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() ) ;
+ }
+ else { // its a PW04 crystal
+
+ relid[0] = phosmodulenumber ;
+ relid[1] = 0 ;
+ id -= ( phosmodulenumber - 1 ) * <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() ;
+ relid[2] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil( id / <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() ) ;
+ relid[3] = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)( id - ( relid[2] - 1 ) * <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() ) ;
+ }
+ return rv ;
+}
+<b>//____________________________________________________________________________ </b>
+<a name="AliPHOSGeometry:EmcModuleCoverage"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcModuleCoverage">AliPHOSGeometry::EmcModuleCoverage</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> mod, <a href="../ListOfTypes.html#Double_t">Double_t</a> & tm, <a href="../ListOfTypes.html#Double_t">Double_t</a> & tM, <a href="../ListOfTypes.html#Double_t">Double_t</a> & pm, <a href="../ListOfTypes.html#Double_t">Double_t</a> & pM, <a href="../ListOfTypes.html#Option_t">Option_t</a> * opt)
+{
+<b> // calculates the angular coverage in theta and phi of a EMC module</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> conv ;
+ if ( opt == kRadian )
+ conv = 1. ;
+ else if ( opt == kDegre )
+ conv = 180. / TMath::Pi() ;
+ else {
+ cout << "<I> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcXtalCoverage">AliPHOSGeometry::EmcXtalCoverage</a> : " << opt << " unknown option; result in radian " << endl ;
+ conv = 1. ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> phi = <a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(mod) * (TMath::Pi() / 180.) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y0 = <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ + <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ;
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> angle = TMath::ATan( <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0)*<a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() / (2 * y0) ) ;
+ phi = phi + 1.5 * TMath::Pi() ; // to follow the convention of the particle generator(PHOS is between 230 and 310 deg.)
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> max = phi - angle ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> min = phi + angle ;
+ pM = TMath::Max(max, min) * conv ;
+ pm = TMath::Min(max, min) * conv ;
+
+ angle = TMath::ATan( <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2)*<a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() / (2 * y0) ) ;
+ max = TMath::Pi() / 2. + angle ; // to follow the convention of the particle generator(PHOS is at 90 deg.)
+ min = TMath::Pi() / 2. - angle ;
+ tM = TMath::Max(max, min) * conv ;
+ tm = TMath::Min(max, min) * conv ;
+
+}
+
+<b>//____________________________________________________________________________ </b>
+<a name="AliPHOSGeometry:EmcXtalCoverage"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcXtalCoverage">AliPHOSGeometry::EmcXtalCoverage</a>(<a href="../ListOfTypes.html#Double_t">Double_t</a> & theta, <a href="../ListOfTypes.html#Double_t">Double_t</a> & phi, <a href="../ListOfTypes.html#Option_t">Option_t</a> * opt)
+{
+<b> // calculates the angular coverage in theta and phi of a single crystal in a EMC module</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> conv ;
+ if ( opt == kRadian )
+ conv = 1. ;
+ else if ( opt == kDegre )
+ conv = 180. / TMath::Pi() ;
+ else {
+ cout << "<I> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:EmcXtalCoverage">AliPHOSGeometry::EmcXtalCoverage</a> : " << opt << " unknown option; result in radian " << endl ;
+ conv = 1. ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y0 = <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ + <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ;
+ theta = 2 * TMath::ATan( <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) / (2 * y0) ) * conv ;
+ phi = 2 * TMath::ATan( <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) / (2 * y0) ) * conv ;
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:ImpactOnEmc"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:ImpactOnEmc">AliPHOSGeometry::ImpactOnEmc</a>(const <a href="../ListOfTypes.html#Double_t">Double_t</a> theta, const <a href="../ListOfTypes.html#Double_t">Double_t</a> phi, <a href="../ListOfTypes.html#Int_t">Int_t</a> & ModuleNumber, <a href="../ListOfTypes.html#Double_t">Double_t</a> & z, <a href="../ListOfTypes.html#Double_t">Double_t</a> & x)
+{
+<b> // calculates the impact coordinates of a neutral particle </b>
+<b> // emitted in direction theta and phi in ALICE</b>
+
+<b> // searches for the PHOS EMC module</b>
+ ModuleNumber = 0 ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> tm, tM, pm, pM ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index = 1 ;
+ while ( ModuleNumber == 0 && index <= <a href="#AliPHOSGeometry:GetNModules">GetNModules</a>() ) {
+ <a href="#AliPHOSGeometry:EmcModuleCoverage">EmcModuleCoverage</a>(index, tm, tM, pm, pM) ;
+ if ( (theta >= tm && theta <= tM) && (phi >= pm && phi <= pM ) )
+ ModuleNumber = index ;
+ index++ ;
+ }
+ if ( ModuleNumber != 0 ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> phi0 = <a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(ModuleNumber) * (TMath::Pi() / 180.) + 1.5 * TMath::Pi() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y0 = <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ + <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> angle = phi - phi0;
+ x = y0 * TMath::Tan(angle) ;
+ angle = theta - TMath::Pi() / 2 ;
+ z = y0 * TMath::Tan(angle) ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:GetGlobal"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGlobal">AliPHOSGeometry::GetGlobal</a>(const AliRecPoint* RecPoint, TVector3 & gpos, TMatrix & gmat)
+{
+<b> // Calculates the ALICE global coordinates of a RecPoint and the error matrix</b>
+
+ <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> * tmpPHOS = (<a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> *) RecPoint ;
+ TVector3 localposition ;
+
+ tmpPHOS->GetLocalPosition(gpos) ;
+
+
+ if ( tmpPHOS->IsEmc() ) // it is a EMC crystal
+ { gpos.SetY( -(<a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() +
+ <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>()) ) ;
+
+ }
+ else
+ { // it is a PPSD pad
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * tmpPpsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) RecPoint ;
+ if (tmpPpsd->GetUp() ) // it is an upper module
+ {
+ gpos.SetY(-( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() -
+ <a href="#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>() - <a href="#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() -
+ <a href="#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() - <a href="#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() / 2.0 ) ) ;
+ }
+ else // it is a lower module
+ gpos.SetY(-( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() / 2.0) ) ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> phi = <a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>( tmpPHOS->GetPHOSMod()) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> rphi = phi / kRADDEG ;
+
+ TRotation rot ;
+ rot.RotateZ(-rphi) ; // a rotation around Z by angle
+
+ TRotation dummy = rot.Invert() ; // to transform from original frame to rotate frame
+ gpos.Transform(rot) ; // rotate the baby
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:GetGlobal"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGlobal">AliPHOSGeometry::GetGlobal</a>(const AliRecPoint* RecPoint, TVector3 & gpos)
+{
+<b> // Calculates the ALICE global coordinates of a RecPoint </b>
+
+ <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> * tmpPHOS = (<a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> *) RecPoint ;
+ TVector3 localposition ;
+ tmpPHOS->GetLocalPosition(gpos) ;
+
+
+ if ( tmpPHOS->IsEmc() ) // it is a EMC crystal
+ { gpos.SetY( -(<a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() +
+ <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>()) ) ;
+ }
+ else
+ { // it is a PPSD pad
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * tmpPpsd = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) RecPoint ;
+ if (tmpPpsd->GetUp() ) // it is an upper module
+ {
+ gpos.SetY(-( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() -
+ <a href="#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>() - <a href="#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() -
+ <a href="#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() - <a href="#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() / 2.0 ) ) ;
+ }
+ else // it is a lower module
+ gpos.SetY(-( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() / 2.0) ) ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> phi = <a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>( tmpPHOS->GetPHOSMod()) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> rphi = phi / kRADDEG ;
+
+ TRotation rot ;
+ rot.RotateZ(-rphi) ; // a rotation around Z by angle
+
+ TRotation dummy = rot.Invert() ; // to transform from original frame to rotate frame
+ gpos.Transform(rot) ; // rotate the baby
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:Init"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:Init">AliPHOSGeometry::Init</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Initializes the PHOS parameters</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fRotMatrixArray">fRotMatrixArray</a> = new TObjArray(<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a>) ;
+
+ cout << "PHOS geometry setup: parameters for option " << fName << " " << fTitle << endl ;
+ if ( ((strcmp( fName, "default" )) == 0) || ((strcmp( fName, "GPS2" )) == 0) ) {
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fInit">fInit</a> = kTRUE ;
+ this-><a href="#AliPHOSGeometry:InitPHOS">InitPHOS</a>() ;
+ this-><a href="#AliPHOSGeometry:InitPPSD">InitPPSD</a>() ;
+ this-><a href="#AliPHOSGeometry:SetPHOSAngles">SetPHOSAngles</a>() ;
+ }
+ else {
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fInit">fInit</a> = kFALSE ;
+ cout << "PHOS Geometry setup: option not defined " << fName << endl ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:InitPHOS"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:InitPHOS">AliPHOSGeometry::InitPHOS</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Initializes the EMC parameters</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNPhi">fNPhi</a> = 64 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNZ">fNZ</a> = 64 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> = 5 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPHOSAngle">fPHOSAngle</a>[0] = 0.0 ; // Module position angles are set in CreateGeometry()
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPHOSAngle">fPHOSAngle</a>[1] = 0.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPHOSAngle">fPHOSAngle</a>[2] = 0.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPHOSAngle">fPHOSAngle</a>[3] = 0.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[0] = 2.2 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[1] = 18.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[2] = 2.2 ;
+
+<b> // all these numbers coming next are subject to changes</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[0] = 2.8 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[1] = 5.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[2] = 5.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fUpperPlateThickness">fUpperPlateThickness</a> = 4.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fSecondUpperPlateThickness">fSecondUpperPlateThickness</a> = 5.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalSupportHeight">fCrystalSupportHeight</a> = 6.95 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalWrapThickness">fCrystalWrapThickness</a> = 0.01 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalHolderThickness">fCrystalHolderThickness</a> = 0.005 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fModuleBoxThickness">fModuleBoxThickness</a> = 2.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fIPtoOuterCoverDistance">fIPtoOuterCoverDistance</a> = 447.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fIPtoCrystalSurface">fIPtoCrystalSurface</a> = 460.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPinDiodeSize">fPinDiodeSize</a>[0] = 1.71 ; //Values given by Odd Harald feb 2000
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPinDiodeSize">fPinDiodeSize</a>[1] = 0.0280 ; // 0.0280 is the depth of active layer in the silicon
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPinDiodeSize">fPinDiodeSize</a>[2] = 1.61 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fUpperCoolingPlateThickness">fUpperCoolingPlateThickness</a> = 0.06 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fSupportPlateThickness">fSupportPlateThickness</a> = 10.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLowerThermoPlateThickness">fLowerThermoPlateThickness</a> = 3.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLowerTextolitPlateThickness">fLowerTextolitPlateThickness</a> = 1.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGapBetweenCrystals">fGapBetweenCrystals</a> = 0.03 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[0] = 1.5 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[1] = 0.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[2] = 3.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[0] = 1.56 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[1] = 20.5175 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[2] = 2.48 ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtalModulePhiSize = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNPhi">fNPhi</a> * ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[0] + 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGapBetweenCrystals">fGapBetweenCrystals</a> ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtalModuleZSize = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNZ">fNZ</a> * ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[2] + 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGapBetweenCrystals">fGapBetweenCrystals</a> ) ;
+
+<b> // The next dimensions are calculated from the above parameters</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[0] = xtalModulePhiSize + 2 * ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[0] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fModuleBoxThickness">fModuleBoxThickness</a>
+ + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[0] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[0] ) ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[1] = ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fXtlSize">fXtlSize</a>[1] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalSupportHeight">fCrystalSupportHeight</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalWrapThickness">fCrystalWrapThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCrystalHolderThickness">fCrystalHolderThickness</a> )
+ + 2 * (<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[1] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fModuleBoxThickness">fModuleBoxThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[1] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[1] ) ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[2] = xtalModuleZSize + 2 * ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirThickness">fAirThickness</a>[2] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fModuleBoxThickness">fModuleBoxThickness</a>
+ + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[2] + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[2] ) ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[0] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[0] - 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[0] ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[1] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[1] - <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[1] - <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fUpperPlateThickness">fUpperPlateThickness</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[2] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[2] - 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxThickness">fOuterBoxThickness</a>[2] ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirFilledBoxSize">fAirFilledBoxSize</a>[0] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[0] - 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[0] ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirFilledBoxSize">fAirFilledBoxSize</a>[1] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[1] - <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fSecondUpperPlateThickness">fSecondUpperPlateThickness</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAirFilledBoxSize">fAirFilledBoxSize</a>[2] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxSize">fTextolitBoxSize</a>[2] - 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fTextolitBoxThickness">fTextolitBoxThickness</a>[2] ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:InitPPSD"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:InitPPSD">AliPHOSGeometry::InitPPSD</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Initializes the PPSD parameters</b>
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAnodeThickness">fAnodeThickness</a> = 0.0009 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAvalancheGap">fAvalancheGap</a> = 0.01 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCathodeThickness">fCathodeThickness</a> = 0.0009 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCompositeThickness">fCompositeThickness</a> = 0.3 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fConversionGap">fConversionGap</a> = 0.6 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadConverterThickness">fLeadConverterThickness</a> = 0.56 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadToMicro2Gap">fLeadToMicro2Gap</a> = 0.1 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLidThickness">fLidThickness</a> = 0.2 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicro1ToLeadGap">fMicro1ToLeadGap</a> = 0.1 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegasWallThickness">fMicromegasWallThickness</a> = 0.6 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a> = 4 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a> = 4 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsPhi">fNumberOfPadsPhi</a> = 24 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsZ">fNumberOfPadsZ</a> = 24 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPCThickness">fPCThickness</a> = 0.1 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPhiDisplacement">fPhiDisplacement</a> = 0.8 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fZDisplacement">fZDisplacement</a> = 0.8 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas1Thickness">fMicromegas1Thickness</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLidThickness">fLidThickness</a> + 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCompositeThickness">fCompositeThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fCathodeThickness">fCathodeThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPCThickness">fPCThickness</a>
+ + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAnodeThickness">fAnodeThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fConversionGap">fConversionGap</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fAvalancheGap">fAvalancheGap</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas2Thickness">fMicromegas2Thickness</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas1Thickness">fMicromegas1Thickness</a> ;
+
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize</a>[0] = 38.0 ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize</a>[1] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas1Thickness">fMicromegas1Thickness</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize</a>[2] = 38.0 ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDBoxSize">fPPSDBoxSize</a>[0] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize</a>[0] + 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPhiDisplacement">fPhiDisplacement</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDBoxSize">fPPSDBoxSize</a>[1] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas2Thickness">fMicromegas2Thickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicromegas2Thickness">fMicromegas2Thickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadConverterThickness">fLeadConverterThickness</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fMicro1ToLeadGap">fMicro1ToLeadGap</a> + <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadToMicro2Gap">fLeadToMicro2Gap</a> ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDBoxSize">fPPSDBoxSize</a>[2] = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDModuleSize">fPPSDModuleSize</a>[2] + 2 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fZDisplacement">fZDisplacement</a> ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fIPtoTopLidDistance">fIPtoTopLidDistance</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fIPtoOuterCoverDistance">fIPtoOuterCoverDistance</a> - <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPPSDBoxSize">fPPSDBoxSize</a>[1] - 1. ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:GetInstance"> </a><a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>()
+{
+<b> // Returns the pointer of the unique instance</b>
+
+ return (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a> ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:GetInstance"> </a><a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>(const <a href="../ListOfTypes.html#Text_t">Text_t</a>* name, const <a href="../ListOfTypes.html#Text_t">Text_t</a>* title)
+{
+<b> // Returns the pointer of the unique instance</b>
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * rv = 0 ;
+ if ( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a> == 0 ) {
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a> = new <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a>(name, title) ;
+ rv = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * ) <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a> ;
+ }
+ else {
+ if ( strcmp(<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a>->GetName(), name) != 0 ) {
+ cout << "<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> <E> : current geometry is " << <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a>->GetName() << endl
+ << " you cannot call " << name << endl ;
+ }
+ else
+ rv = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fGeom">fGeom</a> ;
+ }
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:RelToAbsNumbering"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">AliPHOSGeometry::RelToAbsNumbering</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> * relid, <a href="../ListOfTypes.html#Int_t">Int_t</a> & AbsId)
+{
+<b> // Converts the relative numbering into the absolute numbering</b>
+<b> // AbsId = 1:<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNPhi">fNPhi</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNZ">fNZ</a> -> PbWO4</b>
+<b> // AbsId = 1:<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> * 2 * (<a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesPhi">fNumberOfModulesPhi</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfModulesZ">fNumberOfModulesZ</a>) * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsPhi">fNumberOfPadsPhi</a> * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNumberOfPadsZ">fNumberOfPadsZ</a> -> PPSD</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> rv = kTRUE ;
+
+ if ( relid[1] > 0 ) { // its a PPSD pad
+
+ AbsId = <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() * <a href="#AliPHOSGeometry:GetNModules">GetNModules</a>() // the offset to separate emcal crystals from PPSD pads
+ + ( relid[0] - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() // the pads offset of PHOS modules
+ * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() * 2
+ + ( relid[1] - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() // the pads offset of PPSD modules
+ + ( relid[2] - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>() // the pads offset of a PPSD row
+ + relid[3] ; // the column number
+ }
+ else {
+ if ( relid[1] == 0 ) { // its a Phos crystal
+ AbsId = ( relid[0] - 1 ) * <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() // the offset of PHOS modules
+ + ( relid[2] - 1 ) * <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>() // the offset of a xtal row
+ + relid[3] ; // the column number
+ }
+ }
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+
+<a name="AliPHOSGeometry:RelPosInAlice"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelPosInAlice">AliPHOSGeometry::RelPosInAlice</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> id, TVector3 & pos )
+{
+<b> // Converts the absolute numbering into the global ALICE coordinates</b>
+
+ if (id > 0) {
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href="#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a>(id , relid) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmodule = relid[0] ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y0 = 0 ;
+
+ if ( relid[1] == 0 ) // it is a PbW04 crystal
+ { y0 = -(<a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href="#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ + <a href="#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + <a href="#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>()) ;
+ }
+ if ( relid[1] > 0 ) { // its a PPSD pad
+ if ( relid[1] > <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() ) // its an bottom module
+ {
+ y0 = -( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() / 2.0) ;
+ }
+ else // its an upper module
+ y0 = -( <a href="#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href="#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() - <a href="#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>()
+ - <a href="#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() - <a href="#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() - <a href="#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() / 2.0) ;
+ }
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x, z ;
+ <a href="#AliPHOSGeometry:RelPosInModule">RelPosInModule</a>(relid, x, z) ;
+
+ pos.SetX(x) ;
+ pos.SetZ(z) ;
+ pos.SetY( TMath::Sqrt(x*x + z*z + y0*y0) ) ;
+
+
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> phi = <a href="#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>( phosmodule) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> rphi = phi / kRADDEG ;
+
+ TRotation rot ;
+ rot.RotateZ(-rphi) ; // a rotation around Z by angle
+
+ TRotation dummy = rot.Invert() ; // to transform from original frame to rotate frame
+
+ pos.Transform(rot) ; // rotate the baby
+ }
+ else {
+ pos.SetX(0.);
+ pos.SetY(0.);
+ pos.SetZ(0.);
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:RelPosInModule"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelPosInModule">AliPHOSGeometry::RelPosInModule</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> * relid, <a href="../ListOfTypes.html#Float_t">Float_t</a> & x, <a href="../ListOfTypes.html#Float_t">Float_t</a> & z)
+{
+<b> // Converts the relative numbering into the local PHOS-module (x, z) coordinates</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ppsdmodule ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> row = relid[2] ; //offset along z axiz
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> column = relid[3] ; //offset along x axiz
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> padsizeZ = <a href="#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2)/ <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>();
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> padsizeX = <a href="#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0)/ <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>();
+
+ if ( relid[1] == 0 ) { // its a PbW04 crystal
+ x = -( <a href="#AliPHOSGeometry:GetNPhi">GetNPhi</a>()/2. - row + 0.5 ) * <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ; // position ox Xtal with respect
+ z = ( <a href="#AliPHOSGeometry:GetNZ">GetNZ</a>() /2. - column + 0.5 ) * <a href="#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ; // of center of PHOS module
+ }
+ else {
+ if ( relid[1] > <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() )
+ ppsdmodule = relid[1]-<a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>();
+ else ppsdmodule = relid[1] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> modrow = 1+(<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil( (<a href="../ListOfTypes.html#Float_t">Float_t</a>)ppsdmodule / <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>()-1. ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> modcol = ppsdmodule - ( modrow - 1 ) * <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x0 = ( <a href="#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() / 2. - modrow + 0.5 ) * <a href="#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z0 = ( <a href="#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() / 2. - modcol + 0.5 ) * <a href="#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ;
+ x = - ( <a href="#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>()/2. - row - 0.5 ) * padsizeX + x0 ; // position of pad with respect
+ z = ( <a href="#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>()/2. - column - 0.5 ) * padsizeZ - z0 ; // of center of PHOS module
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:SetPHOSAngles"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:SetPHOSAngles">AliPHOSGeometry::SetPHOSAngles</a>()
+{
+<b> // Calculates the position in ALICE of the PHOS modules</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> pphi = TMath::ATan( <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fOuterBoxSize">fOuterBoxSize</a>[0] / ( 2.0 * <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fIPtoOuterCoverDistance">fIPtoOuterCoverDistance</a> ) ) ;
+ pphi *= kRADDEG ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> ; i++ ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = pphi * 2 * ( i - <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fNModules">fNModules</a> / 2.0 - 0.5 ) ;
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fPHOSAngle">fPHOSAngle</a>[i-1] = - angle ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSGeometry:SetLeadConverterThickness"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:SetLeadConverterThickness">AliPHOSGeometry::SetLeadConverterThickness</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> e)
+{
+<b> // should ultimately disappear </b>
+
+ cout << " <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> WARNING : You have changed LeadConverterThickness from "
+ << <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadConverterThickness">fLeadConverterThickness</a> << " to " << e << endl ;
+
+ <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:fLeadConverterThickness">fLeadConverterThickness</a> = e ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSHit - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Hits class for PHOS </b>
+<b>// A hit in PHOS is the sum of all hits in a single crystal</b>
+<b>// </b>
+<b>//*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+#include <cstdio>
+#include <cstring>
+#include <cstdlib>
+#include <strstream>
+
+<b>// --- AliRoot header files ---</b>
+#include "<a href="../AliPHOSHit.h">AliPHOSHit.h</a>"
+#include "AliRun.h"
+#include "AliConst.h"
+
+
+ClassImp(AliPHOSHit)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSHit:AliPHOSHit"> </a><a href=".././AliPHOSHit.html#AliPHOSHit:AliPHOSHit">AliPHOSHit::AliPHOSHit</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> primary, <a href="../ListOfTypes.html#Int_t">Int_t</a> id, <a href="../ListOfTypes.html#Float_t">Float_t</a> *hits)
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSHit.html#AliPHOSHit:fId">fId</a> = id ;
+ fX = hits[0] ;
+ fY = hits[1] ;
+ fZ = hits[2] ;
+ <a href=".././AliPHOSHit.html#AliPHOSHit:fELOS">fELOS</a> = hits[3] ;
+ <a href=".././AliPHOSHit.html#AliPHOSHit:fPrimary">fPrimary</a> = primary ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSHit.html#AliPHOSHit:operator">AliPHOSHit::operator</a>==(<a href=".././AliPHOSHit.html">AliPHOSHit</a> const &rValue) const
+{
+<b> // Two hits are identical if they have the same Id and originate from the same primary</b>
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> rv = kFALSE ;
+
+ if ( <a href=".././AliPHOSHit.html#AliPHOSHit:fId">fId</a> == rValue.<a href="#AliPHOSHit:GetId">GetId</a>() && <a href=".././AliPHOSHit.html#AliPHOSHit:fPrimary">fPrimary</a> == rValue.<a href="#AliPHOSHit:GetPrimary">GetPrimary</a>() )
+ rv = kTRUE;
+
+ return rv;
+}
+
+<b>//____________________________________________________________________________</b>
+<a href=".././AliPHOSHit.html">AliPHOSHit</a> <a href=".././AliPHOSHit.html#AliPHOSHit:operator">AliPHOSHit::operator</a>+(const <a href=".././AliPHOSHit.html">AliPHOSHit</a> &rValue) const
+{
+<b> // Add the energy of the hit</b>
+
+ <a href=".././AliPHOSHit.html">AliPHOSHit</a> added(*this);
+
+ added.fX = rValue.fX ;
+ added.fY = rValue.fY ;
+ added.fZ = rValue.fZ ;
+
+ added.<a href=".././AliPHOSHit.html#AliPHOSHit:fELOS">fELOS</a> += rValue.<a href="#AliPHOSHit:GetEnergy">GetEnergy</a>() ;
+
+ return added;
+
+}
+
+<b>//____________________________________________________________________________</b>
+ostream& operator << (ostream& out, const <a href=".././AliPHOSHit.html">AliPHOSHit</a>& hit)
+{
+<b> // Print out Id and energy </b>
+
+ out << "<a href=".././AliPHOSHit.html">AliPHOSHit</a> = " << hit.<a href="#AliPHOSHit:GetId">GetId</a>() << " " << hit.<a href="#AliPHOSHit:GetEnergy">GetEnergy</a>() << endl ;
+ return out ;
+}
+
+
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:49 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSLink - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Algorithm class used only by <a href=".././AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> </b>
+<b>// </b>
+<b>//*-- Author: Dmitri Peressounko (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSLink.h">AliPHOSLink.h</a>"
+
+ClassImp(AliPHOSLink)
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSLink:AliPHOSLink"> </a> <a href=".././AliPHOSLink.html#AliPHOSLink:AliPHOSLink">AliPHOSLink::AliPHOSLink</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> r, <a href="../ListOfTypes.html#Int_t">Int_t</a> Emc, <a href="../ListOfTypes.html#Int_t">Int_t</a> Ppsd)
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSLink.html#AliPHOSLink:fR">fR</a> = r ;
+ <a href=".././AliPHOSLink.html#AliPHOSLink:fEmcN">fEmcN</a> = Emc ;
+ <a href=".././AliPHOSLink.html#AliPHOSLink:fPpsdN">fPpsdN</a> = Ppsd ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSLink:Compare"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSLink.html#AliPHOSLink:Compare">AliPHOSLink::Compare</a>(TObject * obj)
+{
+<b> // Compare according to the distance between EMC and PPSD RecPoints in a track segment </b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv ;
+
+ <a href=".././AliPHOSLink.html">AliPHOSLink</a> * link = (<a href=".././AliPHOSLink.html">AliPHOSLink</a> *) obj ;
+
+ if(this-><a href=".././AliPHOSLink.html#AliPHOSLink:fR">fR</a> < link-><a href="#AliPHOSLink:GetR">GetR</a>() )
+ rv = -1 ;
+ else
+ rv = 1 ;
+
+ return rv ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPID - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Algorithm class for the identification of particles detected in PHOS </b>
+<b>// base class </b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+
+
+<b>// --- Standard library ---</b>
+
+
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSPID.h">AliPHOSPID.h</a>"
+
+ClassImp(AliPHOSPID)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPID:AliPHOSPID"> </a><a href=".././AliPHOSPID.html#AliPHOSPID:AliPHOSPID">AliPHOSPID::AliPHOSPID</a>()
+{
+<b> // ctor</b>
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPID:~AliPHOSPID"> </a><a href=".././AliPHOSPID.html">AliPHOSPID</a>::~<a href=".././AliPHOSPID.html">AliPHOSPID</a>()
+{
+<b> // dtor</b>
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPIDv1 - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation version v1 of the PHOS particle identifier </b>
+<b>// Identification is based on information from PPSD and EMC</b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSPIDv1.h">AliPHOSPIDv1.h</a>"
+#include "<a href="../AliPHOSTrackSegment.h">AliPHOSTrackSegment.h</a>"
+#include "<a href="../AliPHOSRecParticle.h">AliPHOSRecParticle.h</a>"
+
+ClassImp( AliPHOSPIDv1)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPIDv1:MakeParticles"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:MakeParticles">AliPHOSPIDv1::MakeParticles</a>(<a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl, <a href="../ListOfTypes.html#RecParticlesList">RecParticlesList</a> * rpl)
+{
+<b> // Makes a RecParticle out of a TrackSegment</b>
+
+ TIter next(trsl) ;
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * tracksegment ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index = 0 ;
+ <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> * rp ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> type ;
+
+ while ( (tracksegment = (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> *)next()) ) {
+ new( (*rpl)[index] ) <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a>(tracksegment) ;
+ rp = (<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> *)(*rpl)[index] ;
+
+<b> // try to figure out the type of particle:</b>
+<b> // 1. just looking at the PPSD information </b>
+ if( tracksegment->GetPpsdUp() == 0 ) { // Neutral
+
+ if( tracksegment->GetPpsdLow() == 0 ) // Neutral
+ type = kNEUTRAL ;
+ else { // check the shower profile
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * recp = tracksegment->GetEmcRecPoint() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> * lambda = new <a href="../ListOfTypes.html#Float_t">Float_t</a>[2];
+ recp->GetElipsAxis(lambda) ;
+ if ( ( lambda[0] > <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1m">fLambda1m</a> && lambda[0] < <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1M">fLambda1M</a> ) && // shower profile cut
+ ( lambda[1] > <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2m">fLambda2m</a> && lambda[1] < <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2M">fLambda2M</a> ) )
+ type = kGAMMA ; // a well identified photon
+ else
+ type = kGAMMAHADRON ; // looks like a photon but is a hadron (most likely)
+ }
+ } // Neutral
+ else // Charged
+ type = kCHARGED ;
+
+<b> // 2. from the shower profile analysis</b>
+ if ( type == kNEUTRAL ) {
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * recp = tracksegment->GetEmcRecPoint() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> * lambda = new <a href="../ListOfTypes.html#Float_t">Float_t</a>[2];
+ recp->GetElipsAxis(lambda) ;
+ if ( ( lambda[0] > <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1m">fLambda1m</a> && lambda[0] < <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1M">fLambda1M</a> ) && // shower profile cut
+ ( lambda[1] > <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2m">fLambda2m</a> && lambda[1] < <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2M">fLambda2M</a> ) )
+ type = kNEUTRALEM ;
+ else
+ type = kNEUTRALHADRON ;
+ delete lambda ;
+ }
+
+<b> // 3. from the shower dispersion </b>
+ if (type == kCHARGED) {
+ if( tracksegment->GetEmcRecPoint()->GetDispersion() > <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fCutOnDispersion">fCutOnDispersion</a>) // shower dispersion cut
+ type = kCHARGEDHADRON ;
+ else
+ type = kELECTRON ;
+ }
+ rp->SetType(type) ;
+ index++ ;
+ }
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPIDv1:Print"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:Print">AliPHOSPIDv1::Print</a>()
+{
+<b> // Print the parameters used for the particle type identification</b>
+
+ cout << "<a href=".././AliPHOSPIDv1.html">AliPHOSPIDv1</a> : cuts for the particle idendification based on the shower profile " << endl
+ << <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1m">fLambda1m</a> << " < value1 < " << <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1M">fLambda1M</a> << endl
+ << <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2m">fLambda2m</a> << " < value2 < " << <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2M">fLambda2M</a> << endl ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPIDv1:SetShowerProfileCuts"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:SetShowerProfileCuts">AliPHOSPIDv1::SetShowerProfileCuts</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> l1m, <a href="../ListOfTypes.html#Float_t">Float_t</a> l1M, <a href="../ListOfTypes.html#Float_t">Float_t</a> l2m, <a href="../ListOfTypes.html#Float_t">Float_t</a> l2M)
+{
+<b> // Modifies the parameters used for the particle type identification</b>
+
+ <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1m">fLambda1m</a> = l1m ;
+ <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda1M">fLambda1M</a> = l1M ;
+ <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2m">fLambda2m</a> = l2m ;
+ <a href=".././AliPHOSPIDv1.html#AliPHOSPIDv1:fLambda2M">fLambda2M</a> = l2M ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSPpsdRecPoint - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// A RecPoint (cluster) in the PPSD </b>
+<b>// A PPSD RecPoint ends up to be a single digit</b>
+<b>// </b>
+<b>//*-- Yves Schutz (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TPad.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSGeometry.h">AliPHOSGeometry.h</a>"
+#include "<a href="../AliPHOSPpsdRecPoint.h">AliPHOSPpsdRecPoint.h</a>"
+#include "AliRun.h"
+
+ClassImp(AliPHOSPpsdRecPoint)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint"> </a><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:AliPHOSPpsdRecPoint">AliPHOSPpsdRecPoint::AliPHOSPpsdRecPoint</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // ctor</b>
+
+ fMulDigit = 0 ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+ <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:fDelta">fDelta</a> = geom->GetCrystalSize(0) ;
+ fLocPos.SetX(1000000.) ; //Local position should be evaluated
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:AddDigit"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:AddDigit">AliPHOSPpsdRecPoint::AddDigit</a>(AliDigitNew & digit, <a href="../ListOfTypes.html#Float_t">Float_t</a> Energy)
+{
+<b> // adds a digit to the digits list</b>
+<b> // and accumulates the total amplitude and the multiplicity </b>
+
+
+ if ( fMulDigit >= fMaxDigit ) { // increase the size of the lists
+ fMaxDigit*=2 ;
+ <a href="../ListOfTypes.html#int">int</a> * tempo = new ( <a href="../ListOfTypes.html#int">int</a>[fMaxDigit] ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+
+ for ( index = 0 ; index < fMulDigit ; index++ )
+ tempo[index] = fDigitsList[index] ;
+
+ delete [] fDigitsList ;
+ fDigitsList = new ( <a href="../ListOfTypes.html#int">int</a>[fMaxDigit] ) ;
+
+ for ( index = 0 ; index < fMulDigit ; index++ )
+ fDigitsList[index] = tempo[index] ;
+
+ delete [] tempo ;
+ }
+
+ fDigitsList[fMulDigit++] = (<a href="../ListOfTypes.html#int">int</a>) &digit ;
+ fAmp += Energy ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:Compare"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:Compare">AliPHOSPpsdRecPoint::Compare</a>(TObject * obj)
+{
+<b> // Compares according to the position</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv ;
+
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * clu = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *)obj ;
+
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x1 , z1 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x2 , z2 ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmod1 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmod2 ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> up1 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> up2 ;
+
+ if(<a href="#AliPHOSPpsdRecPoint:GetUp">GetUp</a>()) // upper layer
+ up1 = 0 ;
+ else // lower layer
+ up1 = 1 ;
+
+ if(clu-><a href="#AliPHOSPpsdRecPoint:GetUp">GetUp</a>()) // upper layer
+ up2 = 0 ;
+ else // lower layer
+ up2 = 1 ;
+
+ TVector3 posloc ;
+ this-><a href="#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(posloc) ;
+ x1 = posloc.X() ;
+ z1 = posloc.Z() ;
+ phosmod1 = this->GetPHOSMod();
+ clu-><a href="#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(posloc) ;
+ x2 = posloc.X() ;
+ z2 = posloc.Z() ;
+ phosmod2 = clu->GetPHOSMod();
+
+ if(phosmod1 == phosmod2 ) {
+
+ if(up1 == up2 ){
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rowdif = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil(x1/<a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:fDelta">fDelta</a>) - (<a href="../ListOfTypes.html#Int_t">Int_t</a>) TMath::Ceil(x2/<a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:fDelta">fDelta</a>) ;
+
+ if (rowdif> 0)
+ rv = -1 ;
+ else if(rowdif < 0)
+ rv = 1 ;
+ else if(z1>z2)
+ rv = -1 ;
+ else
+ rv = 1 ;
+ }
+
+ else {
+
+ if(up1 < up2 ) // Upper level first (up = True or False, True > False)
+ rv = 1 ;
+ else
+ rv = - 1 ;
+ }
+
+ } // if phosmod1 == phosmod2
+
+ else {
+
+ if(phosmod1 < phosmod2 )
+ rv = -1 ;
+ else
+ rv = 1 ;
+
+}
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:GetLocalPosition"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">AliPHOSPpsdRecPoint::GetLocalPosition</a>(TVector3 &LPos)
+{
+<b> // Calculates the local position in the PHOS-PPSD-module corrdinates</b>
+
+ if( fLocPos.X() < 1000000.) { //allready evaluated
+ LPos = fLocPos ;
+ return ;
+ }
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = 0. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = 0. ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+
+ for(iDigit = 0; iDigit < fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ x += xi ;
+ z += zi ;
+ }
+
+ x /= fMulDigit ;
+ z /= fMulDigit ;
+
+ fLocPos.SetX(x) ;
+ fLocPos.SetY(0.) ;
+ fLocPos.SetZ(z) ;
+
+ LPos = fLocPos ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:GetUp"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetUp">AliPHOSPpsdRecPoint::GetUp</a>()
+{
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)fDigitsList[0] ;
+
+ phosgeom->AbsToRelNumbering(digit->GetId(),relid);
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> up ;
+
+ if((<a href="../ListOfTypes.html#Int_t">Int_t</a>)TMath::Ceil((<a href="../ListOfTypes.html#Float_t">Float_t</a>)relid[1]/
+ (phosgeom->GetNumberOfModulesPhi()*phosgeom->GetNumberOfModulesZ())-0.0001 ) > 1)
+ up = kFALSE ;
+ else
+ up = kTRUE ;
+
+ return up ;
+}
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:Paint"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:Paint">AliPHOSPpsdRecPoint::Paint</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *)
+{
+<b> //*-*-*-*-*-*-*-*-*-*-*Paint this ALiRecPoint as a TMarker with its current attributes*-*-*-*-*-*-*</b>
+<b> //*-* =============================================</b>
+
+ TVector3 pos(0.,0.,0.) ;
+ <a href="#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(pos) ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> x = pos.X() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> y = pos.Z() ;
+ <a href="../ListOfTypes.html#Color_t">Color_t</a> markercolor = 1 ;
+ <a href="../ListOfTypes.html#Size_t">Size_t</a> markersize = 1. ;
+ <a href="../ListOfTypes.html#Style_t">Style_t</a> markerstyle = 2 ;
+ if (<a href="#AliPHOSPpsdRecPoint:GetUp">GetUp</a>())
+ markerstyle = 3 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor);
+ gVirtualX->SetMarkerSize (markersize);
+ gVirtualX->SetMarkerStyle(markerstyle);
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize);
+ gPad->PaintPolyMarker(1,&x,&y,"");
+
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSPpsdRecPoint:Print"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:Print">AliPHOSPpsdRecPoint::Print</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> * option)
+{
+<b> // Print the digits information </b>
+
+ cout << "<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>: " << endl ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi, zi);
+ cout << " Id = " << digit->GetId() ;
+ cout << " Phos mod = " << relid[0] ;
+ cout << " PPSD mod = " << relid[1] ;
+ cout << " x = " << xi ;
+ cout << " z = " << zi ;
+ cout << " Energy = " << digit->GetAmp() << endl ;
+ }
+ cout << " Multiplicity = " << fMulDigit << endl ;
+}
+
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSRecParticle - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// A Reconstructed Particle in PHOS </b>
+<b>// To become a general class of AliRoot ? </b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+<b>// --- Standard library ---</b>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSRecParticle.h">AliPHOSRecParticle.h</a>"
+#include "TPad.h"
+
+ClassImp(AliPHOSRecParticle)
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecParticle:AliPHOSRecParticle"> </a> <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle::AliPHOSRecParticle</a>(<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * ts)
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a> = new <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>(*ts) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> kenergy = ts->GetEnergy() ;
+ TVector3 momdir = ts->GetMomentumDirection() ;
+ fPx = kenergy * momdir.X() ;
+ fPy = kenergy * momdir.Y() ;
+ fPz = kenergy * momdir.Z() ;
+ <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a> = kUNDEFINED ;
+ fE = kenergy ; // !!! all particles have mass = 0
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecParticle:AliPHOSRecParticle"> </a> <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:AliPHOSRecParticle">AliPHOSRecParticle::AliPHOSRecParticle</a>(const <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a> & rp)
+{
+<b> // copy ctor</b>
+
+ <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a> = new <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>( *( rp.<a href="#AliPHOSRecParticle:GetPHOSTrackSegment">GetPHOSTrackSegment</a>()) ) ;
+ <a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a> = rp.<a href=".././AliPHOSFastRecParticle.html#AliPHOSFastRecParticle:fType">fType</a> ;
+
+ fPdgCode = rp.fPdgCode;
+ fStatusCode = rp.fStatusCode;
+ fMother[0] = rp.fMother[0];
+ fMother[1] = rp.fMother[1];
+ fDaughter[0] = rp.fDaughter[0];
+ fDaughter[1] = rp.fDaughter[1];
+ fWeight = rp.fWeight;
+ fCalcMass = rp.fCalcMass;
+ fPx = rp.fPx;
+ fPy = rp.fPy;
+ fPz = rp.fPz;
+ fE = rp.fE;
+ fVx = rp.fVx;
+ fVy = rp.fVy;
+ fVz = rp.fVz;
+ fVt = rp.fVt;
+ fPolarTheta = rp.fPolarTheta;
+ fPolarPhi = rp.fPolarPhi;
+ fParticlePDG = rp.fParticlePDG;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecParticle:~AliPHOSRecParticle"> </a> <a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a>::~<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a>()
+{
+<b> // dtor</b>
+
+ if(!<a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a>) {
+ delete <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a> ;
+ <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a> = 0 ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecParticle:GetPrimaries"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:GetPrimaries">AliPHOSRecParticle::GetPrimaries</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Retrieves all the primary particles at the origine of this reconstructed particle</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> emcnumber = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * emclist = <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a>-><a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesEmc">GetPrimariesEmc</a>(emcnumber) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ppsdlnumber = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * ppsdllist = <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a>-><a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesPpsdLow">GetPrimariesPpsdLow</a>(ppsdlnumber) ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ppsdunumber = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * ppsdulist = <a href=".././AliPHOSRecParticle.html#AliPHOSRecParticle:fPHOSTrackSegment">fPHOSTrackSegment</a>-><a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesPpsdUp">GetPrimariesPpsdUp</a>(ppsdunumber) ;
+
+ number = emcnumber + ppsdlnumber + ppsdunumber ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * list = new <a href="../ListOfTypes.html#Int_t">Int_t</a>[number] ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ for ( index = 0 ; index < emcnumber ; index++)
+ list[index] = emclist[index] ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> jndex ;
+ for ( jndex = 0 ; jndex < ppsdlnumber ; jndex++) {
+ assert(index < number) ;
+ list[index] = ppsdllist[jndex] ;
+ index++ ;
+ }
+
+ for ( jndex = 0 ; jndex < ppsdunumber ; jndex++) {
+ assert(index < number) ;
+ list[index] = ppsdulist[jndex] ;
+ index++ ;
+ }
+
+ cout << "passed 6 " << endl;
+
+ delete emclist ;
+ delete ppsdllist ;
+ delete ppsdulist ;
+
+ return list ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSRecPoint - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Base Class for PHOS Reconstructed Points </b>
+<b>// </b>
+<b>//*-- Author: Gines Martinez (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+#include "TPad.h"
+
+<b>// --- Standard library ---</b>
+#include <iostream>
+#include <cstdio>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSGeometry.h">AliPHOSGeometry.h</a>"
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+#include "<a href="../AliPHOSRecPoint.h">AliPHOSRecPoint.h</a>"
+
+
+
+ClassImp(AliPHOSRecPoint)
+
+
+<b>//____________________________________________________________________________</b>
+<a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:AliPHOSRecPoint">AliPHOSRecPoint::AliPHOSRecPoint</a>()
+ : AliRecPoint()
+{
+<b> // ctor</b>
+
+ fGeom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+ <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> = 0;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:DistancetoPrimitive"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:DistancetoPrimitive">AliPHOSRecPoint::DistancetoPrimitive</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Compute distance from point px,py to a <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> considered as a Tmarker</b>
+<b> // Compute the closest distance of approach from point px,py to this marker.</b>
+<b> // The distance is computed in pixels units.</b>
+
+ TVector3 pos(0.,0.,0.) ;
+ GetLocalPosition( pos) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = pos.X() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y = pos.Z() ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kMaxDiff = 10;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pxm = gPad->XtoAbsPixel(x);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pym = gPad->YtoAbsPixel(y);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> dist = (px-pxm)*(px-pxm) + (py-pym)*(py-pym);
+
+ if (dist > kMaxDiff) return 9999;
+ return dist;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:Draw"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:Draw">AliPHOSRecPoint::Draw</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *option)
+ {
+<b> // Draw this <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> with its current attributes</b>
+
+ AppendPad(option);
+ }
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:ExecuteEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:ExecuteEvent">AliPHOSRecPoint::ExecuteEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> event, <a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Execute action corresponding to one event</b>
+<b> // This member function is called when a <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> is clicked with the locator</b>
+<b> //</b>
+<b> // If Left button is clicked on <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on </b>
+<b> // and switched off when the mouse button is released.</b>
+
+<b> // static <a href="../ListOfTypes.html#Int_t">Int_t</a> pxold, pyold;</b>
+
+ static TGraph * digitgraph = 0 ;
+ static TPaveText* clustertext = 0 ;
+
+ if (!gPad->IsEditable()) return;
+
+ switch (event) {
+
+
+ case kButton1Down:{
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xi[fMulDigit] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zi[fMulDigit] ;
+
+ for(iDigit=0; iDigit<fMulDigit; iDigit++) {
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[iDigit];
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ phosgeom->RelPosInModule(relid, xi[iDigit], zi[iDigit]) ;
+ }
+
+ if (!digitgraph) {
+ digitgraph = new TGraph(fMulDigit,xi,zi);
+ digitgraph-> SetMarkerStyle(5) ;
+ digitgraph-> SetMarkerSize(1.) ;
+ digitgraph-> SetMarkerColor(1) ;
+ digitgraph-> <a href="#AliPHOSRecPoint:Draw">Draw</a>("P") ;
+ }
+ if (!clustertext) {
+
+ TVector3 pos(0.,0.,0.) ;
+ GetLocalPosition(pos) ;
+ clustertext = new TPaveText(pos.X()-10,pos.Z()+10,pos.X()+50,pos.Z()+35,"") ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> line1[40] ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> line2[40] ;
+ sprintf(line1,"Energy=%1.2f GeV",GetEnergy()) ;
+ sprintf(line2,"%d Digits",GetDigitsMultiplicity()) ;
+ clustertext ->AddText(line1) ;
+ clustertext ->AddText(line2) ;
+ clustertext -><a href="#AliPHOSRecPoint:Draw">Draw</a>("");
+ }
+ gPad->Update() ;
+ <a href="#AliPHOSRecPoint:Print">Print</a>() ;
+ }
+
+ break;
+
+ case kButton1Up:
+ if (digitgraph) {
+ delete digitgraph ;
+ digitgraph = 0 ;
+ }
+ if (clustertext) {
+ delete clustertext ;
+ clustertext = 0 ;
+ }
+
+ break;
+
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:GetPHOSMod"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:GetPHOSMod">AliPHOSRecPoint::GetPHOSMod</a>()
+{
+<b> // Returns the PHOS module in which the RecPoint is found</b>
+
+ if(<a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> > 0)
+ return <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[0] ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * phosgeom = (<a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> *) fGeom ;
+
+ phosgeom->AbsToRelNumbering(digit->GetId(), relid) ;
+ <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> = relid[0];
+ return <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:fPHOSMod">fPHOSMod</a> ;
+}
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:GetPrimaries"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:GetPrimaries">AliPHOSRecPoint::GetPrimaries</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Constructs the list of primary particles which have contributed to this RecPoint</b>
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> maxcounter = 10 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> counter = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * tempo = new <a href="../ListOfTypes.html#Int_t">Int_t</a>[maxcounter] ;
+
+ for ( index = 0 ; index < GetDigitsMultiplicity() ; index++ ) { // all digits
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) fDigitsList[index] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nprimaries = digit->GetNprimary() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * newprimaryarray = new <a href="../ListOfTypes.html#Int_t">Int_t</a>[nprimaries] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ii ;
+ for ( ii = 0 ; ii < nprimaries ; ii++)
+ newprimaryarray[ii] = digit->GetPrimary(ii+1) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> jndex ;
+ for ( jndex = 0 ; jndex < nprimaries ; jndex++ ) { // all primaries in digit
+ if ( counter > maxcounter ) {
+ number = - 1 ;
+ cout << "<a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:GetNprimaries">AliPHOSRecPoint::GetNprimaries</a> ERROR > increase maxcounter " << endl ;
+ break ;
+ }
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> newprimary = newprimaryarray[jndex] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> kndex ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> already = kFALSE ;
+ for ( kndex = 0 ; kndex < counter ; kndex++ ) { //check if not already stored
+ if ( newprimary == tempo[kndex] ){
+ already = kTRUE ;
+ break ;
+ }
+ } // end of check
+ if ( !already) { // store it
+ tempo[counter] = newprimary ;
+ counter++ ;
+ } // store it
+ } // all primaries in digit
+ delete newprimaryarray ;
+ } // all digits
+
+ number = counter ;
+ return tempo ;
+}
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSRecPoint:Paint"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSRecPoint.html#AliPHOSRecPoint:Paint">AliPHOSRecPoint::Paint</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *)
+{
+<b> // Paint this ALiRecPoint as a TMarker with its current attributes</b>
+
+ TVector3 pos(0.,0.,0.) ;
+ GetLocalPosition(pos) ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> x = pos.X() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> y = pos.Z() ;
+ <a href="../ListOfTypes.html#Color_t">Color_t</a> markercolor = 1 ;
+ <a href="../ListOfTypes.html#Size_t">Size_t</a> markersize = 1. ;
+ <a href="../ListOfTypes.html#Style_t">Style_t</a> markerstyle = 5 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor) ;
+ gVirtualX->SetMarkerSize (markersize) ;
+ gVirtualX->SetMarkerStyle(markerstyle) ;
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize) ;
+ gPad->PaintPolyMarker(1,&x,&y,"") ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:50 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSReconstructioner - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Algorithm class for the reconstruction: clusterizer</b>
+<b>// track segment maker</b>
+<b>// particle identifier </b>
+<b>// </b>
+<b>//*-- Author: Gines Martinez & Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+#include "TClonesArray.h"
+
+<b>// --- Standard library ---</b>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSReconstructioner.h">AliPHOSReconstructioner.h</a>"
+#include "<a href="../AliPHOSClusterizer.h">AliPHOSClusterizer.h</a>"
+
+ClassImp(AliPHOSReconstructioner)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSReconstructioner:AliPHOSReconstructioner"> </a><a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:AliPHOSReconstructioner">AliPHOSReconstructioner::AliPHOSReconstructioner</a>(<a href=".././AliPHOSClusterizer.html">AliPHOSClusterizer</a> * Clusterizer,
+ <a href=".././AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> * Tracker,
+ <a href=".././AliPHOSPID.html">AliPHOSPID</a> * Pid)
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fClusterizer">fClusterizer</a> = Clusterizer ;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fTrackSegmentMaker">fTrackSegmentMaker</a> = Tracker ;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fPID">fPID</a> = Pid ;
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSReconstructioner:Init"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:Init">AliPHOSReconstructioner::Init</a>(<a href=".././AliPHOSClusterizer.html">AliPHOSClusterizer</a> * Clusterizer,
+ <a href=".././AliPHOSTrackSegmentMaker.html">AliPHOSTrackSegmentMaker</a> * Tracker,
+ <a href=".././AliPHOSPID.html">AliPHOSPID</a> * Pid)
+{
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fClusterizer">fClusterizer</a> = Clusterizer ;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fTrackSegmentMaker">fTrackSegmentMaker</a> = Tracker ;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fPID">fPID</a> = Pid ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSReconstructioner:Make"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:Make">AliPHOSReconstructioner::Make</a>(TClonesArray * dl, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * emccl, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl,
+ <a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl, <a href="../ListOfTypes.html#RecParticlesList">RecParticlesList</a> * rpl)
+{
+<b> // Launches the Reconstruction process in the sequence: Make the reconstructed poins (clusterize)</b>
+<b> // Make the track segments </b>
+<b> // Make the reconstructed particles</b>
+
+ cout << "Start making reconstructed points (clusterizing)" << endl;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fClusterizer">fClusterizer</a>-><a href=".././AliPHOSClusterizer.html#AliPHOSClusterizer:MakeClusters">MakeClusters</a>(dl, emccl, ppsdl);
+
+ cout << "Start making track segments" << endl;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fTrackSegmentMaker">fTrackSegmentMaker</a>-><a href=".././AliPHOSTrackSegmentMaker.html#AliPHOSTrackSegmentMaker:MakeTrackSegments">MakeTrackSegments</a>(dl, emccl, ppsdl, trsl) ;
+
+ cout << "Start making reconstructed particles" << endl;
+ <a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:fPID">fPID</a>-><a href=".././AliPHOSPID.html#AliPHOSPID:MakeParticles">MakeParticles</a>(trsl, rpl) ;
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:56 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegment - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Track segment in PHOS</b>
+<b>// Can be : 1 EmcRecPoint</b>
+<b>// 1 EmcRecPoint + 1 PPSD</b>
+<b>// 1 EmcRecPoint + 1 PPSD + 1 PPSD </b>
+<b>// </b>
+<b>//*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TVector3.h"
+#include "TPad.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSTrackSegment.h">AliPHOSTrackSegment.h</a>"
+#include "<a href="../AliPHOSv0.h">AliPHOSv0.h</a>"
+
+ClassImp(AliPHOSTrackSegment)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:AliPHOSTrackSegment"> </a><a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment::AliPHOSTrackSegment</a>( <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emc , <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdRP1,
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdRP2 )
+{
+<b> // ctor</b>
+
+ if( emc )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a> = emc ;
+
+ if( ppsdRP1 )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> = ppsdRP1 ;
+
+ if( ppsdRP2 )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> = ppsdRP2 ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:AliPHOSTrackSegment"> </a><a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:AliPHOSTrackSegment">AliPHOSTrackSegment::AliPHOSTrackSegment</a>( const <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> & ts)
+{
+<b> // Copy ctor</b>
+
+ ( (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> &)ts ).<a href="#AliPHOSTrackSegment:Copy">Copy</a>(*this) ;
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:Copy"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:Copy">AliPHOSTrackSegment::Copy</a>(TObject & obj)
+{
+<b> // Copy of a track segment into another track segment</b>
+
+ TObject::<a href="#AliPHOSTrackSegment:Copy">Copy</a>(obj) ;
+ ( (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> &)obj ).<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a> = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a> ;
+ ( (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> &)obj ).<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> ;
+ ( (<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> &)obj ).<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> ;
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:DistancetoPrimitive"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:DistancetoPrimitive">AliPHOSTrackSegment::DistancetoPrimitive</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Compute distance from point px,py to a <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> considered as a Tmarker</b>
+<b> // Compute the closest distance of approach from point px,py to this marker.</b>
+<b> // The distance is computed in pixels units.</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> div = 1 ;
+ TVector3 pos(0.,0.,0.) ;
+
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>( pos) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = pos.X() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y = pos.Z() ;
+ if ( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> ) {
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>( pos ) ;
+ x += pos.X() ;
+ y += pos.Z() ;
+ div++ ;
+ }
+ if ( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> ) {
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>( pos ) ;
+ x += pos.X() ;
+ y += pos.Z() ;
+ div++ ;
+ }
+ x /= div ;
+ y /= div ;
+
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kMaxDiff = 10;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pxm = gPad->XtoAbsPixel(x);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> pym = gPad->YtoAbsPixel(y);
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> dist = (px-pxm)*(px-pxm) + (py-pym)*(py-pym);
+
+ if (dist > kMaxDiff) return 9999;
+ return dist;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:Draw"> </a> <a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:Draw">AliPHOSTrackSegment::Draw</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *option)
+ {
+<b> // Draw this <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> with its current attribute</b>
+
+ AppendPad(option);
+ }
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:ExecuteEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:ExecuteEvent">AliPHOSTrackSegment::ExecuteEvent</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> event, <a href="../ListOfTypes.html#Int_t">Int_t</a> px, <a href="../ListOfTypes.html#Int_t">Int_t</a> py)
+{
+<b> // Execute action corresponding to one event</b>
+<b> // This member function is called when a <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> is clicked with the locator</b>
+<b> //</b>
+<b> // If Left button is clicked on <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a>, the digits are switched on </b>
+<b> // and switched off when the mouse button is released.</b>
+
+ static TPaveText* textTS = 0 ;
+
+ if (!gPad->IsEditable())
+ return;
+
+ switch (event) {
+
+ case kButton1Down:{
+
+ if (!textTS) {
+
+ TVector3 pos(0.,0.,0.) ;
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(pos) ;
+ textTS = new TPaveText(pos.X()-10,pos.Z()+10,pos.X()+5,pos.Z()+15,"") ;
+ <a href="../ListOfTypes.html#Text_t">Text_t</a> line1[40] ;
+ sprintf(line1,"See RecParticle for ID") ;
+ textTS ->AddText(line1) ;
+ textTS -><a href="#AliPHOSTrackSegment:Draw">Draw</a>("");
+ gPad->Update() ;
+ }
+ }
+
+ break;
+
+ case kButton1Up:
+ if (textTS) {
+ delete textTS ;
+ textTS = 0 ;
+ }
+ break;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetDistanceInPHOSPlane"> </a><a href="../ListOfTypes.html#Float_t">Float_t</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetDistanceInPHOSPlane">AliPHOSTrackSegment::GetDistanceInPHOSPlane</a>()
+{
+<b> // Calculates the distance between the EMC RecPoint and PPSD RecPoint</b>
+
+ TVector3 vecEmc ;
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(vecEmc) ;
+
+ TVector3 vecPpsd ;
+ if( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetMultiplicity">GetMultiplicity</a>() )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(vecPpsd) ;
+ else {
+ vecPpsd.SetX(10000.) ;
+ }
+ vecEmc -= vecPpsd ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = vecEmc.Mag();;
+
+ return r ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetMomentumDirection"> </a>TVector3 <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetMomentumDirection">AliPHOSTrackSegment::GetMomentumDirection</a>()
+{
+<b> // Calculates the momentum direction:</b>
+<b> // 1. if only a EMC RecPoint, direction is given by IP and this RecPoint</b>
+<b> // 2. if a EMC RecPoint and one PPSD RecPoint, direction is given by the line through the 2 recpoints </b>
+<b> // 3. if a EMC RecPoint and two PPSD RecPoints, dirrection is given by the average line through </b>
+<b> // the 2 pairs of recpoints </b>
+<b> // However because of the poor position resolution of PPSD the direction is always taken as if we were </b>
+<b> // in case 1.</b>
+
+ TVector3 dir(0,0,0) ;
+ TMatrix mdummy ;
+
+ TVector3 posEmc ;
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>->GetGlobalPosition(posEmc, mdummy) ;
+
+<b> // Correction for the depth of the shower starting point (TDR p 127) </b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> energy = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href="#AliPHOSTrackSegment:GetEnergy">GetEnergy</a>() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> para = 0.925 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> parb = 6.52 ;
+
+ TVector3 localpos ;
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(localpos) ;
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> radius = geom->GetIPtoOuterCoverDistance() + geom->GetOuterBoxSize(1) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> incidencephi = TMath::ATan(localpos.X() / radius) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> incidencetheta = TMath::ATan(localpos.Z() / radius) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> depthx = ( para * TMath::Log(energy) + parb ) * TMath::Sin(incidencephi) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> depthz = ( para * TMath::Log(energy) + parb ) * TMath::Sin(incidencetheta) ;
+
+ localpos.SetX(localpos.X() - depthx ) ;
+ localpos.SetZ(localpos.Z() - depthz ) ;
+
+ TVector3 emcglobalpos ;
+ TMatrix dummy ;
+
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>->GetGlobalPosition(emcglobalpos, dummy) ;
+
+ emcglobalpos.SetX( emcglobalpos.X() - depthx ) ;
+ emcglobalpos.SetZ( emcglobalpos.Z() - depthz ) ;
+
+<b> // The following commeneted code becomes valid once the PPSD provides </b>
+<b> // a reasonable position resolution, at least as good as EMC !</b>
+
+<b>// TVector3 ppsdlglobalpos ;</b>
+<b>// TVector3 ppsduglobalpos ;</b>
+
+<b>// if( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> ){ // certainly a photon that has concerted</b>
+
+<b>// <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>->GetGlobalPosition(ppsdlglobalpos, mdummy) ; </b>
+<b>// dir = emcglobalpos - ppsdlglobalpos ; </b>
+
+<b>// if( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> ){ // nop looks like a charged</b>
+
+<b>// <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a>->GetGlobalPosition(ppsduglobalpos, mdummy) ; </b>
+<b>// dir = ( dir + emcglobalpos - ppsduglobalpos ) * 0.5 ; </b>
+<b>// }</b>
+<b>// }</b>
+
+<b>// else { // looks like a neutral</b>
+
+ dir = emcglobalpos ;
+<b>// }</b>
+
+ dir.SetZ( -dir.Z() ) ; // why ?
+ dir.SetMag(1.) ;
+
+ return dir ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetPrimariesEmc"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesEmc">AliPHOSTrackSegment::GetPrimariesEmc</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Retrieves the primary particle(s) at the origin of the EMC RecPoint</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * rv = 0 ;
+ number = 0 ;
+ if ( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a> )
+ rv = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>->GetPrimaries(number) ;
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetPrimariesPpsdLow"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesPpsdLow">AliPHOSTrackSegment::GetPrimariesPpsdLow</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Retrieves the primary particle(s) at the origin of the lower PPSD RecPoint</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * rv = 0 ;
+ number = 0 ;
+ if ( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> )
+ rv = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>->GetPrimaries(number) ;
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetPrimariesPpsdUp"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> * <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPrimariesPpsdUp">AliPHOSTrackSegment::GetPrimariesPpsdUp</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> & number)
+{
+<b> // Retrieves the primary particle(s) at the origin of the upper PPSD RecPoint</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * rv = 0 ;
+ number = 0 ;
+ if ( <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> )
+ rv = <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a>->GetPrimaries(number) ;
+
+ return rv ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:GetPosition"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:GetPosition">AliPHOSTrackSegment::GetPosition</a>( TVector3 & pos )
+{
+<b> // Returns position of the EMC RecPoint</b>
+
+ TMatrix dummy ;
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>->GetGlobalPosition(pos, dummy) ;
+}
+
+
+<b>//______________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:Paint"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:Paint">AliPHOSTrackSegment::Paint</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a> *)
+{
+<b> // Paint this ALiPHOSTrackSegment as a TMarker with its current attributes</b>
+
+ TVector3 posemc(999., 999., 999.) ;
+ TVector3 posppsdl(999., 999., 999.) ;
+ TVector3 posppsdu(999., 999., 999.) ;
+
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetLocalPosition">GetLocalPosition</a>(posemc) ;
+ if (<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a> !=0 )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(posppsdl) ;
+ if (<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> !=0 )
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a>-><a href=".././AliPHOSPpsdRecPoint.html#AliPHOSPpsdRecPoint:GetLocalPosition">GetLocalPosition</a>(posppsdu) ;
+
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> xemc = posemc.X() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> yemc = posemc.Z() ;
+
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> yppsdl = posppsdl.Z() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> xppsdl = posppsdl.X() ;
+
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> yppsdu = posppsdu.Z() ;
+ <a href="../ListOfTypes.html#Coord_t">Coord_t</a> xppsdu = posppsdu.X() ;
+
+ <a href="../ListOfTypes.html#Color_t">Color_t</a> markercolor = 1 ;
+ <a href="../ListOfTypes.html#Size_t">Size_t</a> markersize = 1.5 ;
+ <a href="../ListOfTypes.html#Style_t">Style_t</a> markerstyle = 20 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor) ;
+ gVirtualX->SetMarkerSize (markersize) ;
+ gVirtualX->SetMarkerStyle(markerstyle) ;
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize) ;
+ gPad->PaintPolyMarker(1, &xemc, &yemc, "") ;
+
+ if (xppsdl != 999. && yppsdl != 999. ) {
+
+ markercolor = 2 ;
+ markersize = 1.25 ;
+ markerstyle = 21 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor) ;
+ gVirtualX->SetMarkerSize (markersize) ;
+ gVirtualX->SetMarkerStyle(markerstyle) ;
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize) ;
+ gPad->PaintPolyMarker(1, &xppsdl, &yppsdl, "") ;
+ }
+
+ if (xppsdu != 999. && yppsdu != 999. ) {
+
+ markercolor = 3 ;
+ markersize = 1. ;
+ markerstyle = 22 ;
+
+ if (!gPad->IsBatch()) {
+ gVirtualX->SetMarkerColor(markercolor) ;
+ gVirtualX->SetMarkerSize (markersize) ;
+ gVirtualX->SetMarkerStyle(markerstyle) ;
+ }
+ gPad->SetAttMarkerPS(markercolor,markerstyle,markersize) ;
+ gPad->PaintPolyMarker(1, &xppsdu, &yppsdu, "") ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegment:Print"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:Print">AliPHOSTrackSegment::Print</a>()
+{
+<b> // Print all information on this track Segment</b>
+
+ cout << "--------<a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>-------- "<<endl ;
+ cout << "EMC Reconstructed Point: " << <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a> << endl;
+
+ TVector3 pos ;
+ TMatrix dummy ;
+
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>->GetGlobalPosition( pos, dummy ) ;
+
+ cout << " position " << pos.X() << " " << pos.Y() << " " << pos.Z() << " Energy " << <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fEmcRecPoint">fEmcRecPoint</a>-><a href=".././AliPHOSEmcRecPoint.html#AliPHOSEmcRecPoint:GetTotalEnergy">GetTotalEnergy</a>() << endl ;
+ cout << "PPSD Low Reconstructed Point: " << endl;
+
+ if(<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>){
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdLow">fPpsdLow</a>->GetGlobalPosition( pos , dummy ) ;
+ cout << " position " << pos.X() << " " << pos.Y() << " " << pos.Z() << endl ;
+ }
+
+ cout << "PPSD Up Reconstructed Point: " << endl;
+
+ if(<a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a> ){
+ <a href=".././AliPHOSTrackSegment.html#AliPHOSTrackSegment:fPpsdUp">fPpsdUp</a>->GetGlobalPosition( pos, dummy ) ;
+ cout << " position " << pos.X() << " " << pos.Y() << " " << pos.Z() << endl ;
+ }
+
+}
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:51 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegmentMaker - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Algorithm Base class to construct PHOS track segments</b>
+<b>// Associates EMC and PPSD clusters</b>
+<b>// Unfolds the EMC cluster </b>
+<b>// </b>
+<b>//*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+#include "TObjArray.h"
+#include "TClonesArray.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSTrackSegmentMaker.h">AliPHOSTrackSegmentMaker.h</a>"
+#include "<a href="../AliPHOSTrackSegment.h">AliPHOSTrackSegment.h</a>"
+#include "<a href="../AliPHOSLink.h">AliPHOSLink.h</a>"
+#include "<a href="../AliPHOSv0.h">AliPHOSv0.h</a>"
+#include "AliRun.h"
+
+ClassImp( AliPHOSTrackSegmentMaker)
+
+
+<b>//____________________________________________________________________________</b>
+ <a href=".././AliPHOSTrackSegmentMaker.html#AliPHOSTrackSegmentMaker:AliPHOSTrackSegmentMaker">AliPHOSTrackSegmentMaker::AliPHOSTrackSegmentMaker</a>()
+{
+<b> // ctor</b>
+}
+
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:51 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSTrackSegmentMakerv1 - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation version 1 of algorithm class to construct PHOS track segments</b>
+<b>// Associates EMC and PPSD clusters</b>
+<b>// Unfolds the EMC cluster </b>
+<b>// </b>
+<b>//*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)</b>
+<b>//</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TObjArray.h"
+#include "TClonesArray.h"
+#include "TObjectTable.h"
+
+<b>// --- Standard library ---</b>
+
+#include <iostream>
+#include <cassert>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSTrackSegmentMakerv1.h">AliPHOSTrackSegmentMakerv1.h</a>"
+#include "<a href="../AliPHOSTrackSegment.h">AliPHOSTrackSegment.h</a>"
+#include "<a href="../AliPHOSLink.h">AliPHOSLink.h</a>"
+#include "<a href="../AliPHOSv0.h">AliPHOSv0.h</a>"
+#include "AliRun.h"
+
+extern void UnfoldingChiSquare(Int_t &nPar, Double_t *Grad, Double_t & fret, Double_t *x, Int_t iflag) ;
+
+ClassImp( AliPHOSTrackSegmentMakerv1)
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1"> </a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:AliPHOSTrackSegmentMakerv1">AliPHOSTrackSegmentMakerv1::AliPHOSTrackSegmentMakerv1</a>()
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a> = 4. ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+<b> //clusters are sorted in "rows" and "columns" of width geom->GetCrystalSize(0),</b>
+ <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a> = <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a> + geom->GetCrystalSize(0) ;
+ <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fMinuit">fMinuit</a> = new TMinuit(100) ;
+ <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fUnfoldFlag">fUnfoldFlag</a> = kTRUE ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:~AliPHOSTrackSegmentMakerv1"> </a> <a href=".././AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>::~<a href=".././AliPHOSTrackSegmentMakerv1.html">AliPHOSTrackSegmentMakerv1</a>()
+{
+<b> // dtor</b>
+
+ delete <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fMinuit">fMinuit</a> ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:FindFit"> </a><a href="../ListOfTypes.html#Bool_t">Bool_t</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:FindFit">AliPHOSTrackSegmentMakerv1::FindFit</a>(<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcRP, <a href="../ListOfTypes.html#int">int</a> * maxAt, <a href="../ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy,
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nPar, <a href="../ListOfTypes.html#Float_t">Float_t</a> * fitparameters)
+{
+<b> // Calls TMinuit to fit the energy distribution of a cluster with several maxima </b>
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ gMinuit->SetPrintLevel(-1) ; // No Printout
+ gMinuit->SetFCN(UnfoldingChiSquare) ; // To set the address of the minimization function
+ gMinuit->SetObjectFit(emcRP) ; // To tranfer pointer to UnfoldingChiSquare
+
+<b> // filling initial values for fit parameters</b>
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ierflg = 0;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nDigits = (<a href="../ListOfTypes.html#Int_t">Int_t</a>) nPar / 3 ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit ;
+
+
+ for(iDigit = 0; iDigit < nDigits; iDigit++){
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) maxAt[iDigit];
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z ;
+ geom->AbsToRelNumbering(digit->GetId(), relid) ;
+ geom->RelPosInModule(relid, x, z) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> energy = maxAtEnergy[iDigit] ;
+
+ gMinuit->mnparm(index, "x", x, 0.1, 0, 0, ierflg) ;
+ index++ ;
+ if(ierflg != 0){
+ cout << "PHOS Unfolding> Unable to set initial value for fit procedure : x = " << x << endl ;
+ return kFALSE;
+ }
+ gMinuit->mnparm(index, "z", z, 0.1, 0, 0, ierflg) ;
+ index++ ;
+ if(ierflg != 0){
+ cout << "PHOS Unfolding> Unable to set initial value for fit procedure : z = " << z << endl ;
+ return kFALSE;
+ }
+ gMinuit->mnparm(index, "Energy", energy , 0.05*energy, 0., 4.*energy, ierflg) ;
+ index++ ;
+ if(ierflg != 0){
+ cout << "PHOS Unfolding> Unable to set initial value for fit procedure : energy = " << energy << endl ;
+ return kFALSE;
+ }
+ }
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> p0 = 0.1 ; // "Tolerance" Evaluation stops when EDM = 0.0001*p0 ; The number of function call slightly
+<b> // depends on it. </b>
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> p1 = 1.0 ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> p2 = 0.0 ;
+
+ gMinuit->mnexcm("SET STR", &p2, 0, ierflg) ; // force TgMinuit to reduce function calls
+ gMinuit->mnexcm("SET GRA", &p1, 1, ierflg) ; // force TMinuit to use my gradient
+ gMinuit->SetMaxIterations(5);
+ gMinuit->mnexcm("SET NOW", &p2 , 0, ierflg) ; // No Warnings
+ gMinuit->mnexcm("MIGRAD", &p0, 0, ierflg) ; // minimize
+ if(ierflg == 4){ // Minimum not found
+ cout << "PHOS Unfolding> Fit not converged, cluster abandoned "<< endl ;
+ return kFALSE ;
+ }
+ for(index = 0; index < nPar; index++){
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> err ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> val ;
+ gMinuit->GetParameter(index, val, err) ; // Returns value and error of parameter index
+ fitparameters[index] = val ;
+ }
+ return kTRUE;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:FillOneModule"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:FillOneModule">AliPHOSTrackSegmentMakerv1::FillOneModule</a>(<a href="../ListOfTypes.html#DigitsList">DigitsList</a> * Dl, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * emcIn, TObjArray * emcOut,
+ <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdIn, TObjArray * ppsdOutUp,
+ TObjArray * ppsdOutLow, <a href="../ListOfTypes.html#Int_t">Int_t</a> & phosmod, <a href="../ListOfTypes.html#Int_t">Int_t</a> & emcStopedAt,
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> & ppsdStopedAt)
+{
+<b> // Unfold clusters and fill xxxOut arrays with clusters from one PHOS module</b>
+
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcRecPoint ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdRecPoint ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> index ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nEmcUnfolded = emcIn->GetEntries() ;
+ for(index = emcStopedAt; index < nEmcUnfolded; index++){
+ emcRecPoint = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *) (*emcIn)[index] ;
+
+ if(emcRecPoint->GetPHOSMod() != phosmod )
+ break ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nMultipl = emcRecPoint->GetMultiplicity() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> maxAt[nMultipl] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> maxAtEnergy[nMultipl] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nMax = emcRecPoint->GetNumberOfLocalMax(maxAt, maxAtEnergy) ;
+
+ if(nMax <= 1 ) // if cluster is very flat (no pronounced maximum) then nMax = 0
+ emcOut->Add(emcRecPoint) ;
+ else if (<a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fUnfoldFlag">fUnfoldFlag</a>) {
+ <a href="#AliPHOSTrackSegmentMakerv1:UnfoldClusters">UnfoldClusters</a>(Dl, emcIn, emcRecPoint, nMax, maxAt, maxAtEnergy, emcOut) ;
+ emcIn->Remove(emcRecPoint);
+ emcIn->Compress() ;
+ nEmcUnfolded-- ;
+ index-- ;
+ }
+ }
+ emcStopedAt = index ;
+
+ for(index = ppsdStopedAt; index < ppsdIn->GetEntries(); index++){
+ ppsdRecPoint = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) (*ppsdIn)[index] ;
+ if(ppsdRecPoint->GetPHOSMod() != phosmod )
+ break ;
+ if(ppsdRecPoint->GetUp() )
+ ppsdOutUp->Add(ppsdRecPoint) ;
+ else
+ ppsdOutLow->Add(ppsdRecPoint) ;
+ }
+ ppsdStopedAt = index ;
+
+ emcOut->Sort() ;
+ ppsdOutUp->Sort() ;
+ ppsdOutLow->Sort() ;
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane"> </a><a href="../ListOfTypes.html#Float_t">Float_t</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane">AliPHOSTrackSegmentMakerv1::GetDistanceInPHOSPlane</a>(<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcclu,<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * PpsdClu, <a href="../ListOfTypes.html#Bool_t">Bool_t</a> &toofar)
+{
+<b> // Calculates the distance between the EMC RecPoint and the PPSD RecPoint</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a> ;
+
+ TVector3 vecEmc ;
+ TVector3 vecPpsd ;
+
+ emcclu->GetLocalPosition(vecEmc) ;
+ PpsdClu->GetLocalPosition(vecPpsd) ;
+ if(emcclu->GetPHOSMod() == PpsdClu->GetPHOSMod()){
+ if(vecPpsd.X() >= vecEmc.X() - <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a> ){
+ if(vecPpsd.Z() >= vecEmc.Z() - <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a> ){
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+<b> // Correct to difference in CPV and EMC position due to different distance to center.</b>
+<b> // we assume, that particle moves from center</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dCPV = geom->GetIPtoOuterCoverDistance();
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dEMC = geom->GetIPtoCrystalSurface() ;
+ dEMC = dEMC / dCPV ;
+ vecPpsd = dEMC * vecPpsd - vecEmc ;
+ r = vecPpsd.Mag() ;
+ } // if zPpsd >= zEmc - <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a>
+ toofar = kFALSE ;
+ } // if xPpsd >= xEmc - <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fDelta">fDelta</a>
+ else
+ toofar = kTRUE ;
+ }
+ else
+ toofar = kTRUE ;
+
+ return r ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:MakeLinks"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:MakeLinks">AliPHOSTrackSegmentMakerv1::MakeLinks</a>(TObjArray * emcRecPoints, TObjArray * ppsdRecPointsUp,
+ TObjArray * ppsdRecPointsLow, TClonesArray * linklowArray,
+ TClonesArray *linkupArray)
+{
+<b> // Finds distances (links) between all EMC and PPSD clusters, which are not further apart from each other than <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a> </b>
+
+ TIter nextEmc(emcRecPoints) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iEmcClu = 0 ;
+
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdlow ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdup ;
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcclu ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iLinkLow = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iLinkUp = 0 ;
+
+ while( (emcclu = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>*)nextEmc() ) ) {
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> toofar ;
+ TIter nextPpsdLow(ppsdRecPointsLow ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iPpsdLow = 0 ;
+
+ while( (ppsdlow = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>*)nextPpsdLow() ) ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href="#AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a>(emcclu, ppsdlow, toofar) ;
+
+ if(toofar)
+ break ;
+ if(r < <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a>)
+ new( (*linklowArray)[iLinkLow++]) <a href=".././AliPHOSLink.html">AliPHOSLink</a>(r, iEmcClu, iPpsdLow) ;
+
+ iPpsdLow++ ;
+
+ }
+
+ TIter nextPpsdUp(ppsdRecPointsUp ) ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iPpsdUp = 0 ;
+
+ while( (ppsdup = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>*)nextPpsdUp() ) ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href="#AliPHOSTrackSegmentMakerv1:GetDistanceInPHOSPlane">GetDistanceInPHOSPlane</a>(emcclu, ppsdup, toofar) ;
+
+ if(toofar)
+ break ;
+ if(r < <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:fR0">fR0</a>)
+ new( (*linkupArray)[iLinkUp++]) <a href=".././AliPHOSLink.html">AliPHOSLink</a>(r, iEmcClu, iPpsdUp) ;
+
+ iPpsdUp++ ;
+
+ }
+
+ iEmcClu++ ;
+
+ } // while nextEmC
+
+ linklowArray->Sort() ; //first links with smallest distances
+ linkupArray->Sort() ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:MakePairs"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:MakePairs">AliPHOSTrackSegmentMakerv1::MakePairs</a>(TObjArray * emcRecPoints, TObjArray * ppsdRecPointsUp,
+ TObjArray * ppsdRecPointsLow, TClonesArray * linklowArray,
+ TClonesArray * linkupArray, <a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl)
+{
+
+<b> // Finds the smallest links and makes pairs of PPSD and EMC clusters with smallest distance </b>
+
+ TIter nextLow(linklowArray) ;
+ TIter nextUp(linkupArray) ;
+
+ <a href=".././AliPHOSLink.html">AliPHOSLink</a> * linkLow ;
+ <a href=".././AliPHOSLink.html">AliPHOSLink</a> * linkUp ;
+
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emc ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdLow ;
+ <a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> * ppsdUp ;
+
+ <a href=".././AliPHOSRecPoint.html">AliPHOSRecPoint</a> * nullpointer = 0 ;
+
+ while ( (linkLow = (<a href=".././AliPHOSLink.html">AliPHOSLink</a> *)nextLow() ) ){
+ emc = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *) emcRecPoints->At(linkLow->GetEmc()) ;
+ ppsdLow = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) ppsdRecPointsLow->At(linkLow->GetPpsd()) ;
+ if( (emc) && (ppsdLow) ){ // RecPoints not removed yet
+ ppsdUp = 0 ;
+
+ while ( (linkUp = (<a href=".././AliPHOSLink.html">AliPHOSLink</a> *)nextUp() ) ){
+ if(linkLow->GetEmc() == linkUp->GetEmc() ){
+ ppsdUp = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) ppsdRecPointsUp->At(linkUp->GetPpsd()) ;
+ break ;
+ }
+
+ } // while nextUp
+
+ nextUp.Reset();
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * subtr = new <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>(emc, ppsdUp, ppsdLow ) ;
+ trsl->Add(subtr) ;
+ emcRecPoints->AddAt(nullpointer,linkLow->GetEmc()) ;
+ ppsdRecPointsLow->AddAt(nullpointer,linkLow->GetPpsd()) ;
+
+ if(ppsdUp)
+ ppsdRecPointsUp->AddAt(nullpointer,linkUp->GetPpsd()) ;
+
+ }
+ }
+
+ TIter nextEmc(emcRecPoints) ;
+ nextEmc.Reset() ;
+
+ while( (emc = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>*)nextEmc()) ){ //to create pairs if no ppsdlow
+ ppsdLow = 0 ;
+ ppsdUp = 0 ;
+
+ while ( (linkUp = (<a href=".././AliPHOSLink.html">AliPHOSLink</a> *)nextUp() ) ){
+
+ if(emcRecPoints->IndexOf(emc) == linkUp->GetEmc() ){
+ ppsdUp = (<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a> *) ppsdRecPointsUp->At(linkUp->GetPpsd()) ;
+ break ;
+ }
+
+ }
+ <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a> * subtr = new <a href=".././AliPHOSTrackSegment.html">AliPHOSTrackSegment</a>(emc, ppsdUp, ppsdLow ) ;
+ trsl->Add(subtr) ;
+
+ if(ppsdUp)
+ ppsdRecPointsUp->AddAt(nullpointer,linkUp->GetPpsd()) ;
+ }
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:MakeTrackSegments"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:MakeTrackSegments">AliPHOSTrackSegmentMakerv1::MakeTrackSegments</a>(<a href="../ListOfTypes.html#DigitsList">DigitsList</a> * DL, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * emcl,
+ <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * ppsdl, <a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a> * trsl)
+{
+<b> // Makes the track segments out of the list of EMC and PPSD Recpoints and stores them in a list</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> phosmod = 1 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> emcStopedAt = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> ppsdStopedAt = 0 ;
+
+ TObjArray * emcRecPoints = new TObjArray(100) ; // these arrays keep pointers
+ TObjArray * ppsdRecPointsUp = new TObjArray(100) ; // to RecPoints, which are
+ TObjArray * ppsdRecPointsLow = new TObjArray(100) ; // kept in TClonesArray's emcl and ppsdl
+
+
+ TClonesArray * linklowArray = new TClonesArray("<a href=".././AliPHOSLink.html">AliPHOSLink</a>", 100);
+ TClonesArray * linkupArray = new TClonesArray("<a href=".././AliPHOSLink.html">AliPHOSLink</a>", 100);
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ while(phosmod <= geom->GetNModules() ){
+
+ <a href="#AliPHOSTrackSegmentMakerv1:FillOneModule">FillOneModule</a>(DL, emcl, emcRecPoints, ppsdl, ppsdRecPointsUp, ppsdRecPointsLow, phosmod, emcStopedAt, ppsdStopedAt) ;
+
+ <a href="#AliPHOSTrackSegmentMakerv1:MakeLinks">MakeLinks</a>(emcRecPoints, ppsdRecPointsUp, ppsdRecPointsLow, linklowArray, linkupArray) ;
+
+ <a href="#AliPHOSTrackSegmentMakerv1:MakePairs">MakePairs</a>(emcRecPoints, ppsdRecPointsUp, ppsdRecPointsLow, linklowArray, linkupArray, trsl) ;
+
+ emcRecPoints->Clear() ;
+
+ ppsdRecPointsUp->Clear() ;
+
+ ppsdRecPointsLow->Clear() ;
+
+ linkupArray->Clear() ;
+
+ linklowArray->Clear() ;
+
+ phosmod++ ;
+ }
+ delete emcRecPoints ;
+ emcRecPoints = 0 ;
+
+ delete ppsdRecPointsUp ;
+ ppsdRecPointsUp = 0 ;
+
+ delete ppsdRecPointsLow ;
+ ppsdRecPointsLow = 0 ;
+
+ delete linkupArray ;
+ linkupArray = 0 ;
+
+ delete linklowArray ;
+ linklowArray = 0 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:ShowerShape"> </a><a href="../ListOfTypes.html#Double_t">Double_t</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:ShowerShape">AliPHOSTrackSegmentMakerv1::ShowerShape</a>(<a href="../ListOfTypes.html#Double_t">Double_t</a> r)
+{
+<b> // Shape of the shower (see PHOS TDR)</b>
+<b> // If you change this function, change also the gradien evaluation in ChiSquare()</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> r4 = r*r*r*r ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> r295 = TMath::Power(r, 2.95) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> shape = TMath::Exp( -r4 * (1. / (2.32 + 0.26 * r4) + 0.0316 / (1 + 0.0652 * r295) ) ) ;
+ return shape ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSTrackSegmentMakerv1:UnfoldClusters"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:UnfoldClusters">AliPHOSTrackSegmentMakerv1::UnfoldClusters</a>(<a href="../ListOfTypes.html#DigitsList">DigitsList</a> * DL, <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a> * emcIn, <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * iniEmc,
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nMax, <a href="../ListOfTypes.html#int">int</a> * maxAt, <a href="../ListOfTypes.html#Float_t">Float_t</a> * maxAtEnergy, TObjArray * emcList)
+{
+<b> // Performs the unfolding of a cluster with nMax overlapping showers </b>
+<b> // This is time consuming (use the (Un)SetUnfolFlag() )</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nPar = 3 * nMax ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> fitparameters[nPar] ;
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> rv = <a href="#AliPHOSTrackSegmentMakerv1:FindFit">FindFit</a>(iniEmc, maxAt, maxAtEnergy, nPar, fitparameters) ;
+ if( !rv ) // Fit failed, return and remove cluster
+ return ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xDigit ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zDigit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> nDigits = iniEmc->GetMultiplicity() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xpar ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zpar ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> epar ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> distance ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ratio ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> efit[nDigits] ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iparam ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcRP ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * emcDigits = iniEmc->GetDigitsList() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> * emcEnergies = iniEmc->GetEnergiesList() ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iRecPoint = emcIn->GetEntries() ;
+
+ for(iDigit = 0 ; iDigit < nDigits ; iDigit ++){
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) emcDigits[iDigit];
+ geom->AbsToRelNumbering(digit->GetId(), relid) ;
+ geom->RelPosInModule(relid, xDigit, zDigit) ;
+ efit[iDigit] = 0;
+ iparam = 0 ;
+
+ while(iparam < nPar ){
+ xpar = fitparameters[iparam] ;
+ zpar = fitparameters[iparam+1] ;
+ epar = fitparameters[iparam+2] ;
+ iparam += 3 ;
+ distance = (xDigit - xpar) * (xDigit - xpar) + (zDigit - zpar) * (zDigit - zpar) ;
+ distance = TMath::Sqrt(distance) ;
+ efit[iDigit] += epar * <a href="#AliPHOSTrackSegmentMakerv1:ShowerShape">ShowerShape</a>(distance) ;
+ }
+ }
+
+ iparam = 0 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> eDigit ;
+
+ while(iparam < nPar ){
+ xpar = fitparameters[iparam] ;
+ zpar = fitparameters[iparam+1] ;
+ epar = fitparameters[iparam+2] ;
+ iparam += 3 ;
+ new ((*emcIn)[iRecPoint]) <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>( iniEmc->GetLogWeightCut(), iniEmc->GetLocMaxCut() ) ;
+ emcRP = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *) emcIn->At(iRecPoint++);
+
+ for(iDigit = 0 ; iDigit < nDigits ; iDigit ++){
+ digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *) emcDigits[iDigit];
+ geom->AbsToRelNumbering(digit->GetId(), relid) ;
+ geom->RelPosInModule(relid, xDigit, zDigit) ;
+ distance = (xDigit - xpar) * (xDigit - xpar) + (zDigit - zpar) * (zDigit - zpar) ;
+ distance = TMath::Sqrt(distance) ;
+ ratio = epar * <a href="#AliPHOSTrackSegmentMakerv1:ShowerShape">ShowerShape</a>(distance) / efit[iDigit] ;
+ eDigit = emcEnergies[iDigit] * ratio ;
+ emcRP->AddDigit( *digit, eDigit ) ;
+ }
+
+ emcList->Add(emcRP) ;
+
+ }
+}
+
+<b>//______________________________________________________________________________</b>
+<a href="../ListOfTypes.html#void">void</a> UnfoldingChiSquare(<a href="../ListOfTypes.html#Int_t">Int_t</a> & nPar, <a href="../ListOfTypes.html#Double_t">Double_t</a> * Grad, <a href="../ListOfTypes.html#Double_t">Double_t</a> & fret, <a href="../ListOfTypes.html#Double_t">Double_t</a> * x, <a href="../ListOfTypes.html#Int_t">Int_t</a> iflag)
+{
+<b> // Calculates th Chi square for the cluster unfolding minimization</b>
+<b> // Number of parameters, Gradient, Chi squared, parameters, what to do</b>
+
+ <a href=".././AliPHOSGeometry.html">AliPHOSGeometry</a> * geom = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>() ;
+
+ <a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> * emcRP = (<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a> *) gMinuit->GetObjectFit() ; // EmcRecPoint to fit
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> * emcDigits = emcRP->GetDigitsList() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> * emcEnergies = emcRP->GetEnergiesList() ;
+ fret = 0. ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iparam ;
+
+ if(iflag == 2)
+ for(iparam = 0 ; iparam < nPar ; iparam++)
+ Grad[iparam] = 0 ; // Will evaluate gradient
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> efit ;
+
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * digit ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iDigit = 0 ;
+
+ while ( (digit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> *)emcDigits[iDigit] )){
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xDigit ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zDigit ;
+ geom->AbsToRelNumbering(digit->GetId(), relid) ;
+ geom->RelPosInModule(relid, xDigit, zDigit) ;
+
+ if(iflag == 2){ // calculate gradient
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> iParam = 0 ;
+ efit = 0 ;
+ while(iParam < nPar ){
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> distance = (xDigit - x[iParam]) * (xDigit - x[iParam]) ;
+ iParam++ ;
+ distance += (zDigit - x[iParam]) * (zDigit - x[iParam]) ;
+ distance = TMath::Sqrt( distance ) ;
+ iParam++ ;
+ efit += x[iParam] * <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:ShowerShape">AliPHOSTrackSegmentMakerv1::ShowerShape</a>(distance) ;
+ iParam++ ;
+ }
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> sum = 2. * (efit - emcEnergies[iDigit]) / emcEnergies[iDigit] ; // Here we assume, that sigma = sqrt(E)
+ iParam = 0 ;
+ while(iParam < nPar ){
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> xpar = x[iParam] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> zpar = x[iParam+1] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> epar = x[iParam+2] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> dr = TMath::Sqrt( (xDigit - xpar) * (xDigit - xpar) + (zDigit - zpar) * (zDigit - zpar) );
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> shape = sum * <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:ShowerShape">AliPHOSTrackSegmentMakerv1::ShowerShape</a>(dr) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> r4 = dr*dr*dr*dr ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> r295 = TMath::Power(dr,2.95) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> deriv =-4. * dr*dr * ( 2.32 / ( (2.32 + 0.26 * r4) * (2.32 + 0.26 * r4) ) +
+ 0.0316 * (1. + 0.0171 * r295) / ( ( 1. + 0.0652 * r295) * (1. + 0.0652 * r295) ) ) ;
+
+ Grad[iParam] += epar * shape * deriv * (xpar - xDigit) ; // Derivative over x
+ iParam++ ;
+ Grad[iParam] += epar * shape * deriv * (zpar - zDigit) ; // Derivative over z
+ iParam++ ;
+ Grad[iParam] += shape ; // Derivative over energy
+ iParam++ ;
+ }
+ }
+ efit = 0;
+ iparam = 0 ;
+ while(iparam < nPar ){
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> xpar = x[iparam] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> zpar = x[iparam+1] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> epar = x[iparam+2] ;
+ iparam += 3 ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> distance = (xDigit - xpar) * (xDigit - xpar) + (zDigit - zpar) * (zDigit - zpar) ;
+ distance = TMath::Sqrt(distance) ;
+ efit += epar * <a href=".././AliPHOSTrackSegmentMakerv1.html#AliPHOSTrackSegmentMakerv1:ShowerShape">AliPHOSTrackSegmentMakerv1::ShowerShape</a>(distance) ;
+ }
+ fret += (efit-emcEnergies[iDigit])*(efit-emcEnergies[iDigit])/emcEnergies[iDigit] ;
+<b> // Here we assume, that sigma = sqrt(E)</b>
+ iDigit++ ;
+ }
+}
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:45:57 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSv0 - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation version v0 of PHOS Manager class </b>
+<b>// Layout EMC + PPSD has name GPS2 </b>
+<b>// </b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+
+#include "TBRIK.h"
+#include "TNode.h"
+#include "TRandom.h"
+
+<b>// --- Standard library ---</b>
+
+#include <cstdio>
+#include <cstring>
+#include <cstdlib>
+#include <strstream>
+#include <cassert>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSv0.h">AliPHOSv0.h</a>"
+#include "<a href="../AliPHOSHit.h">AliPHOSHit.h</a>"
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+#include "<a href="../AliPHOSReconstructioner.h">AliPHOSReconstructioner.h</a>"
+#include "AliRun.h"
+#include "AliConst.h"
+
+ClassImp(AliPHOSv0)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:AliPHOSv0"> </a><a href=".././AliPHOSv0.html#AliPHOSv0:AliPHOSv0">AliPHOSv0::AliPHOSv0</a>()
+{
+<b> // ctor</b>
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> = 0 ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a> = 0 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:AliPHOSv0"> </a><a href=".././AliPHOSv0.html#AliPHOSv0:AliPHOSv0">AliPHOSv0::AliPHOSv0</a>(const <a href="../ListOfTypes.html#char">char</a> *name, const <a href="../ListOfTypes.html#char">char</a> *title):
+ <a href=".././AliPHOS.html">AliPHOS</a>(name,title)
+{
+<b> // ctor : title is used to identify the layout</b>
+<b> // GPS2 = 5 modules (EMC + PPSD) </b>
+<b> // We use 2 arrays of hits :</b>
+<b> //</b>
+<b> // - fHits (the "normal" one), which retains the hits associated with</b>
+<b> // the current primary particle being tracked</b>
+<b> // (this array is reset after each primary has been tracked).</b>
+<b> //</b>
+<b> // - <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>, which retains all the hits of the current event. It </b>
+<b> // is used for the digitization part.</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPinElectronicNoise">fPinElectronicNoise</a> = 0.010 ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fDigitThreshold">fDigitThreshold</a> = 1. ; // 1 GeV
+
+ fHits = new TClonesArray("<a href=".././AliPHOSHit.html">AliPHOSHit</a>",100) ;
+ gAlice->AddHitList(fHits) ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>= new TClonesArray("<a href=".././AliPHOSHit.html">AliPHOSHit</a>",100) ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> = fNhits = 0 ;
+
+ fDigits = new TClonesArray("<a href=".././AliPHOSDigit.html">AliPHOSDigit</a>",100) ;
+
+
+ fIshunt = 1 ; // All hits are associated with primary particles
+
+<b> // gets an instance of the geometry parameters class </b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>(title, "") ;
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:IsInitialized">IsInitialized</a>() )
+ cout << "<a href=".././AliPHOSv0.html">AliPHOSv0</a> : PHOS geometry intialized for " << <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName() << endl ;
+ else
+ cout << "<a href=".././AliPHOSv0.html">AliPHOSv0</a> : PHOS geometry initialization failed !" << endl ;
+}
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:AliPHOSv0"> </a><a href=".././AliPHOSv0.html#AliPHOSv0:AliPHOSv0">AliPHOSv0::AliPHOSv0</a>(<a href=".././AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner, const <a href="../ListOfTypes.html#char">char</a> *name, const <a href="../ListOfTypes.html#char">char</a> *title):
+ <a href=".././AliPHOS.html">AliPHOS</a>(name,title)
+{
+<b> // ctor : title is used to identify the layout</b>
+<b> // GPS2 = 5 modules (EMC + PPSD) </b>
+<b> // We use 2 arrays of hits :</b>
+<b> //</b>
+<b> // - fHits (the "normal" one), which retains the hits associated with</b>
+<b> // the current primary particle being tracked</b>
+<b> // (this array is reset after each primary has been tracked).</b>
+<b> //</b>
+<b> // - <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>, which retains all the hits of the current event. It </b>
+<b> // is used for the digitization part.</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPinElectronicNoise">fPinElectronicNoise</a> = 0.010 ;
+ fHits = new TClonesArray("<a href=".././AliPHOSHit.html">AliPHOSHit</a>",100) ;
+ fDigits = new TClonesArray("<a href=".././AliPHOSDigit.html">AliPHOSDigit</a>",100) ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>= new TClonesArray("<a href=".././AliPHOSHit.html">AliPHOSHit</a>",100) ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> = fNhits = 0 ;
+
+ fIshunt = 1 ; // All hits are associated with primary particles
+
+<b> // gets an instance of the geometry parameters class </b>
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>(title, "") ;
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:IsInitialized">IsInitialized</a>() )
+ cout << "<a href=".././AliPHOSv0.html">AliPHOSv0</a> : PHOS geometry intialized for " << <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName() << endl ;
+ else
+ cout << "<a href=".././AliPHOSv0.html">AliPHOSv0</a> : PHOS geometry initialization failed !" << endl ;
+
+<b> // Defining the PHOS Reconstructioner</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fReconstructioner">fReconstructioner</a> = Reconstructioner ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:~AliPHOSv0"> </a><a href=".././AliPHOSv0.html">AliPHOSv0</a>::~<a href=".././AliPHOSv0.html">AliPHOSv0</a>()
+{
+<b> // dtor</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a> = 0 ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a> = 0 ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> = 0 ;
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> = 0 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:AddHit"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:AddHit">AliPHOSv0::AddHit</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> primary, <a href="../ListOfTypes.html#Int_t">Int_t</a> Id, <a href="../ListOfTypes.html#Float_t">Float_t</a> * hits)
+{
+<b> // Add a hit to the hit list.</b>
+<b> // A PHOS hit is the sum of all hits in a single crystal</b>
+<b> // or in a single PPSD gas cell</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> hitCounter ;
+ TClonesArray &ltmphits = *<a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a> ;
+ <a href=".././AliPHOSHit.html">AliPHOSHit</a> *newHit ;
+ <a href=".././AliPHOSHit.html">AliPHOSHit</a> *curHit ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> deja = kFALSE ;
+
+<b> // In any case, fills the fTmpHit TClonesArray (with "accumulated hits")</b>
+
+ newHit = new <a href=".././AliPHOSHit.html">AliPHOSHit</a>(primary, Id, hits) ;
+
+ for ( hitCounter = 0 ; hitCounter < <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> && !deja ; hitCounter++ ) {
+ curHit = (<a href=".././AliPHOSHit.html">AliPHOSHit</a>*) ltmphits[hitCounter] ;
+ if( *curHit == *newHit ) {
+ *curHit = *curHit + *newHit ;
+ deja = kTRUE ;
+ }
+ }
+
+ if ( !deja ) {
+ new(ltmphits[<a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a>]) <a href=".././AliPHOSHit.html">AliPHOSHit</a>(*newHit) ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a>++ ;
+ }
+
+<b> // Please note that the <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a> array must survive up to the</b>
+<b> // end of the events, so it does not appear e.g. in ResetHits() (</b>
+<b> // which is called at the end of each primary). </b>
+
+<b> // if (IsTreeSelected('H')) {</b>
+<b> // And, if we really want raw hits tree, have the fHits array filled also</b>
+<b> // TClonesArray &lhits = *fHits;</b>
+<b> // new(lhits[fNhits]) <a href=".././AliPHOSHit.html">AliPHOSHit</a>(*newHit) ;</b>
+<b> // fNhits++ ;</b>
+<b> // }</b>
+
+ delete newHit;
+
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:BuildGeometry"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:BuildGeometry">AliPHOSv0::BuildGeometry</a>()
+{
+<b> // Build the PHOS geometry for the ROOT display</b>
+<b> //</b>
+ /*
+ <H2>
+ PHOS in ALICE displayed by root
+ </H2>
+ <UL>
+ <LI> All Views
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="All Views" SRC="../images/AliPHOSv0AllViews.gif">
+ </CENTER></P></LI>
+ <LI> Front View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Front View" SRC="../images/AliPHOSv0FrontView.gif">
+ </CENTER></P></LI>
+ <LI> 3D View 1
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="3D View 1" SRC="../images/AliPHOSv03DView1.gif">
+ </CENTER></P></LI>
+ <LI> 3D View 2
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="3D View 2" SRC="../images/AliPHOSv03DView2.gif">
+ </CENTER></P></LI>
+ </UL>
+ */
+<b> // </b>
+
+ this-><a href="#AliPHOSv0:BuildGeometryforPHOS">BuildGeometryforPHOS</a>() ;
+ if ( ( strcmp(<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName(), "GPS2" ) == 0 ) )
+ this-><a href="#AliPHOSv0:BuildGeometryforPPSD">BuildGeometryforPPSD</a>() ;
+ else
+ cout << "<a href=".././AliPHOSv0.html#AliPHOSv0:BuildGeometry">AliPHOSv0::BuildGeometry</a> : no charged particle identification system installed" << endl;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:BuildGeometryforPHOS"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:BuildGeometryforPHOS">AliPHOSv0::BuildGeometryforPHOS</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Build the PHOS-EMC geometry for the ROOT display</b>
+
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorPHOS = kRed ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorXTAL = kBlue ;
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+
+ new TBRIK( "OuterBox", "PHOS box", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(2)/2 );
+
+<b> // Textolit Wall box, position inside PHOS </b>
+
+ new TBRIK( "TextolitBox", "PHOS Textolit box ", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(2)/2);
+
+<b> // Polystyrene Foam Plate</b>
+
+ new TBRIK( "UpperFoamPlate", "PHOS Upper foam plate", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>()/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(2)/2 ) ;
+
+<b> // Air Filled Box</b>
+
+ new TBRIK( "AirFilledBox", "PHOS air filled box", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(2)/2 );
+
+<b> // Crystals Box</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlX = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlY = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(1) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlZ = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xl = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * ( xtlX + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yl = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0
+ + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() / 2.0 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> zl = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNZ">GetNZ</a>() * ( xtlZ + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() ;
+
+ new TBRIK( "CrystalsBox", "PHOS crystals box", "<a href="../ListOfTypes.html#void">void</a>", xl, yl, zl ) ;
+
+<b>// position PHOS into ALICE</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) / 2.0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> number = 988 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> pphi = TMath::ATan( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0) / ( 2.0 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() ) ) ;
+ pphi *= kRADDEG ;
+ TNode * top = gAlice->GetGeometry()->GetNode("alice") ;
+
+ <a href="../ListOfTypes.html#char">char</a> * nodename = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+ <a href="../ListOfTypes.html#char">char</a> * rotname = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>(); i++ ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = pphi * 2 * ( i - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>() / 2.0 - 0.5 ) ;
+ sprintf(rotname, "%s%d", "rot", number++) ;
+ new TRotMatrix(rotname, rotname, 90, angle, 90, 90 + angle, 0, 0);
+ top->cd();
+ sprintf(nodename,"%s%d", "Module", i) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = r * TMath::Sin( angle / kRADDEG ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y = -r * TMath::Cos( angle / kRADDEG ) ;
+ TNode * outerboxnode = new TNode(nodename, nodename, "OuterBox", x, y, 0, rotname ) ;
+ outerboxnode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(outerboxnode) ;
+ outerboxnode->cd() ;
+<b> // now inside the outer box the textolit box</b>
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxThickness">GetOuterBoxThickness</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() ) / 2. ;
+ sprintf(nodename,"%s%d", "TexBox", i) ;
+ TNode * textolitboxnode = new TNode(nodename, nodename, "TextolitBox", 0, y, 0) ;
+ textolitboxnode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(textolitboxnode) ;
+<b> // upper foam plate inside outre box</b>
+ outerboxnode->cd() ;
+ sprintf(nodename, "%s%d", "UFPlate", i) ;
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ) / 2.0 ;
+ TNode * upperfoamplatenode = new TNode(nodename, nodename, "UpperFoamPlate", 0, y, 0) ;
+ upperfoamplatenode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(upperfoamplatenode) ;
+<b> // air filled box inside textolit box (not drawn)</b>
+ textolitboxnode->cd();
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) ) / 2.0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ;
+ sprintf(nodename, "%s%d", "AFBox", i) ;
+ TNode * airfilledboxnode = new TNode(nodename, nodename, "AirFilledBox", 0, y, 0) ;
+ fNodes->Add(airfilledboxnode) ;
+<b> // crystals box inside air filled box</b>
+ airfilledboxnode->cd() ;
+ y = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) / 2.0 - yl
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ) ;
+ sprintf(nodename, "%s%d", "XTBox", i) ;
+ TNode * crystalsboxnode = new TNode(nodename, nodename, "CrystalsBox", 0, y, 0) ;
+ crystalsboxnode->SetLineColor(kColorXTAL) ;
+ fNodes->Add(crystalsboxnode) ;
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:BuildGeometryforPPSD"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:BuildGeometryforPPSD">AliPHOSv0::BuildGeometryforPPSD</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Build the PHOS-PPSD geometry for the ROOT display</b>
+<b> //</b>
+ /*
+ <H2>
+ PPSD displayed by root
+ </H2>
+ <UL>
+ <LI> Zoom on PPSD: Front View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="PPSD Front View" SRC="../images/AliPHOSv0PPSDFrontView.gif">
+ </CENTER></P></LI>
+ <LI> Zoom on PPSD: Perspective View
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="PPSD Prespective View" SRC="../images/AliPHOSv0PPSDPerspectiveView.gif">
+ </CENTER></P></LI>
+ </UL>
+ */
+<b> // </b>
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorPHOS = kRed ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorPPSD = kGreen ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorGas = kBlue ;
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorAir = kYellow ;
+
+<b> // Box for a full PHOS module</b>
+
+ new TBRIK( "PPSDBox", "PPSD box", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2)/2 );
+
+<b> // Box containing one micromegas module </b>
+
+ new TBRIK( "PPSDModule", "PPSD module", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(1)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2)/2 );
+<b> // top lid</b>
+
+ new TBRIK ( "TopLid", "Micromegas top lid", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>()/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2)/2 ) ;
+<b> // composite panel (top and bottom)</b>
+
+ new TBRIK ( "TopPanel", "Composite top panel", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>()/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+
+ new TBRIK ( "BottomPanel", "Composite bottom panel", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>()/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+<b> // gas gap (conversion and avalanche)</b>
+
+ new TBRIK ( "GasGap", "gas gap", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() )/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+
+<b> // anode and cathode </b>
+
+ new TBRIK ( "Anode", "Anode", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>()/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+
+ new TBRIK ( "Cathode", "Cathode", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>()/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+<b> // PC </b>
+
+ new TBRIK ( "PCBoard", "Printed Circuit", "<a href="../ListOfTypes.html#void">void</a>", ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>()/2,
+ ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() )/2 ) ;
+<b> // Gap between Lead and top micromegas</b>
+
+ new TBRIK ( "LeadToM", "Air Gap top", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>()/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2)/2 ) ;
+
+<b>// Gap between Lead and bottom micromegas</b>
+
+ new TBRIK ( "MToLead", "Air Gap bottom", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>()/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2)/2 ) ;
+<b> // Lead converter</b>
+
+ new TBRIK ( "Lead", "Lead converter", "<a href="../ListOfTypes.html#void">void</a>", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0)/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>()/2,
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2)/2 ) ;
+
+<b> // position PPSD into ALICE</b>
+
+ <a href="../ListOfTypes.html#char">char</a> * nodename = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+ <a href="../ListOfTypes.html#char">char</a> * rotname = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoTopLidDistance">GetIPtoTopLidDistance</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) / 2.0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> number = 988 ;
+ TNode * top = gAlice->GetGeometry()->GetNode("alice") ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>(); i++ ) { // the number of PHOS modules
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(i) ;
+ sprintf(rotname, "%s%d", "rotg", number++) ;
+ new TRotMatrix(rotname, rotname, 90, angle, 90, 90 + angle, 0, 0);
+ top->cd();
+ sprintf(nodename, "%s%d", "Moduleg", i) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = r * TMath::Sin( angle / kRADDEG ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y = -r * TMath::Cos( angle / kRADDEG ) ;
+ TNode * ppsdboxnode = new TNode(nodename , nodename ,"PPSDBox", x, y, 0, rotname ) ;
+ ppsdboxnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(ppsdboxnode) ;
+ ppsdboxnode->cd() ;
+<b> // inside the PPSD box: </b>
+<b> // 1. fNumberOfModulesPhi x fNumberOfModulesZ top micromegas</b>
+ x = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ) / 2. ;
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iphi = 1; iphi <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>(); iphi++ ) { // the number of micromegas modules in phi per PHOS module
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ) / 2. ;
+ TNode * micro1node ;
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iz = 1; iz <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>(); iz++ ) { // the number of micromegas modules in z per PHOS module
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() ) / 2. ;
+ sprintf(nodename, "%s%d%d%d", "Mic1", i, iphi, iz) ;
+ micro1node = new TNode(nodename, nodename, "PPSDModule", x, y, z) ;
+ micro1node->SetLineColor(kColorPPSD) ;
+ fNodes->Add(micro1node) ;
+<b> // inside top micromegas</b>
+ micro1node->cd() ;
+<b> // a. top lid</b>
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() ) / 2. ;
+ sprintf(nodename, "%s%d%d%d", "Lid", i, iphi, iz) ;
+ TNode * toplidnode = new TNode(nodename, nodename, "TopLid", 0, y, 0) ;
+ toplidnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(toplidnode) ;
+<b> // b. composite panel</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d%d%d", "CompU", i, iphi, iz) ;
+ TNode * compupnode = new TNode(nodename, nodename, "TopPanel", 0, y, 0) ;
+ compupnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(compupnode) ;
+<b> // c. anode</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d%d%d", "Ano", i, iphi, iz) ;
+ TNode * anodenode = new TNode(nodename, nodename, "Anode", 0, y, 0) ;
+ anodenode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(anodenode) ;
+<b> // d. gas </b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. ;
+ sprintf(nodename, "%s%d%d%d", "GGap", i, iphi, iz) ;
+ TNode * ggapnode = new TNode(nodename, nodename, "GasGap", 0, y, 0) ;
+ ggapnode->SetLineColor(kColorGas) ;
+ fNodes->Add(ggapnode) ;
+<b> // f. cathode</b>
+ y = y - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d%d%d", "Cathode", i, iphi, iz) ;
+ TNode * cathodenode = new TNode(nodename, nodename, "Cathode", 0, y, 0) ;
+ cathodenode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(cathodenode) ;
+<b> // g. printed circuit</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d%d%d", "PC", i, iphi, iz) ;
+ TNode * pcnode = new TNode(nodename, nodename, "PCBoard", 0, y, 0) ;
+ pcnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(pcnode) ;
+<b> // h. composite panel</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d%d%d", "CompDown", i, iphi, iz) ;
+ TNode * compdownnode = new TNode(nodename, nodename, "BottomPanel", 0, y, 0) ;
+ compdownnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(compdownnode) ;
+ z = z - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ;
+ ppsdboxnode->cd() ;
+ } // end of Z module loop
+ x = x - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ;
+ ppsdboxnode->cd() ;
+ } // end of phi module loop
+<b> // 2. air gap </b>
+ ppsdboxnode->cd() ;
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() ) / 2. ;
+ sprintf(nodename, "%s%d", "GapUp", i) ;
+ TNode * gapupnode = new TNode(nodename, nodename, "LeadToM", 0, y, 0) ;
+ gapupnode->SetLineColor(kColorAir) ;
+ fNodes->Add(gapupnode) ;
+<b> // 3. lead converter</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "LeadC", i) ;
+ TNode * leadcnode = new TNode(nodename, nodename, "Lead", 0, y, 0) ;
+ leadcnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(leadcnode) ;
+<b> // 4. air gap</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>() / 2. ;
+ sprintf(nodename, "%s%d", "GapDown", i) ;
+ TNode * gapdownnode = new TNode(nodename, nodename, "MToLead", 0, y, 0) ;
+ gapdownnode->SetLineColor(kColorAir) ;
+ fNodes->Add(gapdownnode) ;
+<b> // 5. fNumberOfModulesPhi x fNumberOfModulesZ bottom micromegas</b>
+ x = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ) / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPhiDisplacement">GetPhiDisplacement</a>() ;
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iphi = 1; iphi <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>(); iphi++ ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ) / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetZDisplacement">GetZDisplacement</a>() ;;
+ TNode * micro2node ;
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iz = 1; iz <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>(); iz++ ) {
+ y = - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() ) / 2. ;
+ sprintf(nodename, "%s%d%d%d", "Mic2", i, iphi, iz) ;
+ micro2node = new TNode(nodename, nodename, "PPSDModule", x, y, z) ;
+ micro2node->SetLineColor(kColorPPSD) ;
+ fNodes->Add(micro2node) ;
+<b> // inside bottom micromegas</b>
+ micro2node->cd() ;
+<b> // a. top lid</b>
+ y = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() ) / 2. ;
+ sprintf(nodename, "%s%d", "Lidb", i) ;
+ TNode * toplidbnode = new TNode(nodename, nodename, "TopLid", 0, y, 0) ;
+ toplidbnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(toplidbnode) ;
+<b> // b. composite panel</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "CompUb", i) ;
+ TNode * compupbnode = new TNode(nodename, nodename, "TopPanel", 0, y, 0) ;
+ compupbnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(compupbnode) ;
+<b> // c. anode</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "Anob", i) ;
+ TNode * anodebnode = new TNode(nodename, nodename, "Anode", 0, y, 0) ;
+ anodebnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(anodebnode) ;
+<b> // d. conversion gas</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. ;
+ sprintf(nodename, "%s%d", "GGapb", i) ;
+ TNode * ggapbnode = new TNode(nodename, nodename, "GasGap", 0, y, 0) ;
+ ggapbnode->SetLineColor(kColorGas) ;
+ fNodes->Add(ggapbnode) ;
+<b> // f. cathode</b>
+ y = y - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "Cathodeb", i) ;
+ TNode * cathodebnode = new TNode(nodename, nodename, "Cathode", 0, y, 0) ;
+ cathodebnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(cathodebnode) ;
+<b> // g. printed circuit</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "PCb", i) ;
+ TNode * pcbnode = new TNode(nodename, nodename, "PCBoard", 0, y, 0) ;
+ pcbnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(pcbnode) ;
+<b> // h. composite pane</b>
+ y = y - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+ sprintf(nodename, "%s%d", "CompDownb", i) ;
+ TNode * compdownbnode = new TNode(nodename, nodename, "BottomPanel", 0, y, 0) ;
+ compdownbnode->SetLineColor(kColorPPSD) ;
+ fNodes->Add(compdownbnode) ;
+ z = z - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ;
+ ppsdboxnode->cd() ;
+ } // end of Z module loop
+ x = x - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ;
+ ppsdboxnode->cd() ;
+ } // end of phi module loop
+ } // PHOS modules
+ delete rotname ;
+ delete nodename ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:CreateGeometry"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:CreateGeometry">AliPHOSv0::CreateGeometry</a>()
+{
+<b> // Create the PHOS geometry for Geant</b>
+
+ <a href=".././AliPHOSv0.html">AliPHOSv0</a> *phostmp = (<a href=".././AliPHOSv0.html">AliPHOSv0</a>*)gAlice->GetModule("PHOS") ;
+
+ if ( phostmp == NULL ) {
+
+ fprintf(stderr, "PHOS detector not found!n") ;
+ return;
+
+ }
+<b> // Get pointer to the array containing media indeces</b>
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> *idtmed = fIdtmed->GetArray() - 699 ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> bigbox[3] ;
+ bigbox[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0) / 2.0 ;
+ bigbox[1] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) ) / 2.0 ;
+ bigbox[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PHOS", "BOX ", idtmed[798], bigbox, 3) ;
+
+ this-><a href="#AliPHOSv0:CreateGeometryforPHOS">CreateGeometryforPHOS</a>() ;
+ if ( strcmp( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName(), "GPS2") == 0 )
+ this-><a href="#AliPHOSv0:CreateGeometryforPPSD">CreateGeometryforPPSD</a>() ;
+ else
+ cout << "<a href=".././AliPHOSv0.html#AliPHOSv0:CreateGeometry">AliPHOSv0::CreateGeometry</a> : no charged particle identification system installed" << endl;
+
+<b> // --- Position PHOS mdules in ALICE setup ---</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> idrotm[99] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>(); i++ ) {
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(i) ;
+ AliMatrix(idrotm[i-1], 90.0, angle, 90.0, 90.0+angle, 0.0, 0.0) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() + ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) ) / 2.0 ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xP1 = r * TMath::Sin( angle / kRADDEG ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yP1 = -r * TMath::Cos( angle / kRADDEG ) ;
+
+ gMC->Gspos("PHOS", i, "ALIC", xP1, yP1, 0.0, idrotm[i-1], "ONLY") ;
+
+ } // for GetNModules
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:CreateGeometryforPHOS"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:CreateGeometryforPHOS">AliPHOSv0::CreateGeometryforPHOS</a>()
+{
+<b> // Create the PHOS-EMC geometry for GEANT</b>
+<b> //</b>
+ /*
+ <H2>
+ Geant3 geometry tree of PHOS-EMC in ALICE
+ </H2>
+ <P><CENTER>
+ <IMG Align=BOTTOM ALT="EMC geant tree" SRC="../images/EMCinAlice.gif">
+ </CENTER><P>
+ */
+<b> // </b>
+
+<b> // Get pointer to the array containing media indexes</b>
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> *idtmed = fIdtmed->GetArray() - 699 ;
+
+<b> // ---</b>
+<b> // --- Define PHOS box volume, fPUFPill with thermo insulating foam ---</b>
+<b> // --- Foam Thermo Insulating outer cover dimensions ---</b>
+<b> // --- Put it in bigbox = PHOS</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dphos[3] ;
+ dphos[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0) / 2.0 ;
+ dphos[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) / 2.0 ;
+ dphos[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("EMCA", "BOX ", idtmed[706], dphos, 3) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yO = - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) / 2.0 ;
+
+ gMC->Gspos("EMCA", 1, "PHOS", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Textolit Wall box, position inside EMCA ---</b>
+<b> // --- Textolit Wall box dimentions ---</b>
+
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dptxw[3];
+ dptxw[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(0) / 2.0 ;
+ dptxw[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1) / 2.0 ;
+ dptxw[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PTXW", "BOX ", idtmed[707], dptxw, 3);
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxThickness">GetOuterBoxThickness</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() ) / 2. ;
+
+ gMC->Gspos("PTXW", 1, "EMCA", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // --- </b>
+<b> // --- Define Upper Polystyrene Foam Plate, place inside PTXW ---</b>
+<b> // --- immediately below Foam Thermo Insulation Upper plate ---</b>
+
+<b> // --- Upper Polystyrene Foam plate thickness ---</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpufp[3] ;
+ dpufp[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(0) / 2.0 ;
+ dpufp[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() / 2. ;
+ dpufp[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(2) /2.0 ;
+
+ gMC->Gsvolu("PUFP", "BOX ", idtmed[703], dpufp, 3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ) / 2.0 ;
+
+ gMC->Gspos("PUFP", 1, "PTXW", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define air-filled box, place inside PTXW ---</b>
+<b> // --- Inner AIR volume dimensions ---</b>
+
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpair[3] ;
+ dpair[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(0) / 2.0 ;
+ dpair[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) / 2.0 ;
+ dpair[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PAIR", "BOX ", idtmed[798], dpair, 3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetTextolitBoxSize">GetTextolitBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) ) / 2.0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ;
+
+ gMC->Gspos("PAIR", 1, "PTXW", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b>// --- Dimensions of PbWO4 crystal ---</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlX = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(0) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlY = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(1) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xtlZ = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(2) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dptcb[3] ;
+ dptcb[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * ( xtlX + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() ;
+ dptcb[1] = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0
+ + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() / 2.0 ;
+ dptcb[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNZ">GetNZ</a>() * ( xtlZ + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() ;
+
+ gMC->Gsvolu("PTCB", "BOX ", idtmed[706], dptcb, 3) ;
+
+ yO = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) / 2.0 - dptcb[1]
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() ) ;
+
+ gMC->Gspos("PTCB", 1, "PAIR", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Crystal BLock filled with air, position it inside PTCB ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpcbl[3] ;
+
+ dpcbl[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNPhi">GetNPhi</a>() * ( xtlX + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 ;
+ dpcbl[1] = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0 ;
+ dpcbl[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNZ">GetNZ</a>() * ( xtlZ + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetGapBetweenCrystals">GetGapBetweenCrystals</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("PCBL", "BOX ", idtmed[798], dpcbl, 3) ;
+
+<b> // --- Divide PCBL in X (phi) and Z directions --</b>
+ gMC->Gsdvn("PROW", "PCBL", <a href="../ListOfTypes.html#Int_t">Int_t</a> (<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNPhi">GetNPhi</a>()), 1) ;
+ gMC->Gsdvn("PCEL", "PROW", <a href="../ListOfTypes.html#Int_t">Int_t</a> (<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNZ">GetNZ</a>()), 3) ;
+
+ yO = -<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>() / 2.0 ;
+
+ gMC->Gspos("PCBL", 1, "PTCB", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define STeel (actually, it's titanium) Cover volume, place inside PCEL</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpstc[3] ;
+
+ dpstc[0] = ( xtlX + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ) / 2.0 ;
+ dpstc[1] = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0 ;
+ dpstc[2] = ( xtlZ + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("PSTC", "BOX ", idtmed[704], dpstc, 3) ;
+
+ gMC->Gspos("PSTC", 1, "PCEL", 0.0, 0.0, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Tyvek volume, place inside PSTC ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dppap[3] ;
+
+ dppap[0] = xtlX / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ;
+ dppap[1] = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ) / 2.0 ;
+ dppap[2] = xtlZ / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ;
+
+ gMC->Gsvolu("PPAP", "BOX ", idtmed[702], dppap, 3) ;
+
+ yO = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ) / 2.0
+ - ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalHolderThickness">GetCrystalHolderThickness</a>() ) / 2.0 ;
+
+ gMC->Gspos("PPAP", 1, "PSTC", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define PbWO4 crystal volume, place inside PPAP ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpxtl[3] ;
+
+ dpxtl[0] = xtlX / 2.0 ;
+ dpxtl[1] = xtlY / 2.0 ;
+ dpxtl[2] = xtlZ / 2.0 ;
+
+ gMC->Gsvolu("PXTL", "BOX ", idtmed[699], dpxtl, 3) ;
+
+ yO = ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ) / 2.0 - xtlY / 2.0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ;
+
+ gMC->Gspos("PXTL", 1, "PPAP", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define crystal support volume, place inside PPAP ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpsup[3] ;
+
+ dpsup[0] = xtlX / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ;
+ dpsup[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() / 2.0 ;
+ dpsup[2] = xtlZ / 2.0 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ;
+
+ gMC->Gsvolu("PSUP", "BOX ", idtmed[798], dpsup, 3) ;
+
+ yO = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() / 2.0 - ( xtlY + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalWrapThickness">GetCrystalWrapThickness</a>() ) / 2.0 ;
+
+ gMC->Gspos("PSUP", 1, "PPAP", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define PIN-diode volume and position it inside crystal support ---</b>
+<b> // --- right behind PbWO4 crystal</b>
+
+<b> // --- PIN-diode dimensions ---</b>
+
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dppin[3] ;
+ dppin[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPinDiodeSize">GetPinDiodeSize</a>(0) / 2.0 ;
+ dppin[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPinDiodeSize">GetPinDiodeSize</a>(1) / 2.0 ;
+ dppin[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPinDiodeSize">GetPinDiodeSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PPIN", "BOX ", idtmed[705], dppin, 3) ;
+
+ yO = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSupportHeight">GetCrystalSupportHeight</a>() / 2.0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPinDiodeSize">GetPinDiodeSize</a>(1) / 2.0 ;
+
+ gMC->Gspos("PPIN", 1, "PSUP", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Upper Cooling Panel, place it on top of PTCB ---</b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpucp[3] ;
+<b> // --- Upper Cooling Plate thickness ---</b>
+
+ dpucp[0] = dptcb[0] ;
+ dpucp[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ;
+ dpucp[2] = dptcb[2] ;
+
+ gMC->Gsvolu("PUCP", "BOX ", idtmed[701], dpucp,3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ) / 2.
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetModuleBoxThickness">GetModuleBoxThickness</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperCoolingPlateThickness">GetUpperCoolingPlateThickness</a>() ) ;
+
+ gMC->Gspos("PUCP", 1, "PAIR", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Al Support Plate, position it inside PAIR ---</b>
+<b> // --- right beneath PTCB ---</b>
+<b> // --- Al Support Plate thickness ---</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dpasp[3] ;
+ dpasp[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(0) / 2.0 ;
+ dpasp[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSupportPlateThickness">GetSupportPlateThickness</a>() / 2.0 ;
+ dpasp[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PASP", "BOX ", idtmed[701], dpasp, 3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSupportPlateThickness">GetSupportPlateThickness</a>() ) / 2.
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + dpcbl[1] * 2 ) ;
+
+ gMC->Gspos("PASP", 1, "PAIR", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Thermo Insulating Plate, position it inside PAIR ---</b>
+<b> // --- right beneath PASP ---</b>
+<b> // --- Lower Thermo Insulating Plate thickness ---</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dptip[3] ;
+ dptip[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(0) / 2.0 ;
+ dptip[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLowerThermoPlateThickness">GetLowerThermoPlateThickness</a>() / 2.0 ;
+ dptip[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PTIP", "BOX ", idtmed[706], dptip, 3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLowerThermoPlateThickness">GetLowerThermoPlateThickness</a>() ) / 2.
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + dpcbl[1] * 2 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSupportPlateThickness">GetSupportPlateThickness</a>() ) ;
+
+ gMC->Gspos("PTIP", 1, "PAIR", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // ---</b>
+<b> // --- Define Textolit Plate, position it inside PAIR ---</b>
+<b> // --- right beneath PTIP ---</b>
+<b> // --- Lower Textolit Plate thickness ---</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> dptxp[3] ;
+ dptxp[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(0) / 2.0 ;
+ dptxp[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLowerTextolitPlateThickness">GetLowerTextolitPlateThickness</a>() / 2.0 ;
+ dptxp[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PTXP", "BOX ", idtmed[707], dptxp, 3) ;
+
+ yO = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAirFilledBoxSize">GetAirFilledBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLowerTextolitPlateThickness">GetLowerTextolitPlateThickness</a>() ) / 2.
+ - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoOuterCoverDistance">GetIPtoOuterCoverDistance</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetUpperPlateThickness">GetUpperPlateThickness</a>()
+ - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSecondUpperPlateThickness">GetSecondUpperPlateThickness</a>() + dpcbl[1] * 2 + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetSupportPlateThickness">GetSupportPlateThickness</a>()
+ + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLowerThermoPlateThickness">GetLowerThermoPlateThickness</a>() ) ;
+
+ gMC->Gspos("PTXP", 1, "PAIR", 0.0, yO, 0.0, 0, "ONLY") ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:CreateGeometryforPPSD"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:CreateGeometryforPPSD">AliPHOSv0::CreateGeometryforPPSD</a>()
+{
+<b> // Create the PHOS-PPSD geometry for GEANT</b>
+
+<b> //</b>
+ /*
+ <H2>
+ Geant3 geometry tree of PHOS-PPSD in ALICE
+ </H2>
+ <P><CENTER>
+ <IMG Align=BOTTOM ALT="PPSD geant tree" SRC="../images/PPSDinAlice.gif">
+ </CENTER><P>
+ */
+<b> // </b>
+
+<b> // Get pointer to the array containing media indexes</b>
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> *idtmed = fIdtmed->GetArray() - 699 ;
+
+<b> // The box containing all ppsd's for one PHOS module filled with air </b>
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ppsd[3] ;
+ ppsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) / 2.0 ;
+ ppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) / 2.0 ;
+ ppsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PPSD", "BOX ", idtmed[798], ppsd, 3) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yO = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) / 2.0 ;
+
+ gMC->Gspos("PPSD", 1, "PHOS", 0.0, yO, 0.0, 0, "ONLY") ;
+
+<b> // Now we build a micromegas module</b>
+<b> // The box containing the whole module filled with epoxy (FR4)</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> mppsd[3] ;
+ mppsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) / 2.0 ;
+ mppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(1) / 2.0 ;
+ mppsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("MPPS", "BOX ", idtmed[708], mppsd, 3) ;
+
+<b> // Inside mppsd :</b>
+<b> // 1. The Top Lid made of epoxy (FR4) </b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> tlppsd[3] ;
+ tlppsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) / 2.0 ;
+ tlppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() / 2.0 ;
+ tlppsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("TLPS", "BOX ", idtmed[708], tlppsd, 3) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y0 = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() ) / 2. ;
+
+ gMC->Gspos("TLPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 2. the upper panel made of composite material</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> upppsd[3] ;
+ upppsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+ upppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2.0 ;
+ upppsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("UPPS", "BOX ", idtmed[709], upppsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLidThickness">GetLidThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+
+ gMC->Gspos("UPPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 3. the anode made of Copper</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> anppsd[3] ;
+ anppsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+ anppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2.0 ;
+ anppsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("ANPS", "BOX ", idtmed[710], anppsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. ;
+
+ gMC->Gspos("ANPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 4. the conversion gap + avalanche gap filled with gas</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ggppsd[3] ;
+ ggppsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+ ggppsd[1] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2.0 ;
+ ggppsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("GGPS", "BOX ", idtmed[715], ggppsd, 3) ;
+
+<b> // --- Divide GGPP in X (phi) and Z directions --</b>
+ gMC->Gsdvn("GROW", "GGPS", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfPadsPhi">GetNumberOfPadsPhi</a>(), 1) ;
+ gMC->Gsdvn("GCEL", "GROW", <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfPadsZ">GetNumberOfPadsZ</a>() , 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAnodeThickness">GetAnodeThickness</a>() / 2. - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetConversionGap">GetConversionGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. ;
+
+ gMC->Gspos("GGPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+
+<b> // 6. the cathode made of Copper</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> cappsd[3] ;
+ cappsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+ cappsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2.0 ;
+ cappsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("CAPS", "BOX ", idtmed[710], cappsd, 3) ;
+
+ y0 = y0 - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() + <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetAvalancheGap">GetAvalancheGap</a>() ) / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. ;
+
+ gMC->Gspos("CAPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 7. the printed circuit made of G10 </b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> pcppsd[3] ;
+ pcppsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2,.0 ;
+ pcppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2.0 ;
+ pcppsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("PCPS", "BOX ", idtmed[711], cappsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCathodeThickness">GetCathodeThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. ;
+
+ gMC->Gspos("PCPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 8. the lower panel made of composite material</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> lpppsd[3] ;
+ lpppsd[0] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+ lpppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2.0 ;
+ lpppsd[2] = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegasWallThickness">GetMicromegasWallThickness</a>() ) / 2.0 ;
+
+ gMC->Gsvolu("LPPS", "BOX ", idtmed[709], lpppsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPCThickness">GetPCThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCompositeThickness">GetCompositeThickness</a>() / 2. ;
+
+ gMC->Gspos("LPPS", 1, "MPPS", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // Position the fNumberOfModulesPhi x fNumberOfModulesZ modules (mppsd) inside PPSD to cover a PHOS module</b>
+<b> // the top and bottom one's (which are assumed identical) :</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yt = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() ) / 2. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yb = - ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas2Thickness">GetMicromegas2Thickness</a>() ) / 2. ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> copyNumbertop = 0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> copyNumberbot = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ) / 2. ;
+
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iphi = 1; iphi <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>(); iphi++ ) { // the number of micromegas modules in phi per PHOS module
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> z = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ) / 2. ;
+
+ for ( <a href="../ListOfTypes.html#Int_t">Int_t</a> iz = 1; iz <= <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>(); iz++ ) { // the number of micromegas modules in z per PHOS module
+ gMC->Gspos("MPPS", ++copyNumbertop, "PPSD", x, yt, z, 0, "ONLY") ;
+ gMC->Gspos("MPPS", ++copyNumberbot, "PPSD", x, yb, z, 0, "ONLY") ;
+ z = z - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(2) ;
+ } // end of Z module loop
+ x = x - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDModuleSize">GetPPSDModuleSize</a>(0) ;
+ } // end of phi module loop
+
+<b> // The Lead converter between two air gaps</b>
+<b> // 1. Upper air gap</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> uappsd[3] ;
+ uappsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) / 2.0 ;
+ uappsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() / 2.0 ;
+ uappsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("UAPPSD", "BOX ", idtmed[798], uappsd, 3) ;
+
+ y0 = ( <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) - 2 * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicromegas1Thickness">GetMicromegas1Thickness</a>() - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() ) / 2. ;
+
+ gMC->Gspos("UAPPSD", 1, "PPSD", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 2. Lead converter</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> lcppsd[3] ;
+ lcppsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) / 2.0 ;
+ lcppsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() / 2.0 ;
+ lcppsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("LCPPSD", "BOX ", idtmed[712], lcppsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetMicro1ToLeadGap">GetMicro1ToLeadGap</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() / 2. ;
+
+ gMC->Gspos("LCPPSD", 1, "PPSD", 0.0, y0, 0.0, 0, "ONLY") ;
+
+<b> // 3. Lower air gap</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> lappsd[3] ;
+ lappsd[0] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(0) / 2.0 ;
+ lappsd[1] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>() / 2.0 ;
+ lappsd[2] = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("LAPPSD", "BOX ", idtmed[798], lappsd, 3) ;
+
+ y0 = y0 - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadConverterThickness">GetLeadConverterThickness</a>() / 2. - <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetLeadToMicro2Gap">GetLeadToMicro2Gap</a>() / 2. ;
+
+ gMC->Gspos("LAPPSD", 1, "PPSD", 0.0, y0, 0.0, 0, "ONLY") ;
+
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSv0:Digitize"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSv0.html#AliPHOSv0:Digitize">AliPHOSv0::Digitize</a>(<a href="../ListOfTypes.html#Float_t">Float_t</a> Energy)
+{
+<b> // Applies the energy calibration</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> fB = 100000000. ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> fA = 0. ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> chan = <a href="../ListOfTypes.html#Int_t">Int_t</a>(fA + Energy*fB ) ;
+ return chan ;
+}
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSv0:FinishEvent"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:FinishEvent">AliPHOSv0::FinishEvent</a>()
+{
+<b> // Makes the digits from the sum of summed hit in a single crystal or PPSD gas cell</b>
+<b> // Adds to the energy the electronic noise</b>
+<b> // Keeps digits with energy above <a href=".././AliPHOSv0.html#AliPHOSv0:fDigitThreshold">fDigitThreshold</a></b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> i ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4];
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> j ;
+ TClonesArray &lDigits = *fDigits ;
+ <a href=".././AliPHOSHit.html">AliPHOSHit</a> * hit ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * newdigit ;
+ <a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * curdigit ;
+ <a href="../ListOfTypes.html#Bool_t">Bool_t</a> deja = kFALSE ;
+
+ for ( i = 0 ; i < <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> ; i++ ) {
+ hit = (<a href=".././AliPHOSHit.html">AliPHOSHit</a>*)<a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>->At(i) ;
+ newdigit = new <a href=".././AliPHOSDigit.html">AliPHOSDigit</a>( hit->GetPrimary(), hit->GetId(), <a href="#AliPHOSv0:Digitize">Digitize</a>( hit->GetEnergy() ) ) ;
+ deja =kFALSE ;
+ for ( j = 0 ; j < fNdigits ; j++) {
+ curdigit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a>*) lDigits[j] ;
+ if ( *curdigit == *newdigit) {
+ *curdigit = *curdigit + *newdigit ;
+ deja = kTRUE ;
+ }
+ }
+ if ( !deja ) {
+ new(lDigits[fNdigits]) <a href=".././AliPHOSDigit.html">AliPHOSDigit</a>(* newdigit) ;
+ fNdigits++ ;
+ }
+
+ delete newdigit ;
+ }
+
+<b> // Noise induced by the PIN diode of the PbWO crystals</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> energyandnoise ;
+ for ( i = 0 ; i < fNdigits ; i++ ) {
+ newdigit = (<a href=".././AliPHOSDigit.html">AliPHOSDigit</a> * ) fDigits->At(i) ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:AbsToRelNumbering">AbsToRelNumbering</a>(newdigit->GetId(), relid) ;
+
+ if (relid[1]==0){ // Digits belong to EMC (PbW0_4 crystals)
+ energyandnoise = newdigit->GetAmp() + <a href="#AliPHOSv0:Digitize">Digitize</a>(gRandom->Gaus(0., <a href=".././AliPHOSv0.html#AliPHOSv0:fPinElectronicNoise">fPinElectronicNoise</a>)) ;
+
+ if (energyandnoise < 0 )
+ energyandnoise = 0 ;
+
+ newdigit->SetAmp(energyandnoise) ;
+
+ if ( newdigit->GetAmp() < <a href=".././AliPHOSv0.html#AliPHOSv0:fDigitThreshold">fDigitThreshold</a> ) // if threshold not surpassed, remove digit from list
+ fDigits->RemoveAt(i) ;
+ }
+ }
+ fDigits->Compress() ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fNTmpHits">fNTmpHits</a> = 0 ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTmpHits">fTmpHits</a>->Delete();
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:Init"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:Init">AliPHOSv0::Init</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Just prints an information message</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> i;
+
+ printf("n");
+ for(i=0;i<35;i++) printf("*");
+ printf(" PHOS_INIT ");
+ for(i=0;i<35;i++) printf("*");
+ printf("n");
+
+<b> // Here the PHOS initialisation code (if any!)</b>
+
+ for(i=0;i<80;i++) printf("*");
+ printf("n");
+
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSv0:MakeBranch"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:MakeBranch">AliPHOSv0::MakeBranch</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a>* opt)
+{
+<b> // Create new branche in the current Root Tree in the digit Tree</b>
+
+ AliDetector::<a href="#AliPHOSv0:MakeBranch">MakeBranch</a>(opt) ;
+
+ <a href="../ListOfTypes.html#char">char</a> branchname[10];
+ sprintf(branchname,"%s",GetName());
+ <a href="../ListOfTypes.html#char">char</a> *cdD = strstr(opt,"D");
+
+ if (fDigits && gAlice->TreeD() && cdD) {
+ gAlice->TreeD()->Branch(branchname,&fDigits, fBufferSize);
+ }
+}
+
+<b>//_____________________________________________________________________________</b>
+<a name="AliPHOSv0:Reconstruction"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:Reconstruction">AliPHOSv0::Reconstruction</a>(<a href=".././AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner)
+{
+<b> // 1. Reinitializes the existing RecPoint, TrackSegment, and RecParticles Lists and </b>
+<b> // 2. Creates a branch in TreeR for each list</b>
+<b> // 3. Steers the reconstruction processes</b>
+<b> // 4. Saves the 3 lists in TreeR</b>
+<b> // 5. Write the Tree to File</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fReconstructioner">fReconstructioner</a> = Reconstructioner ;
+
+ <a href="../ListOfTypes.html#char">char</a> branchname[10] ;
+
+<b> // 1.</b>
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>) {
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a> = 0 ;
+ }
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>= new <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a>("<a href=".././AliPHOSEmcRecPoint.html">AliPHOSEmcRecPoint</a>", 100) ;
+ if ( <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a> && gAlice->TreeR() ) {
+ sprintf(branchname,"%sERP",GetName()) ;
+ gAlice->TreeR()->Branch(branchname, &<a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>, fBufferSize);
+ }
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a>) {
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> = 0 ;
+ }
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> = new <a href="../ListOfTypes.html#RecPointsList">RecPointsList</a>("<a href=".././AliPHOSPpsdRecPoint.html">AliPHOSPpsdRecPoint</a>", 100) ;
+ if ( <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a> && gAlice->TreeR() ) {
+ sprintf(branchname,"%sPRP",GetName()) ;
+ gAlice->TreeR()->Branch(branchname, &<a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a>, fBufferSize);
+ }
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a>) {
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> = 0 ;
+ }
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> = new <a href="../ListOfTypes.html#TrackSegmentsList">TrackSegmentsList</a>(100) ;
+<b>// if ( <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a> && gAlice->TreeR() ) { </b>
+<b>// sprintf(branchname,"%sTS",GetName()) ;</b>
+<b>// gAlice->TreeR()->Branch(branchname, &<a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a>, fBufferSize);</b>
+<b>// }</b>
+
+ if (<a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a>) {
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a>->Delete() ;
+ delete <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a> ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a> = 0 ;
+ }
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a> = new <a href="../ListOfTypes.html#RecParticlesList">RecParticlesList</a>("<a href=".././AliPHOSRecParticle.html">AliPHOSRecParticle</a>", 100) ;
+ if ( <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a> && gAlice->TreeR() ) {
+ sprintf(branchname,"%sRP",GetName()) ;
+ gAlice->TreeR()->Branch(branchname, &<a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a>, fBufferSize);
+ }
+
+<b> // 3.</b>
+
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fReconstructioner">fReconstructioner</a>-><a href=".././AliPHOSReconstructioner.html#AliPHOSReconstructioner:Make">Make</a>(fDigits, <a href=".././AliPHOSv0.html#AliPHOSv0:fEmcClusters">fEmcClusters</a>, <a href=".././AliPHOSv0.html#AliPHOSv0:fPpsdClusters">fPpsdClusters</a>, <a href=".././AliPHOSv0.html#AliPHOSv0:fTrackSegments">fTrackSegments</a>, <a href=".././AliPHOSv0.html#AliPHOSv0:fRecParticles">fRecParticles</a>);
+
+<b> // 4.</b>
+
+ gAlice->TreeR()->Fill() ;
+
+<b> // 5.</b>
+
+ gAlice->TreeR()->Write() ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv0:StepManager"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv0.html#AliPHOSv0:StepManager">AliPHOSv0::StepManager</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Accumulates hits as <a href="../ListOfTypes.html#long">long</a> as the track stays in a single crystal or PPSD gas Cell</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ; // (box, layer, row, column) indices
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xyze[4] ; // position wrt MRS and energy deposited
+ TLorentzVector pos ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> copy ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> primary = gAlice->GetPrimary( gAlice->CurrentTrack() );
+ TString name = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName() ;
+ if ( name == "GPS2" ) { // the CPV is a PPSD
+ if( gMC->CurrentVolID(copy) == gMC->VolId("GCEL") ) // We are inside a gas cell
+ {
+ gMC->TrackPosition(pos) ;
+ xyze[0] = pos[0] ;
+ xyze[1] = pos[1] ;
+ xyze[2] = pos[2] ;
+ xyze[3] = gMC->Edep() ;
+
+ if ( xyze[3] != 0 ) { // there is deposited energy
+ gMC->CurrentVolOffID(5, relid[0]) ; // get the PHOS Module number
+ gMC->CurrentVolOffID(3, relid[1]) ; // get the Micromegas Module number
+<b> // 1-> Geom->GetNumberOfModulesPhi() * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() upper </b>
+<b> // > <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() lower</b>
+ gMC->CurrentVolOffID(1, relid[2]) ; // get the row number of the cell
+ gMC->CurrentVolID(relid[3]) ; // get the column number
+
+<b> // get the absolute Id number</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> absid ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(relid, absid) ;
+
+<b> // add current hit to the hit list </b>
+ <a href="#AliPHOSv0:AddHit">AddHit</a>(primary, absid, xyze);
+
+ } // there is deposited energy
+ } // We are inside the gas of the CPV
+ } // GPS2 configuration
+
+ if(gMC->CurrentVolID(copy) == gMC->VolId("PXTL") ) // We are inside a PBWO crystal
+ {
+ gMC->TrackPosition(pos) ;
+ xyze[0] = pos[0] ;
+ xyze[1] = pos[1] ;
+ xyze[2] = pos[2] ;
+ xyze[3] = gMC->Edep() ;
+
+ if ( xyze[3] != 0 ) {
+ gMC->CurrentVolOffID(10, relid[0]) ; // get the PHOS module number ;
+ relid[1] = 0 ; // means PBW04
+ gMC->CurrentVolOffID(4, relid[2]) ; // get the row number inside the module
+ gMC->CurrentVolOffID(3, relid[3]) ; // get the cell number inside the module
+
+<b> // get the absolute Id number</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> absid ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(relid, absid) ;
+
+<b> // add current hit to the hit list</b>
+
+ <a href="#AliPHOSv0:AddHit">AddHit</a>(primary, absid, xyze);
+
+ } // there is deposited energy
+ } // we are inside a PHOS Xtal
+}
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Thu Mar 9 00:11:53 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSv1 - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation version v0 of PHOS Manager class </b>
+<b>// Layout EMC + PPSD has name GPS2 </b>
+<b>// The main goal of this version of <a href=".././AliPHOS.html">AliPHOS</a> is to calculte the </b>
+<b>// induced charged in the PIN diode, taking into account light</b>
+<b>// tracking in the PbWO4 crystal, induced signal in the </b>
+<b>// PIN due to MIPS particle and electronic noise.</b>
+<b>// This is done in the StepManager </b>
+<b>// </b>
+<b>//*-- Author: Odd Harald Oddland & Gines Martinez (SUBATECH)</b>
+
+
+<b>// --- ROOT system ---</b>
+#include "TRandom.h"
+
+<b>// --- Standard library ---</b>
+
+#include <cstdio>
+#include <cstring>
+#include <cstdlib>
+#include <strstream>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSv1.h">AliPHOSv1.h</a>"
+#include "<a href="../AliPHOSHit.h">AliPHOSHit.h</a>"
+#include "<a href="../AliPHOSDigit.h">AliPHOSDigit.h</a>"
+#include "AliRun.h"
+#include "AliConst.h"
+
+ClassImp(AliPHOSv1)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv1:AliPHOSv1"> </a><a href=".././AliPHOSv1.html#AliPHOSv1:AliPHOSv1">AliPHOSv1::AliPHOSv1</a>(const <a href="../ListOfTypes.html#char">char</a> *name, const <a href="../ListOfTypes.html#char">char</a> *title):
+ <a href=".././AliPHOSv0.html">AliPHOSv0</a>(name,title)
+{
+<b> // ctor </b>
+
+<b> // Number of electrons created in the PIN due to light collected in the PbWo4 crystal is calculated using </b>
+<b> // following formula</b>
+<b> // NumberOfElectrons = EnergyLost * LightYield * PINEfficiency * </b>
+<b> // exp (-LightYieldAttenuation * DistanceToPINdiodeFromTheHit) *</b>
+<b> // RecalibrationFactor ;</b>
+<b> // LightYield is obtained as a Poissonian distribution with a mean at 700000 photons per GeV fromValery Antonenko</b>
+<b> // PINEfficiency is 0.1875 from Odd Harald Odland work</b>
+<b> // k_0 is 0.0045 from Valery Antonenko </b>
+
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldMean">fLightYieldMean</a> = 700000. ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fIntrinsicPINEfficiency">fIntrinsicPINEfficiency</a> = 0.1875 ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldAttenuation">fLightYieldAttenuation</a> = 0.0045 ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fRecalibrationFactor">fRecalibrationFactor</a> = 6.2 / <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldMean">fLightYieldMean</a> ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fElectronsPerGeV">fElectronsPerGeV</a> = 2.77e+8 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv1:AliPHOSv1"> </a><a href=".././AliPHOSv1.html#AliPHOSv1:AliPHOSv1">AliPHOSv1::AliPHOSv1</a>(<a href=".././AliPHOSReconstructioner.html">AliPHOSReconstructioner</a> * Reconstructioner, const <a href="../ListOfTypes.html#char">char</a> *name, const <a href="../ListOfTypes.html#char">char</a> *title):
+ <a href=".././AliPHOSv0.html">AliPHOSv0</a>(Reconstructioner,name,title)
+{
+<b> // ctor </b>
+
+<b> // Number of electrons created in the PIN due to light collected in the PbWo4 crystal is calculated using </b>
+<b> // following formula</b>
+<b> // NumberOfElectrons = EnergyLost * LightYield * PINEfficiency * </b>
+<b> // exp (-LightYieldAttenuation * DistanceToPINdiodeFromTheHit) *</b>
+<b> // RecalibrationFactor ;</b>
+<b> // LightYield is obtained as a Poissonian distribution with a mean at 700000 photons per GeV fromValery Antonenko</b>
+<b> // PINEfficiency is 0.1875 from Odd Harald Odland work</b>
+<b> // k_0 is 0.0045 from Valery Antonenko </b>
+
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldMean">fLightYieldMean</a> = 700000.;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fIntrinsicPINEfficiency">fIntrinsicPINEfficiency</a> = 0.1875 ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldAttenuation">fLightYieldAttenuation</a> = 0.0045 ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fRecalibrationFactor">fRecalibrationFactor</a> = 6.2 / <a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldMean">fLightYieldMean</a> ;
+ <a href=".././AliPHOSv1.html#AliPHOSv1:fElectronsPerGeV">fElectronsPerGeV</a> = 2.77e+8 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSv1:StepManager"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSv1.html#AliPHOSv1:StepManager">AliPHOSv1::StepManager</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Accumulates hits as <a href="../ListOfTypes.html#long">long</a> as the track stays in a single crystal or PPSD gas Cell</b>
+<b> // Adds the energy deposited in the PIN diode</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> relid[4] ; // (box, layer, row, column) indices
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xyze[4] ; // position wrt MRS and energy deposited
+ TLorentzVector pos ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> copy;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> lightyield ; // Light Yield per GeV
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> nElectrons ; // Number of electrons in the PIN diode
+ TString name = <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>->GetName() ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> global[3] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> local[3] ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> lostenergy ;
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> primary = gAlice->GetPrimary( gAlice->CurrentTrack() );
+
+ if ( name == "GPS2" ) { // the CPV is a PPSD
+ if( gMC->CurrentVolID(copy) == gMC->VolId("GCEL") ) // We are inside a gas cell
+ {
+ gMC->TrackPosition(pos) ;
+ xyze[0] = pos[0] ;
+ xyze[1] = pos[1] ;
+ xyze[2] = pos[2] ;
+ xyze[3] = gMC->Edep() ;
+
+
+ if ( xyze[3] != 0 ) { // there is deposited energy
+ gMC->CurrentVolOffID(5, relid[0]) ; // get the PHOS Module number
+ gMC->CurrentVolOffID(3, relid[1]) ; // get the Micromegas Module number
+<b> // 1-> Geom->GetNumberOfModulesPhi() * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() upper </b>
+<b> // > <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesPhi">GetNumberOfModulesPhi</a>() * <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNumberOfModulesZ">GetNumberOfModulesZ</a>() lower</b>
+ gMC->CurrentVolOffID(1, relid[2]) ; // get the row number of the cell
+ gMC->CurrentVolID(relid[3]) ; // get the column number
+
+<b> // get the absolute Id number</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> absid ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(relid,absid) ;
+
+
+ AddHit(primary, absid, xyze );
+
+ } // there is deposited energy
+ } // We are inside the gas of the CPV
+ } // GPS2 configuration
+
+ if(gMC->CurrentVolID(copy) == gMC->VolId("PXTL") )// We are inside a PBWO crystal
+ {
+ gMC->TrackPosition(pos) ;
+ xyze[0] = pos[0] ;
+ xyze[1] = pos[1] ;
+ xyze[2] = pos[2] ;
+ lostenergy = gMC->Edep() ;
+ xyze[3] = gMC->Edep() ;
+
+ global[0] = pos[0] ;
+ global[1] = pos[1] ;
+ global[2] = pos[2] ;
+
+ if ( xyze[3] != 0 ) {
+ gMC->CurrentVolOffID(10, relid[0]) ; // get the PHOS module number ;
+ relid[1] = 0 ; // means PW04
+ gMC->CurrentVolOffID(4, relid[2]) ; // get the row number inside the module
+ gMC->CurrentVolOffID(3, relid[3]) ; // get the cell number inside the module
+
+<b> // get the absolute Id number</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> absid ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(relid,absid) ;
+ gMC->Gmtod(global, local, 1) ;
+
+<b> // calculating number of electrons in the PIN diode asociated to this hit</b>
+ lightyield = gRandom->Poisson(<a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldMean">fLightYieldMean</a>) ;
+ nElectrons = lostenergy * lightyield * <a href=".././AliPHOSv1.html#AliPHOSv1:fIntrinsicPINEfficiency">fIntrinsicPINEfficiency</a> *
+ exp(-<a href=".././AliPHOSv1.html#AliPHOSv1:fLightYieldAttenuation">fLightYieldAttenuation</a> * (local[1]+<a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetCrystalSize">GetCrystalSize</a>(1)/2.0 ) ) ;
+
+ xyze[3] = nElectrons * <a href=".././AliPHOSv1.html#AliPHOSv1:fRecalibrationFactor">fRecalibrationFactor</a> ;
+<b> // add current hit to the hit list</b>
+ AddHit(primary, absid, xyze);
+
+ } // there is deposited energy
+ } // we are inside a PHOS Xtal
+
+ if(gMC->CurrentVolID(copy) == gMC->VolId("PPIN") ) // We are inside de PIN diode
+ {
+ gMC->TrackPosition(pos) ;
+ xyze[0] = pos[0] ;
+ xyze[1] = pos[1] ;
+ xyze[2] = pos[2] ;
+ lostenergy = gMC->Edep() ;
+ xyze[3] = gMC->Edep() ;
+
+ if ( xyze[3] != 0 ) {
+ gMC->CurrentVolOffID(11, relid[0]) ; // get the PHOS module number ;
+ relid[1] = 0 ; // means PW04 and PIN
+ gMC->CurrentVolOffID(5, relid[2]) ; // get the row number inside the module
+ gMC->CurrentVolOffID(4, relid[3]) ; // get the cell number inside the module
+
+<b> // get the absolute Id number</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> absid ;
+ <a href=".././AliPHOSv0.html#AliPHOSv0:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:RelToAbsNumbering">RelToAbsNumbering</a>(relid,absid) ;
+
+<b> // calculating number of electrons in the PIN diode asociated to this hit</b>
+ nElectrons = lostenergy * <a href=".././AliPHOSv1.html#AliPHOSv1:fElectronsPerGeV">fElectronsPerGeV</a> ;
+ xyze[3] = nElectrons * <a href=".././AliPHOSv1.html#AliPHOSv1:fRecalibrationFactor">fRecalibrationFactor</a> ;
+
+<b> // add current hit to the hit list</b>
+ AddHit(primary, absid, xyze);
+<b> //printf("PIN volume is %d, %d, %d, %d n",relid[0],relid[1],relid[2],relid[3]);</b>
+<b> //printf("Lost energy in the PIN is %f n",lostenergy) ;</b>
+ } // there is deposited energy
+ } // we are inside a PHOS XtalPHOS PIN diode
+}
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-// IETF/DTD HTML 2.0// EN">
+<html>
+<!-- -->
+<!-- Author: ROOT team (rootdev@hpsalo.cern.ch) -->
+<!-- -->
+<!-- Date: Sun Mar 12 00:48:27 2000 -->
+<!-- -->
+<head>
+<title>AliPHOSvFast - source file</title>
+<link rev=made href="mailto:rootdev@root.cern.ch">
+<meta name="rating" content="General">
+<meta name="objecttype" content="Manual">
+<meta name="keywords" content="software development, oo, object oriented, unix, x11, motif, windows nt, c++, html, rene brun, fons rademakers">
+<meta name="description" content="ROOT - An Object Oriented Framework For Large Scale Data Analysis.">
+</head>
+<body BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#551a8b" ALINK="#ff0000" TEXT="#000000">
+<a name="TopOfPage"></a>
+<pre>
+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+<b>//_________________________________________________________________________</b>
+<b>// Implementation of the PHOS manager class for fast simulations </b>
+<b>// Tracks particles until the reach a grossly designed PHOS module</b>
+<b>// Modify the particles property (momentum, energy, type) according to</b>
+<b>// the PHOS response function. The result is called a virtual reconstructed</b>
+<b>// particle. </b>
+<b>//</b>
+<b>//*-- Author: Yves Schutz (SUBATECH)</b>
+
+<b>// --- ROOT system ---</b>
+
+#include "TBRIK.h"
+#include "TNode.h"
+#include "TParticle.h"
+
+<b>// --- Standard library ---</b>
+
+#include <cstdio>
+
+<b>// --- AliRoot header files ---</b>
+
+#include "<a href="../AliPHOSvFast.h">AliPHOSvFast.h</a>"
+#include "AliRun.h"
+#include "AliConst.h"
+
+ClassImp(AliPHOSvFast)
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:AliPHOSvFast"> </a><a href=".././AliPHOSvFast.html#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast::AliPHOSvFast</a>()
+{
+<b> // ctor</b>
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a> = 0 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fNRecParticles">fNRecParticles</a> = 0 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:AliPHOSvFast"> </a><a href=".././AliPHOSvFast.html#AliPHOSvFast:AliPHOSvFast">AliPHOSvFast::AliPHOSvFast</a>(const <a href="../ListOfTypes.html#char">char</a> *name, const <a href="../ListOfTypes.html#char">char</a> *title):
+ <a href=".././AliPHOS.html">AliPHOS</a>(name,title)
+{
+<b> // ctor</b>
+
+<b> // gets an instance of the geometry parameters class </b>
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a> = <a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetInstance">AliPHOSGeometry::GetInstance</a>(title, "") ;
+
+ if (<a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:IsInitialized">IsInitialized</a>() )
+ cout << "<a href=".././AliPHOSvFast.html">AliPHOSvFast</a> : PHOS geometry intialized for " << <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>->GetName() << endl ;
+ else
+ cout << "<a href=".././AliPHOSvFast.html">AliPHOSvFast</a> : PHOS geometry initialization failed !" << endl ;
+
+ <a href="#AliPHOSvFast:SetBigBox">SetBigBox</a>(0, <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0) ) ;
+ <a href="#AliPHOSvFast:SetBigBox">SetBigBox</a>(1, <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(1) + <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPPSDBoxSize">GetPPSDBoxSize</a>(1) ) ;
+ <a href="#AliPHOSvFast:SetBigBox">SetBigBox</a>(2, <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetOuterBoxSize">GetOuterBoxSize</a>(0) );
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fNRecParticles">fNRecParticles</a> = 0 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a> = new <a href="../ListOfTypes.html#FastRecParticlesList">FastRecParticlesList</a>("<a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>", 100) ;
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara1">fResPara1</a> = 0.030 ; // GeV
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara2">fResPara2</a> = 0.00003 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara3">fResPara3</a> = 0.00001 ;
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaA0">fPosParaA0</a> = 2.87 ; // mm
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaA1">fPosParaA1</a> = -0.0975 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB0">fPosParaB0</a> = 0.257 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB1">fPosParaB1</a> = 0.137 ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB2">fPosParaB2</a> = 0.00619 ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:~AliPHOSvFast"> </a><a href=".././AliPHOSvFast.html">AliPHOSvFast</a>::~<a href=".././AliPHOSvFast.html">AliPHOSvFast</a>()
+{
+<b> // dtor</b>
+
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a>->Delete() ;
+ delete <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a> ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a> = 0 ;
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:AddRecParticle"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:AddRecParticle">AliPHOSvFast::AddRecParticle</a>(const <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+{
+<b> // Add a virtually reconstructed particle to the list </b>
+
+ new( (*<a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a>)[<a href=".././AliPHOSvFast.html#AliPHOSvFast:fNRecParticles">fNRecParticles</a>] ) <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a>(rp) ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fNRecParticles">fNRecParticles</a>++ ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:BuildGeometry"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:BuildGeometry">AliPHOSvFast::BuildGeometry</a>()
+{
+<b> // Build the PHOS geometry for the ROOT display</b>
+<b> //</b>
+ /*
+ <H2>
+ PHOS FAST in ALICE displayed by root
+ </H2>
+ <H4> All Views </H4>
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Fast All Views" SRC="../images/AliPHOSvFastAllViews.gif">
+ </CENTER></P>
+ <H4> Front View </H4>
+ <P>
+ <CENTER>
+ <IMG Align=BOTTOM ALT="Fast Front View" SRC="../images/AliPHOSvFastFrontView.gif">
+ </CENTER></P>
+ */
+<b> // </b>
+
+ const <a href="../ListOfTypes.html#Int_t">Int_t</a> kColorPHOS = kRed ;
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+
+ new TBRIK( "BigBox", "PHOS box", "<a href="../ListOfTypes.html#void">void</a>", <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(0)/2,
+ <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(1)/2,
+ <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(2)/2 );
+
+<b> // position PHOS into ALICE</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() + <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(1) / 2.0 ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> number = 988 ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> pphi = TMath::ATan( <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(0) / ( 2.0 * <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() ) ) ;
+ pphi *= kRADDEG ;
+ TNode * top = gAlice->GetGeometry()->GetNode("alice") ;
+
+ <a href="../ListOfTypes.html#char">char</a> * nodename = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+ <a href="../ListOfTypes.html#char">char</a> * rotname = new <a href="../ListOfTypes.html#char">char</a>[20] ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>(); i++ ) {
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = pphi * 2 * ( i - <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>() / 2.0 - 0.5 ) ;
+ sprintf(rotname, "%s%d", "rot", number++) ;
+ new TRotMatrix(rotname, rotname, 90, angle, 90, 90 + angle, 0, 0);
+ top->cd();
+ sprintf(nodename,"%s%d", "Module", i) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> x = r * TMath::Sin( angle / kRADDEG ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> y = -r * TMath::Cos( angle / kRADDEG ) ;
+ TNode * bigboxnode = new TNode(nodename, nodename, "BigBox", x, y, 0, rotname ) ;
+ bigboxnode->SetLineColor(kColorPHOS) ;
+ fNodes->Add(bigboxnode) ;
+ }
+ delete[] nodename ;
+ delete[] rotname ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:CreateGeometry"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:CreateGeometry">AliPHOSvFast::CreateGeometry</a>()
+{
+<b> // Create the geometry for GEANT</b>
+
+ <a href=".././AliPHOSvFast.html">AliPHOSvFast</a> *phostmp = (<a href=".././AliPHOSvFast.html">AliPHOSvFast</a>*)gAlice->GetModule("PHOS") ;
+
+ if ( phostmp == NULL ) {
+
+ fprintf(stderr, "PHOS detector not found!n") ;
+ return ;
+
+ }
+
+<b> // Get pointer to the array containing media indeces</b>
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> *idtmed = fIdtmed->GetArray() - 699 ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> bigbox[3] ;
+ bigbox[0] = <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(0) / 2.0 ;
+ bigbox[1] = <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(1) / 2.0 ;
+ bigbox[2] = <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(2) / 2.0 ;
+
+ gMC->Gsvolu("PHOS", "BOX ", idtmed[798], bigbox, 3) ;
+
+<b> // --- Position PHOS mdules in ALICE setup ---</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> idrotm[99] ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> const kRADDEG = 180.0 / kPI ;
+
+ for( <a href="../ListOfTypes.html#Int_t">Int_t</a> i = 1; i <= <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetNModules">GetNModules</a>(); i++ ) {
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> angle = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(i) ;
+ AliMatrix(idrotm[i-1], 90.0, angle, 90.0, 90.0+angle, 0.0, 0.0) ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> r = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetIPtoCrystalSurface">GetIPtoCrystalSurface</a>() + <a href="#AliPHOSvFast:GetBigBox">GetBigBox</a>(1) / 2.0 ;
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> xP1 = r * TMath::Sin( angle / kRADDEG ) ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> yP1 = -r * TMath::Cos( angle / kRADDEG ) ;
+ gMC->Gspos("PHOS", i, "ALIC", xP1, yP1, 0.0, idrotm[i-1], "ONLY") ;
+
+ } // for GetNModules
+
+}
+
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:Init"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:Init">AliPHOSvFast::Init</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Prints out an information message</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> i;
+
+ printf("n");
+ for(i=0;i<35;i++) printf("*");
+ printf(" FAST PHOS_INIT ");
+ for(i=0;i<35;i++) printf("*");
+ printf("n");
+
+<b> // Here the PHOS initialisation code (if any!)</b>
+
+ for(i=0;i<80;i++) printf("*");
+ printf("n");
+
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSvFast:GetBigBox"> </a><a href="../ListOfTypes.html#Float_t">Float_t</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:GetBigBox">AliPHOSvFast::GetBigBox</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> index)
+{
+<b> // Get the X, Y or Z dimension of the box describing a PHOS module</b>
+
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> rv = 0 ;
+
+ switch (index) {
+ case 0:
+ rv = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxX">fBigBoxX</a> ;
+ break ;
+ case 1:
+ rv = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxY">fBigBoxY</a> ;
+ break ;
+ case 2:
+ rv = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxZ">fBigBoxZ</a> ;
+ break ;
+ }
+ return rv ;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSvFast:MakeBranch"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:MakeBranch">AliPHOSvFast::MakeBranch</a>(<a href="../ListOfTypes.html#Option_t">Option_t</a>* opt)
+{
+<b> // Create new branch in the current reconstructed Root Tree</b>
+
+ AliDetector::<a href="#AliPHOSvFast:MakeBranch">MakeBranch</a>(opt) ;
+
+ <a href="../ListOfTypes.html#char">char</a> branchname[10];
+ sprintf(branchname,"%s",GetName());
+ <a href="../ListOfTypes.html#char">char</a> *cd = strstr(opt,"R");
+
+ if (<a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a> && gAlice->TreeR() && cd) {
+ gAlice->TreeR()->Branch(branchname, &<a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a>, fBufferSize);
+ }
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:MakeEnergy"> </a><a href="../ListOfTypes.html#Double_t">Double_t</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:MakeEnergy">AliPHOSvFast::MakeEnergy</a>(const <a href="../ListOfTypes.html#Double_t">Double_t</a> energy)
+{
+<b> // Smears the energy according to the energy dependent energy resolution.</b>
+<b> // A gaussian distribution is assumed</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> sigma = <a href="#AliPHOSvFast:SigmaE">SigmaE</a>(energy) ;
+ return <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Gaus(energy, sigma) ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:MakePosition"> </a>TVector3 <a href=".././AliPHOSvFast.html#AliPHOSvFast:MakePosition">AliPHOSvFast::MakePosition</a>(const <a href="../ListOfTypes.html#Double_t">Double_t</a> energy, const TVector3 pos, const <a href="../ListOfTypes.html#Double_t">Double_t</a> theta, const <a href="../ListOfTypes.html#Double_t">Double_t</a> phi)
+{
+<b> // Smears the impact position according to the energy dependent position resolution</b>
+<b> // A gaussian position distribution is assumed</b>
+
+ TVector3 newpos ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> sigma = <a href="#AliPHOSvFast:SigmaP">SigmaP</a>( energy, theta*180./TMath::Pi() ) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> x = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Gaus( pos.X(), sigma ) ;
+ sigma = <a href="#AliPHOSvFast:SigmaP">SigmaP</a>( energy, phi*180./TMath::Pi() ) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> z = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Gaus( pos.Z(), sigma ) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> y = pos.Y() ;
+
+ newpos.SetX(x) ;
+ newpos.SetY(y) ;
+ newpos.SetZ(z) ;
+
+ return newpos ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:MakeRecParticle"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:MakeRecParticle">AliPHOSvFast::MakeRecParticle</a>(const <a href="../ListOfTypes.html#Int_t">Int_t</a> modid, const TVector3 pos, <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp)
+{
+<b> // Modify the primary particle properties according</b>
+<b> // 1. the response function of PHOS</b>
+<b> // 2. the performance of the EMC+PPSD setup</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> type = <a href="#AliPHOSvFast:MakeType">MakeType</a>( rp ) ;
+ rp.SetType(type) ;
+
+
+<b> // get the detected energy</b>
+
+ TLorentzVector momentum ;
+ rp.Momentum(momentum) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> kineticenergy = TMath::Sqrt( TMath::Power(momentum.E(), 2) - TMath::Power(rp.GetMass(), 2) ) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> modifiedkineticenergy = <a href="#AliPHOSvFast:MakeEnergy">MakeEnergy</a>(kineticenergy ) ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> modifiedenergy = TMath::Sqrt( TMath::Power(modifiedkineticenergy, 2)
+ + TMath::Power( rp.GetMass(), 2) ) ;
+
+<b> // get the angle of incidence </b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> incidencetheta = 90. * TMath::Pi() /180 - rp.Theta() ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> incidencephi = ( 270 + <a href=".././AliPHOSvFast.html#AliPHOSvFast:fGeom">fGeom</a>-><a href=".././AliPHOSGeometry.html#AliPHOSGeometry:GetPHOSAngle">GetPHOSAngle</a>(modid) ) * TMath::Pi() / 180. - rp.Phi() ;
+
+<b> // get the detected direction</b>
+
+ TVector3 modifiedposition = <a href="#AliPHOSvFast:MakePosition">MakePosition</a>(kineticenergy, pos, incidencetheta, incidencephi) ;
+ modifiedposition *= modifiedkineticenergy / modifiedposition.Mag() ;
+
+<b> // Set the modified 4-momentum of the reconstructed particle</b>
+
+ rp.SetMomentum(modifiedposition.X(), modifiedposition.Y(), modifiedposition.Z(), modifiedenergy) ;
+
+ }
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:MakeType"> </a><a href="../ListOfTypes.html#Int_t">Int_t</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:MakeType">AliPHOSvFast::MakeType</a>(<a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> & rp )
+{
+<b> // Generate a particle type using the performance of the EMC+PPSD setup</b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> rv = kUNDEFINED ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> charge = (<a href="../ListOfTypes.html#Int_t">Int_t</a>)rp.GetPDG()->Charge() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> test ;
+ <a href="../ListOfTypes.html#Float_t">Float_t</a> ran ;
+ if ( charge != 0 && ( TMath::Abs(rp.GetPdgCode()) != 11 ) )
+ test = - 1 ;
+ else
+ test = rp.GetPdgCode() ;
+
+ switch (test) {
+
+ case 22: // it's a photon
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.5 ) // 50 %
+ rv = kGAMMA ;
+ else {
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if( ran <= 0.9498 )
+ rv = kNEUTRALEM ;
+ else
+ rv = kNEUTRALHADRON ;
+ }
+ break ;
+
+ case 2112: // it's a neutron
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.9998 )
+ rv = kNEUTRALHADRON ;
+ else
+ rv = kNEUTRALEM ;
+ break ;
+
+ case -2112: // it's a anti-neutron
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.9984 )
+ rv = kNEUTRALHADRON ;
+ else
+ rv = kNEUTRALEM ;
+ break ;
+
+ case 11: // it's a electron
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.9996 )
+ rv = kELECTRON ;
+ else
+ rv = kCHARGEDHADRON ;
+ break;
+
+ case -11: // it's a positon
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.9996 )
+ rv = kELECTRON ;
+ else
+ rv = kCHARGEDHADRON ;
+ break;
+
+ case -1: // it's a charged
+ ran = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fRan">fRan</a>.Rndm() ;
+ if ( ran <= 0.9996 )
+ rv = kCHARGEDHADRON ;
+ else
+ rv = kGAMMA ;
+
+ break ;
+ }
+
+
+ return rv ;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSvFast:ResetPoints"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:ResetPoints">AliPHOSvFast::ResetPoints</a>()
+{
+<b> // This overloads the method in AliDetector</b>
+
+ <a href="#AliPHOSvFast:ResetFastRecParticles">ResetFastRecParticles</a>() ;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSvFast:ResetFastRecParticles"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:ResetFastRecParticles">AliPHOSvFast::ResetFastRecParticles</a>()
+{
+<b> // Resets the list of virtual reconstructed particles</b>
+
+ if (<a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a>)
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fFastRecParticles">fFastRecParticles</a>->Clear() ;
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fNRecParticles">fNRecParticles</a> = 0 ;
+}
+
+<b>//___________________________________________________________________________</b>
+<a name="AliPHOSvFast:SetBigBox"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:SetBigBox">AliPHOSvFast::SetBigBox</a>(<a href="../ListOfTypes.html#Int_t">Int_t</a> index, <a href="../ListOfTypes.html#Float_t">Float_t</a> value)
+{
+<b> // Set the size of the Box describing a PHOS module</b>
+
+ switch (index) {
+ case 0:
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxX">fBigBoxX</a> = value ;
+ break ;
+ case 1:
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxY">fBigBoxY</a> = value ;
+ break ;
+ case 2:
+ <a href=".././AliPHOSvFast.html#AliPHOSvFast:fBigBoxZ">fBigBoxZ</a> = value ;
+ break ;
+ }
+
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:SigmaE"> </a><a href="../ListOfTypes.html#Double_t">Double_t</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:SigmaE">AliPHOSvFast::SigmaE</a>(<a href="../ListOfTypes.html#Double_t">Double_t</a> energy)
+{
+<b> // Calculates the energy dependent energy resolution</b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> rv = -1 ;
+
+ rv = TMath::Sqrt( TMath::Power(<a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara1">fResPara1</a>/energy, 2)
+ + TMath::Power(<a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara2">fResPara2</a>/TMath::Sqrt(energy), 2)
+ + TMath::Power(<a href=".././AliPHOSvFast.html#AliPHOSvFast:fResPara3">fResPara3</a>, 2) ) ;
+
+ return rv * energy ;
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:SigmaP"> </a><a href="../ListOfTypes.html#Double_t">Double_t</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:SigmaP">AliPHOSvFast::SigmaP</a>(<a href="../ListOfTypes.html#Double_t">Double_t</a> energy, <a href="../ListOfTypes.html#Int_t">Int_t</a> incidence)
+{
+<b> // Calculates the energy dependent position resolution </b>
+
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> paraA = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaA0">fPosParaA0</a> + <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaA1">fPosParaA1</a> * incidence ;
+ <a href="../ListOfTypes.html#Double_t">Double_t</a> paraB = <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB0">fPosParaB0</a> + <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB1">fPosParaB1</a> * incidence + <a href=".././AliPHOSvFast.html#AliPHOSvFast:fPosParaB2">fPosParaB2</a> * incidence * incidence ;
+
+ return ( paraA / TMath::Sqrt(energy) + paraB ) * 0.1 ; // in cm
+}
+
+<b>//____________________________________________________________________________</b>
+<a name="AliPHOSvFast:StepManager"> </a><a href="../ListOfTypes.html#void">void</a> <a href=".././AliPHOSvFast.html#AliPHOSvFast:StepManager">AliPHOSvFast::StepManager</a>(<a href="../ListOfTypes.html#void">void</a>)
+{
+<b> // Only verifies if the particle reaches PHOS and stops the tracking </b>
+
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> primary = gAlice->GetPrimary( gAlice->CurrentTrack() );
+ TLorentzVector lv ;
+ gMC->TrackPosition(lv) ;
+ TVector3 pos = lv.Vect() ;
+ <a href="../ListOfTypes.html#Int_t">Int_t</a> modid ;
+ gMC->CurrentVolID(modid);
+
+<b> // Makes a reconstructed particle from the primary particle</b>
+
+ TClonesArray * particlelist = gAlice->Particles() ;
+ TParticle * part = (TParticle *)particlelist->At(primary) ;
+
+ <a href=".././AliPHOSFastRecParticle.html">AliPHOSFastRecParticle</a> rp(*part) ;
+ rp.SetPrimary(primary) ;
+
+<b> // Adds the response of PHOS to the particle</b>
+
+ <a href="#AliPHOSvFast:MakeRecParticle">MakeRecParticle</a>(modid, pos, rp) ;
+
+<b> // add the primary particle to the FastRecParticles list</b>
+
+ <a href="#AliPHOSvFast:AddRecParticle">AddRecParticle</a>(rp) ;
+
+<b> // stop the track as soon PHOS is reached</b>
+
+ gMC->StopTrack() ;
+
+}
+
+</pre>
+
+<!--SIGNATURE-->
+<br>
+<address>
+<hr>
+<center>
+<a href="http://root.cern.ch/root/Welcome.html">ROOT page</a> - <a href="../ClassIndex.html">Class index</a> - <a href="#TopOfPage">Top of the page</a><br>
+</center>
+<hr>This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to <a href="mailto:rootdev@root.cern.ch">ROOT support</a>, or contact <a href="mailto:rootdev@root.cern.ch">the developers</a> with any questions or problems regarding ROOT.
+</address>
+</body>
+</html>