27-may-2001 NvE New class AliEvent introduced and RALICELinkDef.h & co. updated accor...
authornick <nick@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Jun 2001 13:19:03 +0000 (13:19 +0000)
committernick <nick@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 6 Jun 2001 13:19:03 +0000 (13:19 +0000)
                Also RALICELinkDef.h changed back to old schema evolution (i.e. "+" removed)
                because of problems with I/O in ROOT 3.00/06 w.r.t. multiple inheritance.
29-may-2001 NvE Position reset added in AliVertex::Reset().
01-jun-2001 NvE Memberfunctions Add() renamed explicitly to AddTrack(), AddJet() and
                AddVertex() in AliJet and AliVertex.
03-jun-2001 NvE Treatment of masshypotheses introduced in AliTrack.
04-jun-2001 NvE CVS Log text and keyword replaced by Id in .cxx files and C++ comment
                indicator /* ... */ replaced by // in the Id record of the .h files
                to prevent problems.
06-jun-2001 NvE CVS Date keyword introduced in 'Modified' field in .cxx files so that
                the modification date is updated automatically in the html docs.

38 files changed:
RALICE/Ali3Vector.cxx
RALICE/Ali3Vector.h
RALICE/Ali3VectorObj.cxx
RALICE/Ali3VectorObj.h
RALICE/Ali4Vector.cxx
RALICE/Ali4Vector.h
RALICE/Ali4VectorObj.cxx
RALICE/Ali4VectorObj.h
RALICE/AliBoost.cxx
RALICE/AliBoost.h
RALICE/AliCalcluster.cxx
RALICE/AliCalcluster.h
RALICE/AliCalmodule.cxx
RALICE/AliCalmodule.h
RALICE/AliCalorimeter.cxx
RALICE/AliCalorimeter.h
RALICE/AliInvmass.cxx
RALICE/AliInvmass.h
RALICE/AliJet.cxx
RALICE/AliJet.h
RALICE/AliMath.cxx
RALICE/AliMath.h
RALICE/AliPosition.cxx
RALICE/AliPosition.h
RALICE/AliPositionObj.cxx
RALICE/AliPositionObj.h
RALICE/AliRandom.cxx
RALICE/AliRandom.h
RALICE/AliSample.cxx
RALICE/AliSample.h
RALICE/AliSignal.cxx
RALICE/AliSignal.h
RALICE/AliTrack.cxx
RALICE/AliTrack.h
RALICE/AliVertex.cxx
RALICE/AliVertex.h
RALICE/RALICELinkDef.h
RALICE/history.txt

index 1bb0c72..2868ca1 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class Ali3Vector
@@ -78,7 +73,7 @@ Introduction of the Copyright and cvs Log
 // c=a*5;
 //
 //--- Author: Nick van Eijndhoven 30-mar-1999 UU-SAP Utrecht
-//- Modified: NvE 25-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "Ali3Vector.h"
index 6c8c593..023c76c 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index e0c371a..77e7206 100644 (file)
@@ -13,9 +13,7 @@
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class Ali3VectorObj
@@ -53,6 +51,7 @@ $Log$
 // vec2.Info();
 //
 //--- Author: Nick van Eijndhoven 18-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "Ali3VectorObj.h"
index 156fbc4..5c04019 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include "TObject.h"
 
index 44d6c82..3891ad9 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class Ali4Vector
@@ -132,7 +127,7 @@ Introduction of the Copyright and cvs Log
 // c=a*5;
 //
 //--- Author: Nick van Eijndhoven 01-apr-1999 UU-SAP Utrecht
-//- Modified: NvE 15-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "Ali4Vector.h"
index 9eff7c6..425c089 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index b7fec05..3a5fd9d 100644 (file)
@@ -13,9 +13,7 @@
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class Ali4VectorObj
@@ -53,6 +51,7 @@ $Log$
 // vec2.Info();
 //
 //--- Author: Nick van Eijndhoven 18-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "Ali4VectorObj.h"
index 6b23953..271dde0 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include "TObject.h"
 
index c03a61b..ebe9991 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliBoost
@@ -61,7 +56,7 @@ Introduction of the Copyright and cvs Log
 // b2.Info("sph");
 //
 //--- Author: Nick van Eijndhoven 14-may-1996 UU-SAP Utrecht
