// Author: Pawel Debski 2010
+#if !defined(__CINT__) || defined(__MAKECINT__)
+#include <fstream>
+
+#include <TColor.h>
+#include <TCanvas.h>
+#include <TROOT.h>
+#include <TSystem.h>
+#include <TString.h>
+#include <TGFileDialog.h>
+#include <TGShutter.h>
+#include <TGTab.h>
+#include <TGLOverlayButton.h>
+#include <TH1.h>
+#include <TH2.h>
+#include <TPRegexp.h>
+#include <TRandom.h>
+#include <TEveGValuators.h>
+#include <TEveManager.h>
+#include <TEveElement.h>
+#include <TEveEventManager.h>
+#include <TEveWindowManager.h>
+#include <TEveViewer.h>
+#include <TEveScene.h>
+#include <TEveTrackPropagator.h>
+
+#include <AliEveEventManager.h>
+#include <AliEveMultiView.h>
+#include <AliEveTrack.h>
+#include <AliESDtrack.h>
+#include <AliESDEvent.h>
+#endif
+
#include <TGButton.h>
#include <TGComboBox.h>
#include <TEveBrowser.h>
#include <TGComboBox.h>
#include <TLatex.h>
#include <TGSlider.h>
-#include "TGDoubleSlider.h"
+#include <TGDoubleSlider.h>
#include <TEvePointSet.h>
class SetCutsWindow : public TGMainFrame {
TGLOverlayButton *gOverlayButtonRPhi;
TGLOverlayButton *gOverlayButtonRhoZ;
Bool_t gDrawHistograms[12];
+ TGHorizontal3DLine *separator;
public:
SetCutsWindow();
void SaveAllViews();
void Save3DView();
void SaveRPhiView();
+ void SaveRhoZView();
void DrawPtHisto();
void DrawEtaHisto();
void DrawPhiHisto();
void SetStandardCuts();
void AddMomentumVectors();
void SetCuts();
+ void SetValues();
+ void SaveMacro();
+ void LoadMacro();
void CloseTab();
void Macro1();
void Macro2();
TGLabel *label = 0;
TGHorizontalFrame *hframe = 0;
TGHorizontalFrame *hframeMerge = 0;
- TGHorizontalFrame *hframe1 = 0;
- TGHorizontalFrame *hframe2 = 0;
- TGVerticalFrame *vframe = 0;
-
+
gOverlayButton3D = 0;
gOverlayButtonRPhi = 0;
gOverlayButtonRhoZ = 0;
for(Int_t i = 0; i < 12; i++)
gDrawHistograms[i] = kFALSE;
- TEveBrowser *browser = gEve->GetBrowser();
-
TGShutter *mainShutter = new TGShutter(this, kSunkenFrame);
TGShutterItem *item1 = new TGShutterItem(mainShutter, new TGHotString("Draw Objects"), 1);
void SetCutsWindow::ClsNECallBack()
{
-M
+
Double_t entry;
entry = gClsRangeNE->GetNumber();
TCanvas* pad1 = 0;
TCanvas* pad2 = 0;
+
+ TH1D* histPt = 0;
+ TH1D* histEta = 0;
+ TH1D* histPhi = 0;
+ TH2D* histPhiPt= 0;
+ TH2D* histPtY = 0;
+ TH2D* histEtaPhi=0;
if(gDrawHistograms[0])
{
nHistos1++;
- TH1D* histPt = new TH1D("Pt\nSingle Event", "AliEve Pt histogram", 100, 0.0, 5.0);
+ histPt = new TH1D("Pt\nSingle Event", "AliEve Pt histogram", 100, 0.0, 5.0);
}
if(gDrawHistograms[1])
{
nHistos1++;
- TH1D* histEta = new TH1D("#eta\nSingle Event", "AliEve #eta histogram", 100, -1.5, 1.5);
+ histEta = new TH1D("#eta\nSingle Event", "AliEve #eta histogram", 100, -1.5, 1.5);
}
if(gDrawHistograms[2])
{
nHistos1++;
- TH1D* histPhi = new TH1D("#phi\nSingle Event", "AliEve #phi histogram", 100, 0.0, 2*TMath::Pi());
+ histPhi = new TH1D("#phi\nSingle Event", "AliEve #phi histogram", 100, 0.0, 2*TMath::Pi());
}
if(gDrawHistograms[3])
{
nHistos2++;
- TH2D* histPhiPt = new TH2D("#phi-Pt\nSingle Event", "AliEve #phi-Pt histogram", 100, 0.0, 2*TMath::Pi(), 100, 0.0, 5.0);
+ histPhiPt = new TH2D("#phi-Pt\nSingle Event", "AliEve #phi-Pt histogram", 100, 0.0, 2*TMath::Pi(), 100, 0.0, 5.0);
}
if(gDrawHistograms[4])
{
nHistos2++;
- TH2D* histPtY = new TH2D("Pt-Y\nSingle Event", "AliEve Pt-y histogram", 100, 0.0, 5.0, 100, -1.5, 1.5);
+ histPtY = new TH2D("Pt-Y\nSingle Event", "AliEve Pt-y histogram", 100, 0.0, 5.0, 100, -1.5, 1.5);
}
if(gDrawHistograms[5])
{
nHistos2++;
- TH2D* histEtaPhi = new TH2D("#eta-#phi\nSingle Event", "AliEve #eta-#phi histogram", 100, -1.5, 1.5, 100, 0.0, 2*TMath::Pi());
+ histEtaPhi = new TH2D("#eta-#phi\nSingle Event", "AliEve #eta-#phi histogram", 100, -1.5, 1.5, 100, 0.0, 2*TMath::Pi());
}
AliESDEvent* esd = AliEveEventManager::AssertESD();
TCanvas* pad1 = 0;
TCanvas* pad2 = 0;
+
+ TH1D* histPt = 0;
+ TH1D* histEta = 0;
+ TH1D* histPhi = 0;
+ TH2D* histPhiPt= 0;
+ TH2D* histPtY = 0;
+ TH2D* histEtaPhi=0;
+
+// TCanvas* pad3 = 0;
+
+// TH1D* histMult = new TH1D("Multiplicity\n", "AliEve Multiplicity histogram", 1000, 0.0, 1000.0);
+// TH1D* histNcls = new TH1D("Number of ITS clusters\n", "AliEve Multiplicity histogram", 10000, 0.0, 10000.0);
if(gDrawHistograms[6])
{
nHistos1++;
- TH1D* histPt = new TH1D("Pt\nAll Events", "AliEve Pt histogram", 100, 0.0, 5.0);
+ histPt = new TH1D("Pt\n", "AliEve Pt histogram", 1000, 0.0, 1000.0);
}
if(gDrawHistograms[7])
{
nHistos1++;
- TH1D* histEta = new TH1D("#eta\nAll Events", "AliEve #eta histogram", 100, -1.5, 1.5);
+ histEta = new TH1D("#eta\nAll Events", "AliEve #eta histogram", 100, -1.5, 1.5);
}
if(gDrawHistograms[8])
{
nHistos1++;
- TH1D* histPhi = new TH1D("#phi\nAll Events", "AliEve #phi histogram", 100, 0.0, 2*TMath::Pi());
+ histPhi = new TH1D("#phi\nAll Events", "AliEve #phi histogram", 100, 0.0, 2*TMath::Pi());
}
if(gDrawHistograms[9])
{
nHistos2++;
- TH2D* histPhiPt = new TH2D("#phi-Pt\nAll Events", "AliEve #phi-Pt histogram", 100, 0.0, 2*TMath::Pi(), 100, 0.0, 5.0);
+ histPhiPt = new TH2D("#phi-Pt\nAll Events", "AliEve #phi-Pt histogram", 100, 0.0, 2*TMath::Pi(), 100, 0.0, 5.0);
}
if(gDrawHistograms[10])
{
nHistos2++;
- TH2D* histPtY = new TH2D("Pt-Y\nAll Events", "AliEve Pt-y histogram", 100, 0.0, 5.0, 100, -1.5, 1.5);
+ histPtY = new TH2D("Pt-Y\nAll Events", "AliEve Pt-y histogram", 100, 0.0, 5.0, 100, -1.5, 1.5);
}
if(gDrawHistograms[11])
{
nHistos2++;
- TH2D* histEtaPhi = new TH2D("#eta-#phi\nAll Events", "AliEve #eta-#phi histogram", 100, 1.5, 1.5, 100, 0.0, 2*TMath::Pi());
+ histEtaPhi = new TH2D("#eta-#phi\nAll Events", "AliEve #eta-#phi histogram", 100, 1.5, 1.5, 100, 0.0, 2*TMath::Pi());
}
Int_t nEvents = AliEveEventManager::GetMaster()->GetMaxEventId();
AliEveEventManager::GetMaster()->GotoEvent(0);
+ ofstream myresult1(TString::Format("foundMultiplicity.txt"));
+
for(Int_t i = 0; i <= nEvents; i++)
{
AliESDEvent* esd = AliEveEventManager::AssertESD();
+/*
+ if(esd->GetMultiplicity())
+ histMult->Fill(esd->GetMultiplicity()->GetNumberOfTracklets());
+
+ if(esd->GetMultiplicity())
+ histNcls->Fill(esd->GetMultiplicity()->GetNumberOfITSClusters(0));
+ if(esd->GetMultiplicity()->GetNumberOfTracklets())
+ myresult1 << i << " " << esd->GetMultiplicity()->GetNumberOfTracklets() << endl;
+*/
if(esd->GetNumberOfTracks())
{
break;
}
+/*
+ pad3 = new TCanvas("AliEve 1D histograms - All Events","AliEve 1D histograms - All Events",1200,500);
+ pad3->Divide(2,1);
+ pad3->cd(1);
+ histMult->Draw();
+ pad3->cd(2);
+ histNcls->Draw();
+*/
+
+ myresult1.close();
+
return;
}
Double_t step = 1.0/size;
+ Int_t i=0;
- for(Int_t i = 0; i < size; i++)
+ for(i = 0; i < size; i++)
{
switch(gTrackColorScale->GetSelected())
}
- return i-1;
+ return (i-1);
}
if(gEve->GetEventScene()->FirstChild()->FindChild("Momentum Vectors"))
gEve->GetEventScene()->FirstChild()->FindChild("Momentum Vectors")->Destroy();
- TString str1 = 0;
- TString str2 = 0;
+ TString str1;
+ TString str2;
TEveElement::List_i i = gEve->GetEventScene()->FirstChild()->BeginChildren();
TEveElement::List_i j = gEve->GetEventScene()->FirstChild()->EndChildren();
}
// fTrackListV0Neg->MakeTracks();
+// fTrackListV0Neg->SetRnrChildren(kFALSE);
// gEve->AddElement(fTrackListV0Neg);
gEve->AddElement(momentumVectorList);
void SetCutsWindow::SetCuts()
{
-
- TString str1 = 0;
- TString str2 = 0;
+ TEvePointSet *pointset=0;
+
+ TString str1;
+ TString str2;
Int_t posTrackColor= gPosColorList->GetSelected();
Int_t negTrackColor= gNegColorList->GetSelected();
TEveElement::List_i j = gEve->GetEventScene()->FirstChild()->EndChildren();
TEveElement::List_i k;
- Double_t x1, y1, z1, x2, y2, z2;
+ Double_t x1, y1, z1;
for(k = i; k != j; k++)
{
for(z = x; z != y; z++)
{
- TEveElement* trackSingle = (TEveElement*) *z;
- trackSingle->SetRnrSelf(kTRUE);
+
+ AliEveTrack* trackSingle1 = dynamic_cast<AliEveTrack*>((TEveElement*) *z);
+
+ if(trackSingle1->GetESDTrack()->GetSign() > 0)
+ {
+ if(posTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[posTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+ else
+ {
+ if(negTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[negTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+
+// trackSingle1->SetLineStyle(3);
+ trackSingle1->SetRnrSelf(kTRUE);
+
+// TEveElement* trackSingle = (TEveElement*) *z;
+// trackSingle->SetRnrSelf(kTRUE);
}
}
}
for(z = x; z != y; z++)
{
- TEveElement* trackSingle = (TEveElement*) *z;
- trackSingle->SetRnrSelf(kTRUE);
+
+ AliEveTrack* trackSingle1 = dynamic_cast<AliEveTrack*>((TEveElement*) *z);
+
+ if(trackSingle1->GetESDTrack()->GetSign() > 0)
+ {
+ if(posTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[posTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+ else
+ {
+ if(negTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[negTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+
+// trackSingle1->SetLineStyle(3);
+ trackSingle1->SetRnrSelf(kTRUE);
+
+
+// TEveElement* trackSingle = (TEveElement*) *z;
+// trackSingle->SetRnrSelf(kTRUE);
}
}
}
for(z = x; z != y; z++)
{
- TEveElement* trackSingle = (TEveElement*) *z;
- trackSingle->SetRnrSelf(kTRUE);
+
+ AliEveTrack* trackSingle1 = dynamic_cast<AliEveTrack*>((TEveElement*) *z);
+
+ if(trackSingle1->GetESDTrack()->GetSign() > 0)
+ {
+ if(posTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[posTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+ else
+ {
+ if(negTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[negTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+
+// trackSingle1->SetLineStyle(3);
+ trackSingle1->SetRnrSelf(kTRUE);
+
+
+
+// TEveElement* trackSingle = (TEveElement*) *z;
+// trackSingle->SetRnrSelf(kTRUE);
}
}
}
for(z = x; z != y; z++)
{
- TEveElement* trackSingle = (TEveElement*) *z;
- trackSingle->SetRnrSelf(kTRUE);
+
+ AliEveTrack* trackSingle1 = dynamic_cast<AliEveTrack*>((TEveElement*) *z);
+
+ if(trackSingle1->GetESDTrack()->GetSign() > 0)
+ {
+ if(posTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[posTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+ else
+ {
+ if(negTrackColor == 0)
+ trackSingle1->SetLineColor(colorAll[GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),22)]);
+ else
+ trackSingle1->SetLineColor(colorNeg[negTrackColor-1][GetTrackColorByMomentum(trackSingle1->GetESDTrack()->Pt(),10)]);
+ }
+
+// trackSingle1->SetLineStyle(3);
+ trackSingle1->SetRnrSelf(kTRUE);
+
+
+// TEveElement* trackSingle = (TEveElement*) *z;
+// trackSingle->SetRnrSelf(kTRUE);
}
}
}