-//- Modified: NvE 24-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliBoost.h"
index 83b7bda..d7e0484 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index 46ee98a..297cf1a 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.3  1999/11/03 14:23:17  fca
-New version of RALICE introduced
-
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliCalcluster
@@ -33,7 +25,7 @@ Introduction of the Copyright and cvs Log
 // to enable EM or hadronic cluster identification.
 //
 //--- Author: Nick van Eijndhoven 13-jun-1997 UU-SAP Utrecht
-//- Modified: NvE 18-jan-2000 UU-SAP Utrecht 
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliCalcluster.h"
index 24bd349..2d9e026 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index cddb750..b58078a 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.3  1999/11/03 14:23:17  fca
-New version of RALICE introduced
-
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliCalmodule
@@ -31,7 +23,7 @@ Introduction of the Copyright and cvs Log
 // Note : row and col start counting at 1.
 //
 //--- Author: Nick van Eijndhoven 13-jun-1997 UU-SAP Utrecht
-//- Modified: NvE 18-jan-2000 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliCalmodule.h"
index 0929165..c4856cb 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
  
index 7354792..42d179b 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.3  1999/11/03 14:23:17  fca
-New version of RALICE introduced
-
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliCalorimeter
@@ -56,7 +48,7 @@ Introduction of the Copyright and cvs Log
 //                      // Note : Module gain, edge and dead flags remain
 //
 //--- Author: Nick van Eijndhoven 13-jun-1997 UU-SAP Utrecht
-//- Modified: NvE 03-mar-2000 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliCalorimeter.h"
index 2769fab..a494899 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index a54c867..a688129 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ////////////////////////////////////////////////////////////////////////////////
 // Class AliInvmass
@@ -104,6 +99,7 @@ Introduction of the Copyright and cvs Log
 //        
 //
 //--- Author: Nick van Eijndhoven 12-apr-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ////////////////////////////////////////////////////////////////////////////////
 
 #include "AliInvmass.h"
index b069219..5a32840 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index 8d0f170..a47e0f0 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliJet
@@ -36,10 +31,10 @@ Introduction of the Copyright and cvs Log
 //  ...
 // AliJet j1(5);
 // AliJet j2(12);
-// j1.Add(t1);
-// j1.Add(t2);
-// j2.Add(t3);
-// j2.Add(t4);
+// j1.AddTrack(t1);
+// j1.AddTrack(t2);
+// j2.AddTrack(t3);
+// j2.AddTrack(t4);
 //
 // j1.Info();
 // j2.Info("sph");
@@ -54,7 +49,7 @@ Introduction of the Copyright and cvs Log
 // Note : All quantities are in GeV, GeV/c or GeV/c**2
 //
 //--- Author: Nick van Eijndhoven 10-jul-1997 UU-SAP Utrecht
-//- Modified: NvE 06-apr-1999 UU-SAP Utrecht to inherit from Ali4Vector
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliJet.h"
@@ -120,7 +115,7 @@ void AliJet::Reset()
  if (fNtinit > 0) SetNtinit(fNtinit);
 }
 ///////////////////////////////////////////////////////////////////////////
-void AliJet::Add(AliTrack& t)
+void AliJet::AddTrack(AliTrack& t)
 {
 // Add a track to the jet
 // In case the maximum number of tracks has been reached
index 7190b3c..622fc87 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
  
 #include <iostream.h>
 #include <math.h>
@@ -21,8 +21,8 @@ class AliJet : public TObject,public Ali4Vector
   AliJet(Int_t n);                   // Create a Jet to hold initially n Tracks
   ~AliJet();                         // Default destructor
   void Reset();                      // Reset all values
-  virtual void Add(AliTrack& t);     // Add a track to the jet
-  virtual void Add(AliTrack* t) { Add(*t); }
+  virtual void AddTrack(AliTrack& t);// Add a track to the jet
+  virtual void AddTrack(AliTrack* t) { AddTrack(*t); }
   void Info(TString f);              // Print jet information in coordinate frame f 
   void List(TString f="car");        // Print jet prim. track information for coord. frame f
   void ListAll(TString f="car");     // Print jet prim. and decay track information for coord. frame f
index 5c78bd6..0ccafef 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.3  1999/11/03 14:23:17  fca
-New version of RALICE introduced
-
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliMath
@@ -39,7 +31,7 @@ Introduction of the Copyright and cvs Log
 //                             // correct model
 //
 //--- Author: Nick van Eijndhoven 14-nov-1998 UU-SAP Utrecht
-//- Modified: NvE 12-mar-2000 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliMath.h"
index 8560b5c..c53ba81 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index 75e9745..94541f7 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliPosition
@@ -55,6 +50,7 @@ Introduction of the Copyright and cvs Log
 // q.GetPositionErrors(dloc,"sph");
 //
 //--- Author: Nick van Eijndhoven 06-feb-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliPosition.h"
index e3efa3a..cb49c0d 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index 1fcc771..e5e404c 100644 (file)
@@ -13,9 +13,7 @@
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliPositionObj
@@ -53,6 +51,7 @@ $Log$
 // ssum.Info();
 //
 //--- Author: Nick van Eijndhoven 18-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliPositionObj.h"
index 4c69e94..bc2b278 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include "TObject.h"
 
index 3ccce9b..0840d4f 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliRandom
@@ -108,6 +103,7 @@ Introduction of the Copyright and cvs Log
 // 3) Using the rvec facility saves a lot of CPU time for large n values.
 //
 //--- Author: Nick van Eijndhoven 11-oct-1997 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliRandom.h"
index 0963c2c..c239083 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
index b4c624c..2670a94 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliSample
@@ -44,6 +39,7 @@ Introduction of the Copyright and cvs Log
 // All statistics of a sample are obtained via s.Info().
 //
 //--- Author: Nick van Eijndhoven 30-mar-1996 CERN Geneva
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliSample.h"
index a99c24f..66bdd11 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <math.h>
 #include <iostream.h>
index 3a7c3a6..3296f82 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliSignal
@@ -74,7 +69,7 @@ Introduction of the Copyright and cvs Log
 // q.SetSignalError(error,3);
 //
 //--- Author: Nick van Eijndhoven 23-jan-1999 UU-SAP Utrecht
-//- Modified: NvE 30-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliSignal.h"
index f37eec0..635577c 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include "TObject.h"
 #include "TArrayF.h"
index fe4f949..f51f086 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.2  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliTrack
@@ -91,7 +86,7 @@ Introduction of the Copyright and cvs Log
 // Note : All quantities are in GeV, GeV/c or GeV/c**2
 //
 //--- Author: Nick van Eijndhoven 10-jul-1997 UU-SAP Utrecht
-//- Modified: NvE 29-oct-1999 UU-SAP Utrecht
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliTrack.h"
@@ -104,6 +99,9 @@ AliTrack::AliTrack()
 // All variables initialised to 0
  fDecays=0;
  fSignals=0;
+ fMasses=0;
+ fDmasses=0;
+ fPmasses=0;
  Reset();
 }
 ///////////////////////////////////////////////////////////////////////////
@@ -130,6 +128,7 @@ void AliTrack::Reset()
  fQ=0;
  fNdec=0;
  fNsig=0;
+ fNmasses=0;
  Double_t a[4]={0,0,0,0};
  SetVector(a,"sph");
  if (fDecays)
@@ -147,6 +146,21 @@ void AliTrack::Reset()
  Double_t b[3]={0,0,0};
  fBegin.SetPosition(b,"sph");
  fEnd.SetPosition(b,"sph");
+ if (fMasses)
+ {
+  delete fMasses;
+  fMasses=0;
+ }
+ if (fDmasses)
+ {
+  delete fDmasses;
+  fDmasses=0;
+ }
+ if (fPmasses)
+ {
+  delete fPmasses;
+  fPmasses=0;
+ }
 }
 ///////////////////////////////////////////////////////////////////////////
 void AliTrack::Set3Momentum(Ali3Vector& p)
@@ -187,8 +201,14 @@ void AliTrack::Info(TString f)
  Double_t dm=GetResultError();
  cout << " *AliTrack::Info* Mass : " << m
       << " error : " << dm << " Charge : " << fQ
-      << " Momentum : " << GetMomentum() << " Ntracks : " << fNdec
-      << " Nsignals : " << fNsig << endl;
+      << " Momentum : " << GetMomentum() << " Nmass hyp. : " << fNmasses
+      << " Ntracks : " << fNdec << " Nsignals : " << fNsig << endl;
+ for (Int_t i=0; i<fNmasses; i++)
+ {
+  cout << " Mass hypothesis " << (i+1) << " Mass : " << fMasses->At(i)
+       << " error : " << fDmasses->At(i) << " prob. : " << fPmasses->At(i)
+       << endl;
+ }
  Ali4Vector::Info(f); 
 } 
 ///////////////////////////////////////////////////////////////////////////
@@ -485,3 +505,165 @@ AliPosition AliTrack::GetEndPoint()
  return fEnd;
 }
 ///////////////////////////////////////////////////////////////////////////
+void AliTrack::AddMassHypothesis(Double_t prob,Double_t m,Double_t dm)
+{
+// Add a mass hypothesis for this current track.
+// prob=probalility  m=mass value  dm=error on the mass value.
+// The default value for the mass error dm is 0.
+ if (!fMasses) fMasses=new TArrayD();
+ if (!fDmasses) fDmasses=new TArrayD();
+ if (!fPmasses) fPmasses=new TArrayD();
+
+ fNmasses++;
+ fMasses->Set(fNmasses);
+ fDmasses->Set(fNmasses);
+ fPmasses->Set(fNmasses);
+
+ fMasses->AddAt(m,fNmasses-1);
+ fDmasses->AddAt(dm,fNmasses-1);
+ fPmasses->AddAt(prob,fNmasses-1);
+}
+///////////////////////////////////////////////////////////////////////////
+Int_t AliTrack::GetNMassHypotheses()
+{
+// Provide the number of mass hypotheses for this track.
+ return fNmasses;
+}
+///////////////////////////////////////////////////////////////////////////
+Double_t AliTrack::GetMassHypothesis(Int_t j)
+{
+// Provide the mass of the jth hypothesis for this track.
+// Note : the first hypothesis is indicated by j=1.
+// Default : j=0 ==> Hypothesis with highest probability.
+// The error on the mass can be obtained by invoking GetResultError()
+// after invokation of GetMassHypothesis(j).
+
+ Double_t m=0,dm=0,prob=0;
+
+ // Check validity of index j
+ if (j<0 || j>fNmasses)
+ {
+  cout << " *AliTrack::GetMassHypothesis* Invalid index j : " << j
+       << " Number of mass hypotheses : " << fNmasses << endl;
+  fDresult=0;
+  return 0;
+ }
+
+ // Select mass hypothesis with highest probability
+ if (j==0) 
+ {
+  if (fNmasses) 
+  {
+   m=fMasses->At(0);
+   dm=fDmasses->At(0);
+   prob=fPmasses->At(0);
+   for (Int_t i=1; i<fNmasses; i++)
+   {
+    if (fPmasses->At(i)>prob)
+    {
+     m=fMasses->At(i);
+     dm=fDmasses->At(i);
+    }
+   }
+  }
+  fDresult=dm;
+  return m;  
+ }
+
+ // Provide data of requested mass hypothesis
+ m=fMasses->At(j-1);
+ fDresult=fDmasses->At(j-1);
+ return m;
+}
+///////////////////////////////////////////////////////////////////////////
+Double_t AliTrack::GetMassHypothesisProb(Int_t j)
+{
+// Provide the probability of the jth hypothesis for this track.
+// Note : the first hypothesis is indicated by j=1.
+// Default : j=0 ==> Hypothesis with highest probability.
+
+ Double_t prob=0;
+
+ // Check validity of index j
+ if (j<0 || j>fNmasses)
+ {
+  cout << " *AliTrack::GetMassHypothesisProb* Invalid index j : " << j
+       << " Number of mass hypotheses : " << fNmasses << endl;
+  return 0;
+ }
+
+ // Select mass hypothesis with highest probability
+ if (j==0) 
+ {
+  if (fNmasses) 
+  {
+   prob=fPmasses->At(0);
+   for (Int_t i=1; i<fNmasses; i++)
+   {
+    if (fPmasses->At(i)>prob) prob=fPmasses->At(i);
+   }
+  }
+  return prob;  
+ }
+
+ // Provide probability of requested mass hypothesis
+ prob=fPmasses->At(j-1);
+ return prob;
+}
+///////////////////////////////////////////////////////////////////////////
+void AliTrack::SetMass()
+{
+// Set the mass and error to the value of the hypothesis with highest prob.
+
+ Double_t m=0,dm=0,prob=0;
+
+ // Select mass hypothesis with highest probability
+ if (fNmasses) 
+ {
+  m=fMasses->At(0);
+  dm=fDmasses->At(0);
+  prob=fPmasses->At(0);
+  for (Int_t i=1; i<fNmasses; i++)
+  {
+   if (fPmasses->At(i)>prob)
+   {
+    m=fMasses->At(i);
+    dm=fDmasses->At(i);
+   }
+  }
+  SetMass(m,dm);
+ }
+ else
+ {
+  cout << " *AliTrack::SetMass()* No hypothesis present => No action." << endl;
+ }
+}
+///////////////////////////////////////////////////////////////////////////
+void AliTrack::RemoveMassHypothesis(Int_t j)
+{
+// Remove the jth mass hypothesis for this track.
+// Note : the first hypothesis is indicated by j=1.
+
+ if (j<=0 || j>fNmasses) // Check validity of index j
+ {
+  cout << " *AliTrack::RemoveMassHypothesis* Invalid index j : " << j
+       << " Number of mass hypotheses : " << fNmasses << endl;
+ }
+ else
+ {
+  if (j != fNmasses)
+  {
+   fMasses->AddAt(fMasses->At(fNmasses-1),j-1);
+   fDmasses->AddAt(fDmasses->At(fNmasses-1),j-1);
+   fPmasses->AddAt(fPmasses->At(fNmasses-1),j-1);
+  }
+  fMasses->AddAt(0,fNmasses-1);
+  fDmasses->AddAt(0,fNmasses-1);
+  fPmasses->AddAt(0,fNmasses-1);
+  fNmasses--;
+  fMasses->Set(fNmasses);
+  fDmasses->Set(fNmasses);
+  fPmasses->Set(fNmasses);
+ }
+}
+///////////////////////////////////////////////////////////////////////////
index c018a79..6ce524d 100644 (file)
@@ -4,11 +4,12 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 
 #include "TObject.h"
 #include "TObjArray.h"
+#include "TArrayD.h"
  
 #include "AliSignal.h"
 #include "AliBoost.h"
@@ -23,6 +24,7 @@ class AliTrack : public TObject,public Ali4Vector
   void Set4Momentum(Ali4Vector& p); // Set track 4-momentum
   void Set3Momentum(Ali3Vector& p); // Set track 3-momentum
   void SetMass(Double_t m,Double_t dm=0); // Set particle mass and error
+  void SetMass();                   // Set mass and error to mass hypothesis with highest prob.
   void SetCharge(Float_t q);        // Set particle charge
   void Info(TString f="car");       // Print track information for coord. frame f
   void List(TString f="car");       // Print track and decay level 1 information for coord. frame f
@@ -43,6 +45,11 @@ class AliTrack : public TObject,public Ali4Vector
   AliPosition GetBeginPoint();      // Provide the track begin-point
   void SetEndPoint(AliPosition p);  // Set the track end-point
   AliPosition GetEndPoint();        // Provide the track end-point
+  void AddMassHypothesis(Double_t prob,Double_t m,Double_t dm=0); // Add mass hypothesis data
+  Int_t GetNMassHypotheses();                // Provide number of mass hypotheses
+  Double_t GetMassHypothesis(Int_t j=0);     // Provide mass of jth hypothesis 
+  Double_t GetMassHypothesisProb(Int_t j=0); // Provide prob. of jth mass hypothesis 
+  void RemoveMassHypothesis(Int_t j);        // Remove the jth mass hypothesis 
  
  protected:
   Float_t fQ;          // The charge of the particle
@@ -52,6 +59,10 @@ class AliTrack : public TObject,public Ali4Vector
   TObjArray* fSignals; // The array of related AliSignals
   AliPosition fBegin;  // The begin-point of the track 
   AliPosition fEnd;    // The end-point of the track 
+  Int_t fNmasses;      // The number of mass hypotheses
+  TArrayD* fMasses;    // The various mass hypotheses
+  TArrayD* fDmasses;   // The errors on the various masses
+  TArrayD* fPmasses;   // The probabilities of the various mass hypotheses
 
  private:
   void Dump(AliTrack* t,Int_t n,TString f); // Recursively print all decay levels
index 41b61d4..7c4c964 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.4  1999/11/03 14:23:18  fca
-New version of RALICE introduced
-
-Revision 1.3  1999/09/29 09:24:28  fca
-Introduction of the Copyright and cvs Log
-
-*/
+// $Id$
 
 ///////////////////////////////////////////////////////////////////////////
 // Class AliVertex
@@ -48,26 +40,26 @@ Introduction of the Copyright and cvs Log
 //
 //        AliVertex v1(5);
 //
-//        v1.Add(t1);
-//        v1.Add(t2);
-//        v1.Add(t3);
-//        v1.Add(t4);
+//        v1.AddTrack(t1);
+//        v1.AddTrack(t2);
+//        v1.AddTrack(t3);
+//        v1.AddTrack(t4);
 //
 //        Float_t r1[3]={2.4,0.1,-8.5};
 //        v1.SetPosition(r1,"car");
 //
 //        AliVertex v2(2);
-//        v2.Add(t5);
-//        v2.Add(t6);
-//        v2.Add(t7);
+//        v2.AddTrack(t5);
+//        v2.AddTrack(t6);
+//        v2.AddTrack(t7);
 //
 //        Float_t r2[3]={1.6,-3.2,5.7};
 //        v2.SetPosition(r2,"car");
 //
 //        AliVertex v3;
 //
-//        v3.Add(j1);
-//        v3.Add(j2);
+//        v3.AddJet(j1);
+//        v3.AddJet(j2);
 //
 //        Float_t r3[3]={6.2,4.8,1.3};
 //        v3.SetPosition(r3,"car");
@@ -87,8 +79,8 @@ Introduction of the Copyright and cvs Log
 //
 // Specify the vertices v2 and v3 as secondary vertices of v1
 //
-//        v1.Add(v2);
-//        v1.Add(v3);
+//        v1.AddVertex(v2);
+//        v1.AddVertex(v3);
 //
 //        v1.List();
 //
@@ -102,16 +94,16 @@ Introduction of the Copyright and cvs Log
 //
 //        v1.Reset();
 //        v1.SetNvmax(25); // Increase initial no. of sec. vertices
-//        v1.Add(t3);
-//        v1.Add(t7);
-//        v1.Add(j2);
+//        v1.AddTrack(t3);
+//        v1.AddTrack(t7);
+//        v1.AddJet(j2);
 //        Float_t pos[3]={7,9,4};
 //        v1.SetPosition(pos,"car");
 //
 // Note : All quantities are in GeV, GeV/c or GeV/c**2
 //
 //--- Author: Nick van Eijndhoven 04-apr-1998 UU-SAP Utrecht
-//- Modified: NvE 08-apr-1999 UU-SAP Utrecht to inherit from AliJet
+//- Modified: NvE $Date$ UU-SAP Utrecht
 ///////////////////////////////////////////////////////////////////////////
 
 #include "AliVertex.h"
@@ -191,6 +183,10 @@ void AliVertex::Reset()
 
  AliJet::Reset();
 
+ Double_t a[3]={0,0,0};
+ SetPosition(a,"sph");
+ SetPositionErrors(a,"car");
+
  fNvtx=0;
  if (fNvmax>0) SetNvmax(fNvmax);
  if (fConnects)
@@ -201,18 +197,18 @@ void AliVertex::Reset()
  }
 }
 ///////////////////////////////////////////////////////////////////////////
-void AliVertex::Add(AliJet& j)
+void AliVertex::AddJet(AliJet& j)
 {
 // Add the tracks of a jet to the vertex
  AliTrack* tj;
  for (Int_t i=1; i<=j.GetNtracks(); i++)
  {
   tj=j.GetTrack(i);
-  AliJet::Add(tj);
+  AliJet::AddTrack(tj);
  }
 }
 ///////////////////////////////////////////////////////////////////////////
-void AliVertex::Add(AliVertex& v,Int_t connect)
+void AliVertex::AddVertex(AliVertex& v,Int_t connect)
 {
 // Add a (secondary) vertex to the current vertex.
 // In case the maximum number of (secondary) vertices has been reached,
@@ -255,7 +251,7 @@ void AliVertex::Add(AliVertex& v,Int_t connect)
   t->Set3Momentum(p);
   t->SetInvariant(v2,dv2);
 
-  AliJet::Add(t);
+  AliJet::AddTrack(t);
 
   if (!fConnects) fConnects=new TObjArray(fNvmax);
   fConnects->Add(t);
index 3d5d463..0616192 100644 (file)
@@ -3,7 +3,7 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/* $Id$ */
+// $Id$
 
 #include <iostream.h>
 #include <math.h>
@@ -21,10 +21,10 @@ class AliVertex : public AliJet,public AliPosition
   AliVertex(Int_t n);                     // Create a vertex to hold initially n tracks
   ~AliVertex();                           // Default destructor
   void Reset();                           // Reset all values
-  void Add(AliJet& j);                    // Add a jet of tracks to the vertex
-  void Add(AliVertex& v,Int_t connect=1); // Add (and connect) a (sec.) vertex to the current vertex
-  void Add(AliJet* j)    { Add(*j); }
-  void Add(AliVertex* v,Int_t connect=1) { Add(*v,connect); }
+  void AddJet(AliJet& j);                 // Add a jet of tracks to the vertex
+  void AddVertex(AliVertex& v,Int_t connect=1);// Add (and connect) a (sec.) vertex to the current vertex
+  void Add(AliJet* j)    { AddJet(*j); }
+  void Add(AliVertex* v,Int_t connect=1) { AddVertex(*v,connect); }
   void Info(TString f="car");             // Print the vertex info within coordinate frame f
   void List(TString f="car");             // Print vertex prim. track information for coord. frame f
   void ListAll(TString f="car");          // Print prim. + sec. vertex full track info for coord. frame f
index 096905f..dbe6234 100644 (file)
  #pragma link off all classes;
  #pragma link off all functions;
 
- #pragma link C++ class AliMath+;
- #pragma link C++ class AliSample+;
- #pragma link C++ class AliRandom+;
- #pragma link C++ class Ali3Vector+;
- #pragma link C++ class Ali3VectorObj+;
- #pragma link C++ class Ali4Vector+;
- #pragma link C++ class Ali4VectorObj+;
- #pragma link C++ class AliBoost+;
- #pragma link C++ class AliPosition+;
- #pragma link C++ class AliPositionObj+;
- #pragma link C++ class AliSignal+;
- #pragma link C++ class AliCalorimeter+;
- #pragma link C++ class AliCalmodule+;
- #pragma link C++ class AliCalcluster+;
- #pragma link C++ class AliTrack+;
- #pragma link C++ class AliJet+;
- #pragma link C++ class AliVertex+;
- #pragma link C++ class AliInvmass+;
+ #pragma link C++ class AliMath;
+ #pragma link C++ class AliSample;
+ #pragma link C++ class AliRandom;
+ #pragma link C++ class Ali3Vector;
+ #pragma link C++ class Ali3VectorObj;
+ #pragma link C++ class Ali4Vector;
+ #pragma link C++ class Ali4VectorObj;
+ #pragma link C++ class AliBoost;
+ #pragma link C++ class AliPosition;
+ #pragma link C++ class AliPositionObj;
+ #pragma link C++ class AliSignal;
+ #pragma link C++ class AliCalorimeter;
+ #pragma link C++ class AliCalmodule;
+ #pragma link C++ class AliCalcluster;
+ #pragma link C++ class AliTrack;
+ #pragma link C++ class AliJet;
+ #pragma link C++ class AliVertex;
+ #pragma link C++ class AliInvmass;
+ #pragma link C++ class AliEvent;
 #endif
  
index bf92042..075c231 100644 (file)
 06-jun-2000 NvE AliMath::K() etc... renamed to AliMath::BesselK() etc... for clarity.
 07-jun-2000 NvE Vertex linking of AliVertex::Add(AliVertex&) made more sophisticated
                 by introduction of automatic generation of connecting track.
+26-jan-2001 NvE File RALICELinkDef.h updated to allow the automatic schema evolution
+                as introduced in ROOT 3.00/05. 
+27-may-2001 NvE New class AliEvent introduced and RALICELinkDef.h & co. updated accordingly.
+                Also RALICELinkDef.h changed back to old schema evolution (i.e. "+" removed)
+                because of problems with I/O in ROOT 3.00/06 w.r.t. multiple inheritance. 
+29-may-2001 NvE Position reset added in AliVertex::Reset().
+01-jun-2001 NvE Memberfunctions Add() renamed explicitly to AddTrack(), AddJet() and
+                AddVertex() in AliJet and AliVertex.
+03-jun-2001 NvE Treatment of masshypotheses introduced in AliTrack.
+04-jun-2001 NvE CVS Log text and keyword replaced by Id in .cxx files and C++ comment
+                indicator /* ... */ replaced by // in the Id record of the .h files
+                to prevent problems.
+06-jun-2001 NvE CVS Date keyword introduced in 'Modified' field in .cxx files so that
+                the modification date is updated automatically in the html docs.