- cleaning up the programs folder and removing old deprecated files
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 4 Aug 2009 08:48:05 +0000 (08:48 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 4 Aug 2009 08:48:05 +0000 (08:48 +0000)
- added macros to reconstruct binary HLTOUT files and to print the
HLT decision of ESDs
- move process-hltout-payload.C to programs

18 files changed:
HLT/programs/Makefile [deleted file]
HLT/programs/README [new file with mode: 0644]
HLT/programs/ali2raw.cxx [deleted file]
HLT/programs/convcosmicsfile.cxx [deleted file]
HLT/programs/gettransform.cxx [deleted file]
HLT/programs/print-ESD-HLTdecision.C [new file with mode: 0644]
HLT/programs/process-hltout-payload.C [moved from HLT/exa/process-hltout-payload.C with 97% similarity]
HLT/programs/read.cxx [deleted file]
HLT/programs/rec-HLTOUT-bin.C [new file with mode: 0644]
HLT/programs/runhough.cxx [deleted file]
HLT/programs/runit.cxx [deleted file]
HLT/programs/runtracker.cxx [deleted file]
HLT/programs/runvhdlcf.cxx [deleted file]
HLT/programs/runvhdlhough.cxx [deleted file]
HLT/programs/speedtest.cxx [deleted file]
HLT/programs/speedtest.h [deleted file]
HLT/programs/tpcbeamtestdisplay.cxx [deleted file]
HLT/programs/tpcbeamtesttracker.cxx [deleted file]

diff --git a/HLT/programs/Makefile b/HLT/programs/Makefile
deleted file mode 100644 (file)
index 433939e..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-#$Id$
-###############################
-# Makefile for HLT programs.  #
-#                             #
-# Author: Constantin Loizides #                    
-###############################
-
-
-ifndef ALIHLT_TOPDIR
-ALIHLT_TOPDIR = $(shell pwd)/..
-endif
-
-include $(ALIHLT_TOPDIR)/Makefile.conf
-
-DEFSTR = -Dno_root
-INCLUDES = -I$(ALIHLT_TOPDIR)/src -I$(ALIHLT_TOPDIR)/hough -I$(ALIHLT_TOPDIR)/comp -I$(ALIHLT_TOPDIR)/misc -I$(ALIHLT_TOPDIR)/trigger -I$(ALIHLT_TOPDIR)/kalman
-
-LIBS = -L$(ALIHLT_LIBDIR) -lAliHLTSrc -lAliHLTHough -lAliHLTComp -lAliHLTMisc 
-STATICLIBS = $(ALIHLT_LIBDIR)/libAliHLTSrc.a  $(ALIHLT_LIBDIR)/libAliHLTHough.a  $(ALIHLT_LIBDIR)/libAliHLTComp.a  $(ALIHLT_LIBDIR)/libAliHLTMisc.a 
-
-ifneq ($(ALIHLT_USEPACKAGE),STANDALONE)
-ROOTCFLAGS := $(shell root-config --cflags)
-ROOTLIBS   := $(shell root-config --libs)
-ROOTGLIBS  := $(shell root-config --glibs)
-endif
-
-ifeq ($(ALIHLT_USEPACKAGE),ROOT) 
-DEFSTR = -Duse_root
-INCLUDES += -I$(ROOTSYS)/include 
-RLIBS = $(ROOTLIBS) -lMinuit -lEG 
-LIBS += $(RLIBS)
-STATICLIBS += $(RLIBS)
-endif
-
-ifeq ($(ALIHLT_USEPACKAGE),ALIROOT)
-DEFSTR = -Duse_aliroot -Duse_root
-ifeq ($(USENEWIO),1)
-DEFSTR += -Duse_newio
-ALICELIBS = -L$(ALICE_ROOT)/lib/tgt_Linux -lTPC -lITS -lCONTAINERS -lSTEER -lRAWDatabase -lRAWDatarec -lRAWDatasim -lVMC -lGeom
-else
-ALICELIBS = -L$(ALICE_ROOT)/lib/tgt_Linux -lTPC -lITS -lCONTAINERS -lSTEER -lMC
-endif
-INCLUDES += -I$(ROOTSYS)/include -I$(ALICE_ROOT)/include/ -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/CONTAINERS -I$(ALICE_ROOT)/STEER
-RLIBS = $(ROOTLIBS) -lMinuit -lEG
-LIBS += $(ALICELIBS) $(RLIBS)
-STATICLIBS += $(ALICELIBS) $(RLIBS)
-endif
-
-ifeq ($(ALIHLT_USEPACKAGE),STANDALONE)
-DEFSTR = -Dno_root
-RLIBS =  -lpthread -lm -ldl -rdynamic
-LIBS += $(RLIBS)
-STATICLIBS += $(RLIBS)
-endif
-
-ifeq ($(DOMC),1)
-DEFSTR += -Ddo_mc
-endif
-
-#Use logging classes
-ifndef NOLOGGING
-DEFSTR += -Duse_logging
-ifdef ALIHLT_MLUCDIR
-INCLUDES += -I$(ALIHLT_MLUCDIR)/include
-MLUCLIBS = -L$(ALIHLT_MLUCDIR)/lib/ -lMLUC 
-else
-INCLUDES += -I/prog/alice/level3/kip/MLUC/include
-MLUCLIBS += -L/prog/alice/level3/kip/MLUC/lib/linux-i386 -lMLUC
-endif
-LIBS += $(MLUCLIBS)
-STATICLIBS += $(MLUCLIBS)
-endif
-
-DEFSTR += -D$(ARCH) $(EXTRADEF)
-
-CXX          = g++
-LD           = $(CXX)
-#CXXGCC3FLAGS += -pedantic
-#CXXGCC3FLAGS += -Wno-deprecated
-#CXXGCC3FLAGS += -Woverloaded-virtual
-CXXFLAGS       = -O2 -Wall -ggdb $(CXXGCC3FLAGS) $(EXTRACXXFLAGS) 
-LDFLAGS        = -O2 $(EXTRALDFLAGS) $(LIBS)
-STATICLDFLAGS  = -O2 $(PROFILEFLAGS) $(EXTRALDFLAGS) $(STATICLIBS)
-
-
-PRGS   =  runit read runvhdlcf runhough runvhdlhough runtracker tpcbeamtesttracker tpcbeamtestdisplay
-STPRGS = 
-UTILS   = ccfile gettransform
-STUTILS = gettransform_st runit_st
-UTILS_not_working  = convbin speedtest 
-
-all: $(PRGS) $(UTILS)
-
-programs: $(PRGS)
-
-utils: $(UTILS)
-
-stprograms: $(STPRGS)
-
-stutils: $(STUTILS)
-
-#run hough transform on l3 data.
-runhough: runhough.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#run hough transform on l3 data.
-runvhdlhough: runvhdlhough.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#run conventional clusterfinder on altro data
-runvhdlcf: runvhdlcf.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#run conventional clusterfinder
-runit: runit.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-runit_st: runit.sto
-       $(LD) $< $(LDFLAGS) -o $@
-
-#run conventional tracker
-runtracker: runtracker.o
-       $(LD) $< $(STATICLDFLAGS) -o $@
-
-#TPC Test cluster finder and tracker
-tpcbeamtesttracker: tpcbeamtesttracker.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#TPC Test display
-tpcbeamtestdisplay: tpcbeamtestdisplay.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#read l3 raw data, print it and convert to altro data
-read: read.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#convert big <-> little endian cosmics data file
-ccfile: convcosmicsfile.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#convert to binary
-convbin: ali2raw.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-#get transform values
-gettransform: gettransform.o
-       $(LD) $< $(LDFLAGS) -o $@
-
-gettransform_st: gettransform.sto
-       $(LD) $< $(STATICLDFLAGS) -o $@
-
-
-speedtest: speedtest.cxx
-       g++ -O -Wall -fPIC -ffast-math $(CXXFLAGS) speedtest.cxx -o speedtest
-#       g++ -O -Wall -fPIC -mcpu=ev6   $(CXXFLAGS) speedtest.cxx -o speedtest
-#       cxx -O -Wall -fPIC -lm         $(CXXFLAGS) speedtest.cxx -o speedtest 
-
-%.o:%.cxx 
-       $(CXX) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
-
-%.sto:%.cxx 
-       $(CXX) $(PROFILEFLAGS) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
-
-clean :
-       rm -f *.o *.sto gmon.out $(PRGS) $(UTILS) $(STPRGS) $(STUTILS) $(UTILS_not_working)
-
diff --git a/HLT/programs/README b/HLT/programs/README
new file mode 100644 (file)
index 0000000..2c08a9b
--- /dev/null
@@ -0,0 +1,13 @@
+This folder contains some usefull tools for the Alice HLT
+
+process-hltout-payload.C
+   standalone run of the standard AliRoot HLTOUT processing 
+   input: raw data, either root file or ddl files
+
+rec-HLTOUT-bin.C
+   reconstruct the binary files of the HLTOUT formatter
+   written to disk by the online system in output mode 'file' 
+   
+print-ESD-HLTdecision.C
+   print info on the global HLT trigger decision for events
+   of ESD file
diff --git a/HLT/programs/ali2raw.cxx b/HLT/programs/ali2raw.cxx
deleted file mode 100644 (file)
index 690a15b..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-// $Id$ 
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-#ifndef use_aliroot
-BOMB THE COMPILE: USEPACKAGE=ALIROOT
-#endif
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTRootTypes.h"
-#include "AliHLTMemHandler.h"
-#include "AliHLTFileHandler.h"
-#include "AliHLTDigitData.h"
-#include "AliHLTTransform.h"
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#endif
-
-/**
-   Converts from AliRoot Digits to L3-RawDigits
- */
-Int_t Make_Init(Char_t *file, Char_t *tofile);
-
-int main (Int_t argc, Char_t** argv)
-{
-  Int_t first=0;
-  Int_t last=0;
-
-  if(argc<3)
-  {
-    cout<<"Usage: ali2raw datafile path [firstsector] [lastsector]"<<endl;
-    return -1;
-  }
-  if(argc<4) first=atoi(argv[3]);
-  if(argc<5) first=atoi(argv[4]);
-
-  Char_t transname[1000];
-  const Int_t npatch = 6;
-  Int_t row[npatch][2] = {{0,31},{32,63},{64,91},{92,119},{120,143},{144,175}};
-  
-  strcpy(transname,argv[1]);
-  strcat(transname,"/.transform.config");
-  if(Make_Init(argv[1],transname)<0) exit(1);
-
-
-  /*
-  AliHLTFileHandler *fFileHandler = new AliHLTFileHandler(); 
-  fFileHandler->SetAliInput(in);
-  AliHLTTransform *fTransformer = new AliHLTTransform(path);
-
-
-  fFileHandler->Init(fTransformer);
-  for(int slice=first; slice<=last; slice++){
-    for(int patch=0;patch<npatch;patch++){
-      cerr<<"reading slice: "<<slice<<" patch: "<<patch;
-      fFileHandler->Free();
-      fFileHandler->Init(slice,patch,row[patch]);      
-      sprintf(name,"%sdigits_%d_%d.raw",path,slice,patch);
-      fFileHandler->SetBinaryOutput(name);
-      fFileHandler->AliDigits2CompBinary();
-      fFileHandler->CloseBinaryOutput();      
-      cerr<<" done"<<endl;
-    }      
-  }
-  fFileHandler->CloseAliInput();
-  */
-}
-
-int Make_Init(char *file, char *tofile=NULL){
-
-  TFile *rootf = new TFile(file,"READ");
-
-  if(!rootf->IsOpen()){
-    cerr<<"could not open file: "<<file<<endl;
-    return -1;
-  }
-
-  AliTPCParam* par = (AliTPCParam*)rootf->Get("75x40_100x60");
-
-  if(!par){
-    cerr<<"no AliTPCParam 75x40_100x60 in file: "<<file<<endl;
-    return -2;
-  }
-
-  Int_t fNTimeBins = par->GetMaxTBin()+1;
-  Int_t fNRowLow = par->GetNRowLow();
-  Int_t fNRowUp  = par->GetNRowUp();
-  Int_t fNRow= fNRowLow + fNRowUp;
-  Int_t fNSectorLow = par->GetNInnerSector();
-  Int_t fNSectorUp = par->GetNOuterSector();
-  Int_t fNSector = fNSectorLow + fNSectorUp;
-
-  Char_t tofilename[1000];
-  if(tofile){
-    strcpy(tofilename,tofile);
-    strcat(tofilename,".transform-config");
-  } else strcpy(tofilename,file);
-
-  FILE *f = fopen(tofilename,"w");
-  fprintf(f,"void AliHLTTransform::Init(){\n");
-
-  fprintf(f,"  //sector:\n");
-  fprintf(f,"  fNTimeBins = %d ;\n",fNTimeBins);
-  fprintf(f,"  fNRowLow = %d ;\n",fNRowLow);
-  fprintf(f,"  fNRowUp = %d ;\n",fNRowUp);
-  fprintf(f,"  fNSectorLow = %d ;\n",fNSectorLow);
-  fprintf(f,"  fNSectorUp = %d ;\n",fNSectorUp);
-  fprintf(f,"  fNSector = %d ;\n",fNSector);
-  fprintf(f,"  fPadPitchWidthLow = %f ;\n",par->GetPadPitchWidth(0));
-  fprintf(f,"  fPadPitchWidthUp = %f ;\n",par->GetPadPitchWidth(fNSectorLow));
-  fprintf(f,"  fZWidth = %.20f ;\n",par->GetZWidth());
-  fprintf(f,"  fZSigma = %.20f ;\n",par->GetZSigma());
-
-  fprintf(f,"\n  //slices:\n");
-  fprintf(f,"  fNSlice = %d ;\n",fNSectorLow);
-  fprintf(f,"  fNRow = %d ;\n",fNRow);
-
-  //rotation shift put in by hand -> Constantin 
-  fprintf(f,"  fNRotShift = 0.5 ;\n");
-
-  fprintf(f,"  fPi = %.15f ;\n",TMath::Pi());
-  fprintf(f,"  for(Int_t i=0;i<36;i++){\n");
-  fprintf(f,"    fCos[i] = cos(2*fPi/9*(i+0.5));\n");
-  fprintf(f,"    fSin[i] = sin(2*fPi/9*(i+0.5));\n");
-  fprintf(f,"  }\n\n");
-
-  for(Int_t i=0;i<fNRow;i++){
-    int sec,row;
-    if( i < fNRowLow){sec =0;row =i;}
-    else{sec = fNSectorLow;row =i-fNRowLow;}
-    fprintf(f,"  fX[%d] = %3.15f ;\n",i,par->GetPadRowRadii(sec,row));
-  }
-  for(Int_t i=0;i<fNRow;i++){
-    int sec,row;
-    if( i < fNRowLow){sec =0;row =i;}
-    else{sec = fNSectorLow;row =i-fNRowLow;}
-    fprintf(f,"  fNPads[%d] = %d ;\n",i,par->GetNPads(sec,row));
-  }
-
-  fprintf(f,"}\n");
-  fclose(f);
-  return 0;
-}
-
-
-
-#if 0
-void singlepatch(Char_t* in,Int_t first, Int_t last,Char_t *path="",Int_t event=0)
-{
-  AliHLTLogger l;
-  //l.UnSet(AliHLTLogger::kDebug);
-  //l.UnSet(AliHLTLogger::kAll);
-  //l.Set(AliHLTLogger::kInformational);
-  //l.UseStdout();
-  l.UseStream();
-  
-  Char_t fname[100];
-  sprintf(fname,"%sevent_%d/",path,event);
-  Char_t name[256];
-  AliHLTFileHandler *fFileHandler = new AliHLTFileHandler(); 
-  fFileHandler->SetAliInput(in);
-  Int_t srow[2] = {0,175};
-  Int_t patch=0;
-  for(Int_t slice=first; slice<=last; slice++)
-    {
-      cerr<<"reading slice: "<<slice;
-      fFileHandler->Free();
-      fFileHandler->Init(slice,patch,srow);
-      sprintf(name,"%sdigits_%d_%d.raw",fname,slice,patch);
-      fFileHandler->SetBinaryOutput(name);
-      fFileHandler->AliDigits2CompBinary(event);
-      fFileHandler->CloseBinaryOutput();      
-      cerr<<" done"<<endl;
-    }
-  fFileHandler->CloseAliInput();
-  
-}
-#endif
-
-
-
-
-
-
-
diff --git a/HLT/programs/convcosmicsfile.cxx b/HLT/programs/convcosmicsfile.cxx
deleted file mode 100644 (file)
index 6581add..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-// $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-/**
- Program to convert big <-> little endian cosmics data of 02/2003.
-*/
-
-#include "AliHLTStandardIncludes.h"
-#include "AliHLTRootTypes.h"
-
-#if __GNUC__ == 3
-using namespace std;
-#endif
-
-//#define DEBUG
-//#define NOCONV
-
-//this flag is for the cosmics/pubsub test
-//#define ADDFILESIZE
-
-#ifdef ADDFILESIZE
-#include <sys/stat.h>
-struct stat stat_results;
-#endif
-
-Int_t Convert4(Int_t i)
-{ //BigEndian i0i1i2i3 -> LittleEndian i3i2i1i0
-#ifdef NOCONV
-  return i;
-#else
-  Char_t *p=(Char_t*)&i;
-
-  Char_t temp[4];
-  temp[0]=p[3];
-  temp[1]=p[2];
-  temp[2]=p[1];
-  temp[3]=p[0];
-
-  return (*(Int_t*)temp);
-#endif
-}
-
-Short_t Convert2(Short_t s)
-{ //BigEndian i0i1 -> LittleEndian i1i0
-#ifdef NOCONV
-  return s;
-#else
-  Char_t *p=(Char_t*)&s;
-
-  Char_t temp[2];
-  temp[0]=p[1];
-  temp[1]=p[0];
-
-  return (*(Short_t*)temp);
-#endif
-}
-
-int main(Int_t argc, Char_t **argv)
-{
-  //p1 -> filename
-  //p2 -> file is in little endian
-  Int_t islittle=0;
-
-  if((sizeof(Int_t) != 4) || (sizeof(Short_t) != 2)) {
-    cerr << "Check architecture to run the conversion on! Int_t should be 32 and Short_t should be 16 bit." << endl;
-    exit(1);
-  }
-
-  Char_t fname[1024];
-  if(argc==1)
-    sprintf(fname,"%s","/home/loizides/tmp/cosmics/run0013/evt0000");
-  else if(argc==2)
-    strcpy(fname,argv[1]);
-  else if(argc>2){
-    strcpy(fname,argv[1]);
-    islittle=1;
-  }
-
-  ifstream *in = new ifstream();
-  in->open(fname,fstream::binary);
-  if(!in->is_open()){
-    cerr << "Error opening input file " << fname << endl;
-    exit(1);
-  }
-
-  Char_t sname[1024];
-#ifdef ADDFILESIZE
-  sprintf(sname,"%s.added",fname);
-#else
-  sprintf(sname,"%s.conv",fname);
-#endif
-  ofstream *out = new ofstream();
-  out->open(sname,fstream::in | fstream::out | fstream::binary | fstream::trunc);
-  if(!in->is_open()){
-    cerr << "Error opening output file " << sname << endl;
-    exit(1);
-  }
-
-
-  Int_t dummy4;
-  Short_t dummy2;
-#ifdef ADDFILESIZE
-  if (stat(fname, &stat_results) == 0){
-    dummy4=stat_results.st_size/4;
-    cout << "Add file size: " << dummy4 << endl;
-  } else {
-    cerr << "Error stating input file " << fname << endl;
-    exit(1);
-  }
-  out->write((Char_t*)&dummy4,sizeof(dummy4));
-#endif
-
-  in->read((Char_t*)&dummy4,sizeof(dummy4));
-  const Int_t knumofChannels = Convert4(dummy4);
-#ifdef DEBUG
-  cout << knumofChannels << endl;
-#endif
-  out->write((Char_t*)&knumofChannels,sizeof(knumofChannels));
-
-  Int_t channelloop=knumofChannels;
-  if(islittle) channelloop=dummy4;
-  for(Int_t i = 0 ; i < channelloop ; i++){
-    in->read((Char_t*)&dummy2,sizeof(dummy2));
-    Short_t channel = Convert2(dummy2);
-    out->write((Char_t*)&channel,sizeof(channel));
-#ifdef DEBUG
-    cout << channel << " ";
-#endif
-  }
-#ifdef DEBUG
-  cout << endl;
-#endif
-
-  in->read((Char_t*)&dummy4,sizeof(dummy4));
-  const Int_t numofChannelsTest = Convert4(dummy4);
-#ifdef DEBUG
-  cout << numofChannelsTest << endl;
-#endif
-  out->write((Char_t*)&numofChannelsTest,sizeof(numofChannelsTest));
-
-  if (knumofChannels != numofChannelsTest){
-    cerr << "Error in File format: \"channels " << knumofChannels << " must be channels-test " << numofChannelsTest << "\" "<< endl;
-  }
-
-  in->read((Char_t*)&dummy4,sizeof(dummy4));
-  const Int_t knumofTimebins = Convert4(dummy4);
-#ifdef DEBUG
-  cout << knumofTimebins << endl;
-#endif
-  out->write((Char_t*)&knumofTimebins,sizeof(knumofTimebins));
-
-  Int_t timeloop=knumofTimebins;
-  if(islittle) timeloop=dummy4;
-
-  cout << "Input:  " << fname << endl;
-  cout << "Output: " << sname << endl;
-  cout << "Channels: " << knumofChannels << endl;
-  cout << "Timebins: " << knumofTimebins << endl;
-
-  for(int channel = 0; channel < channelloop; channel++){
-    for(int timebin = 0 ; timebin < timeloop ; timebin++){
-      in->read((Char_t*)&dummy2,sizeof(dummy2));
-      Short_t charge = Convert2(dummy2);
-#ifdef DEBUG
-      cout << charge << " ";
-#endif
-      out->write((Char_t*)&charge,sizeof(charge));
-    }
-#ifdef DEBUG
-    cout << endl;
-#endif
-  }
-
-  in->close();
-  out->close();
-}
-
-
-
-/*
-  Data format as of 28/01/2003 R. Bramm explained,
-  sorry for the German text, too lazy to translate now
-
-  Die Files beinhalten 512 Kanaele (Altrokanäle also 32 Altros)
-  mit je 999 Timebins. -> depends on detailed setting of the test
-
-  Format ist
-  Anzahl der Kaenaele als int32
-  Liste der Kanaele je int16
-  Anzahl der Kaenaele als int32
-  Anzahl der Timebins
-
-  und dann vollkommenformatlos
-  Anzahl der Kaenaele * Anzahl der Timebins (512*1000 values)
-
-  Bezogen auf das Mapping:
-----------------------------
-  Die Kanalnummer, die die nehmen, ist Spalte 0 oder 9 also der 
-  Altrochannel. Die GSI nimmt aber einfach die "FEC Channels" 
-  was einfach die Anschlusse des Kabels durchgezaehlt sind ... 
-  dummerweise ist FECChannel != Altrochannel
-
-  FEC ist Front End Card
-  FEC Channel ist die Kanalnummer ... 
-  Altro channel ist durchnummeriert vom 0 bis 511 also fuer 32 Altros. 
-  (insofern ist der Name falsch ... weils mehrere altros sind.)
-
-  es geht aber mit 
-  8,9,10,11,12,13,14,15,7,6,5,4,3,2,1,0 (alles + 16)
-  weiter weil der Altro auf der Unterseite liegt
-
-  pad und row kann man umrechnen (steht nicht die formel im .doc ?) in x,y 
-  timebin ist "komplizierter" denn da brauchtm an driftgeschw. + samplingfreq
-  ja, aber in meiner tabelle mit den Altrochannels steht alles mit drin.
-
-  es existiert noch
-  http://137.138.45.89:8080/svn/repos/TPCMapping/trunk/MappingData/mappingRowPad.data
-  dadrin steht die anzahl der pads pro row, rownummer, liste der pads
-  die pads sind in "altrochannel" codiert ... war einfacher das so einzuwurschteln 
-  ... brauche ich aber nur fuer die Row view und ich hatte keinen Bock, das 
-  jedes mal aus dem Ulifile zu erzeugen ...
-
-  wenn du in http://mactpc01.cern.ch:8080
-  /svn/repos/TPCMapping/trunk/MappingData/mapping32313029.data
-  schaust, dann ist das erste die "altrochannelnummer" und in spalte 7 
-  (c array zaehlweise) 
-  steht der FEC channel. in den Events steht also immer 999 mal n adc value 
-  fuer jeden "altrochannel" in genau der reihenfolge wie in dem obigen file.
-
-  Im OM.C loope ich von 
-  Zeile 124 bis 175 uebers file 
-  interessant ist nur das einlesen
-  von 124 bis 127
-  dann berechne ich die baseline
-  128 - 132
-  dann kommt maxadc
-  134 - 143
-  dann rudimentaeres Clusterfindeing abe das ist unwichtig
-  143 - 163
-  dann kommt das fuellen des TPC Topviews, wo auch das "mapping " drinsteckt
-  171-174
-
-  du solltest lesen 
-  512 als int32
-  0 als int16
-  1 als int16
-  2 als int16
-  3 als int16
-  ...
-  511 als int16
-  512 als int32
-  999 als int32
-  dann int16 ...
-
-
-  So zur frage wer ordert:
-  Luciano und ich haben gebraeinstormed und kamen zum ergebnis, dass es 
-  auch kein Problem waere die RCU pad by pad auslesen zu lassen ... 
-  also "komplett korrekt" gemapped.
-  man braucht nur nen lookuptable. Da ist keine Latenz, die es problematisch 
-  macht, das man 
-  fee 1 channel 1 = pad 1 
-  fee 1 channel 2 = pad 2
-  fee 1 channel 4 = pad 3
-  fee 1 channel 3 = pad 4
-  fee 2 channel 1 = pad 5
-  ...
-*/
diff --git a/HLT/programs/gettransform.cxx b/HLT/programs/gettransform.cxx
deleted file mode 100644 (file)
index b0c7663..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-// $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-
-/**
-   This program extracts parameters and lookup tables needed for the
-   vhdl implementation of the Hough transform. 
-*/
-
-#include <AliHLTStandardIncludes.h>
-#include <AliHLTRootTypes.h>
-#include <AliHLTTransform.h>
-#include <AliHLTLogging.h>
-#include <AliHLTLogger.h>
-#include <AliHLTMemHandler.h>
-#include <AliHLTHoughTransformerVhdl.h>
-
-#if __GNUC__ == 3
-using namespace std;
-#endif
-
-int main(Int_t argc,Char_t **argv)
-{
-  Int_t patch=0;
-  Int_t slice=0;
-  Char_t path[1000];
-
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-    
-  if (argc>1) {
-    slice=atoi(argv[1]);
-  }
-  if (argc>2) {
-    patch=atoi(argv[2]);
-  }  
-  if (argc>3) {
-    strcpy(path,argv[3]);
-  } else strcpy(path,"/tmp/data/RawData/slice0");
-  if(argc>4){
-    cout<<"Usage: transform [slice] [patch] [path]"<<endl;
-    exit(1);
-  }
-
-  AliHLTTransform::Init(path);
-  cerr << "Transform version: " << AliHLTTransform::GetVersion() << endl;
-
-  AliHLTHoughTransformerVhdl vtest(slice,patch,100,10);
-  vtest.CreateHistograms(64,0.1,64,-30,30);
-  vtest.PrintVhdl();
-  exit(0);
-}
-  
diff --git a/HLT/programs/print-ESD-HLTdecision.C b/HLT/programs/print-ESD-HLTdecision.C
new file mode 100644 (file)
index 0000000..3da5147
--- /dev/null
@@ -0,0 +1,56 @@
+// $Id$
+/**
+ * @file print-ESD-HLTdecision.C
+ * @brief Print HLT decisions per event of ESD
+ *
+ * <pre>
+ * Usage: aliroot -b -q print-ESD-HLTdecision.C
+ * </pre>
+ *
+ * @author Matthias.Richter@ift.uib.no
+ * @ingroup alihlt_programs
+ */
+void print_ESD_HLTdecision(const char* esdFileName="AliESDs.root",
+                          int minEvent=0, int maxEvent=-1)
+{
+  TFile* esdFile=NULL;
+  if (esdFileName && esdFileName[0]!=0) esdFile=new TFile(esdFileName);
+  if (!esdFileName || esdFileName[0]==0 || esdFile->IsZombie()) {
+    if (esdFileName && esdFileName[0]!=0)
+      cerr << "can not open esd file " << esdFileName << endl;
+    else
+      cerr << "print-ESD-HLTdecision.C Print HLT decisions per event of ESD" << endl;
+    cerr << "===============================================================" << endl;
+    cerr << "usage: aliroot -b -q -l print-ESD-HLTdecision.C'(\"AliESDs.root\" " << endl;
+    cerr << "                                                 minEvent, maxEvent)'" << endl << endl;
+    cerr << "  Parameter:" << endl;
+    cerr << "       esdFileName      default \"AliESDs.root\"" << endl;
+    cerr << "       minEvent         first event (optional)" << endl;
+    cerr << "       maxEvent         last event (optional)" << endl;
+    cerr << "===============================================================" << endl;
+    return -1;
+  }
+  TTree* pTree=NULL;
+  esdFile->GetObject("HLTesdTree", pTree);
+  if (!pTree) {
+    cout << "no HLT ESD tree found, trying ESD tree" << endl;
+    esdFile->GetObject("esdTree", pTree);
+  }
+  if (!pTree) {
+    cerr << "can not find (HLT) ESD tree" << endl;
+    return -1;
+  }
+  
+  AliESDEvent* esd=new AliESDEvent;
+  esd->CreateStdContent();
+  esd->ReadFromTree(pTree);
+  for (int event=minEvent; 
+       event<pTree->GetEntries() && (maxEvent<minEvent || event<=maxEvent);
+       event++) {
+    pTree->GetEvent(event);
+    cout << "=====================  event " << event << "  ==========================" << endl;
+    TObject* decision=esd->GetHLTTriggerDecision();
+    if (decision) decision->Print();
+    else cout << "   no HLT decision found" << endl;
+  }
+}
similarity index 97%
rename from HLT/exa/process-hltout-payload.C
rename to HLT/programs/process-hltout-payload.C
index 824cf30..c7af2a6 100644 (file)
@@ -11,7 +11,7 @@
  * using the AliHLTReconstructor.
  *
  * @author Matthias.Richter@ift.uib.no
- * @ingroup alihlt_tutorial
+ * @ingroup alihlt_programs
  */
 void process_hltout_payload(const char* input)
 {
diff --git a/HLT/programs/read.cxx b/HLT/programs/read.cxx
deleted file mode 100644 (file)
index 9058581..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-// $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de
-//*-- Copyright &copy ALICE HLT Group
-
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTRootTypes.h"
-#include "AliHLTLogging.h"
-#include "AliHLTLogger.h"
-#include "AliHLTMemHandler.h"
-#include "AliHLTAltroMemHandler.h"
-#include "AliHLTDigitData.h"
-#include "AliHLTTransform.h"
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#endif
-
-#include <libgen.h>
-
-
-/**
-   Example program how to open and read a raw datafile.
-   In addition it shows, how to store (and read) the
-   digits in an Altro like data format. 
-*/
-
-int main(Int_t argc,Char_t **argv)
-{
-  Int_t slice=0;
-  Int_t patch=0;
-  Bool_t altroout=kFALSE;
-  FILE *afile=0;
-  
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  //l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-
-  if(argc<2)
-    {
-      cout<<"Usage: read datafile [slice] [patch] [altrodatfile]"<<endl;
-      exit(1);
-    }
-  if (argc>2) {
-    slice=atoi(argv[2]);
-  }
-  if (argc>3) {
-    patch=atoi(argv[3]);
-  }
-  if (argc>4) {
-    altroout=kTRUE;
-    afile=fopen(argv[4],"w");
-  }
-  
-  //Loading all specific aliroot version quantities, needed.
-  Char_t fname[1024];
-  strcpy(fname,argv[1]);
-  AliHLTTransform::Init(dirname(fname));
-  strcpy(fname,argv[1]);
-
-  //Filehandler object:
-  AliHLTMemHandler file;
-
-  //Give slice and patch information (see filename convention)
-  if((patch>=0)&&(patch<6)) file.Init(slice,patch);
-  else {
-    Int_t srows[2]={0,175};
-    patch=0;
-    file.Init(slice,patch,srows);
-  }
-
-  //Open the data file:
-  if(!file.SetBinaryInput(argv[1]))
-    {
-      cerr<<"Error opening file "<<argv[1]<<endl;
-      return -1;
-    }
-
-  //Create an RowData object to access the data
-  AliHLTDigitRowData *digits=0;
-  UInt_t nrows=0;
-  
-  //Read the file, and store the data in memory. Return value is a pointer to the data.
-  digits = file.CompBinary2Memory(nrows);
-
-  //Create an ALtroMemHandler object
-  AliHLTAltroMemHandler altromem;
-  if(altroout) altroout=altromem.SetASCIIOutput(afile);
-
-  UShort_t time,charge;
-  UChar_t pad;
-  Int_t row=file.GetRowMin()-1,crows=0,lrow=row;
-
-  for(UInt_t r=0; r<nrows; r++) //Loop over padrows
-    {
-      //Get the data on this padrow:
-      AliHLTDigitData *dataPt = (AliHLTDigitData*)digits->fDigitData;
-      row++;
-      if(lrow+1==row) crows++;
-      
-      //Loop over all digits on this padrow:
-      for(UInt_t ndig=0; ndig<digits->fNDigit; ndig++)
-       {
-         lrow=row;
-         pad = dataPt[ndig].fPad;
-         time = dataPt[ndig].fTime;
-         charge = dataPt[ndig].fCharge;
-         cout << "Padrow " << r << " pad " << (int)pad << " time " <<(int) time << " charge " << (int)charge << endl;
-         //cout << "Padrow " << row << " pad " << (int)pad << " time " <<(int) time << " charge " << (int)charge << endl;
-         if(altroout) altromem.Write(r,pad,time,charge);
-       }
-      
-      //Move the pointer to the next padrow:
-      file.UpdateRowPointer(digits);
-    }
-  
-  if(afile) {
-    altromem.WriteFinal();
-    fclose(afile);
-    
-#if 0
-    //test Altro read
-    UShort_t rrow=0,rtime=0,rcharge=0;
-    UChar_t rpad=0;
-    afile=fopen(argv[4],"r");
-    altromem.SetASCIIInput(afile);
-    while(altromem.Read(rrow,rpad,rtime,rcharge)){
-      cout << "Padrow " << (int)rrow << " pad " << (int)rpad << " time " <<(int)rtime << " charge " << (int)rcharge << endl;
-    }
-    fclose(afile);  
-#endif
-#if 0
-    //test Altro read sequence
-    UShort_t rrow=0,rtime=0;
-    UChar_t rpad=0,n=100,i=100;
-    UShort_t *charges=new UShort_t[100];
-    afile=fopen(argv[4],"r");
-    altromem.SetASCIIInput(afile);
-    while(altromem.ReadSequence(rrow,rpad,rtime,i,&charges)){
-      cout << "Padrow " << (int)rrow << " pad " << (int)rpad << " time " <<(int)rtime << " charges ";
-      for(UChar_t ii=0;ii<i;ii++) cout << (int)charges[ii] << " ";
-      cout << endl;
-      i=n;
-    }
-    fclose(afile);  
-#endif
-  }
-
-  //cerr << "Rows: " << (file.GetRowMax()-file.GetRowMin()+1) << " Consecutive: " << crows << endl;
-  return 0;
-}
-
-
diff --git a/HLT/programs/rec-HLTOUT-bin.C b/HLT/programs/rec-HLTOUT-bin.C
new file mode 100644 (file)
index 0000000..a73fe8e
--- /dev/null
@@ -0,0 +1,92 @@
+// $Id$
+/*
+ * Process and reconstruct the binary HLTOUT files as written to disk
+ * by the HLTOUT formatter on the online HLT system.
+ *
+ * Usage:
+ * <pre>
+ *   aliroot -b -q rec-HLTOUT-bin.C'("pattern", runno, keepFiles)'
+ *   aliroot -b -q rec-HLTOUT-bin.C'("")' # for help
+ * </pre>
+ *
+ * In the online HLT, output of the HLTOUT formatter can be written to disk.
+ * The resulting binary files contain the full DDL data. The macro
+ * reconstructs the events from a specified sample of binary files.
+ * 
+ * @ingroup alihlt_programs
+ * @author Matthias.Richter@ift.uib.no
+ */
+void rec_HLTOUT_bin(const char* input="", int runno=0, bool keepFiles=false)
+{
+  if (!input || input[0]==0) {
+    cerr << "rec-HLTOUT-bin.C: Process and reconstruct binary HLTOUT files" << endl;
+    cerr << "===============================================================" << endl;
+    cerr << "usage: aliroot -b -q -l rec-HLTOUT-bin.C'(\"pattern\" " << endl;
+    cerr << "                                          runNo," << endl;
+    cerr << "                                          keepFiles)'" << endl << endl;
+    cerr << "  Parameter:" << endl;
+    cerr << "       pattern   input file pattern, e.g. \"HLT-Output*.bin\"" << endl;
+    cerr << "       runNo     run no, default 0" << endl;
+    cerr << "       keepFiles keep the intermediate files, default false" << endl;
+    cerr << "===============================================================" << endl;
+    return;
+  }
+
+  if(!gSystem->AccessPathName("galice.root")){
+    cerr << "please delete the galice.root or run at different place." << endl;
+    return;
+  }
+
+  TString inputPattern=input;
+  if (!inputPattern.BeginsWith("/")) {
+    inputPattern=gSystem->pwd();
+    inputPattern+="/";
+    inputPattern+=input;
+  }
+  TString workingDir=gSystem->TempDirectory();
+  TUUID uuid;
+  workingDir+="/"; workingDir+=uuid.AsString(); workingDir+="/";
+  ///////////////////////////////////////////////////////////////////////////////////////////////////
+  //
+  // prepare the input
+  // in order to run the normal AliRoot reconstruction over the data, the files
+  // need to be assembled in a format readable by the AliRawReaderFile
+  // A shell script creates the rawx folders in the temporary working directory
+  // and links one binary input file in each
+  //
+  TString command="c=0; for file in ";
+  command+=inputPattern;
+  command+=" ; do directory=";
+  command+=workingDir;
+  command+="raw$c; mkdir -p $directory; (cd $directory; ln -s $file HLT_7680.ddl; touch run";
+  command+=runno;
+  command+="); let c++; done";
+  if (gSystem->Exec(command)!=0) {
+    cerr << "failed to execute script" << endl << "================================================" << endl;
+    cerr << command << endl;
+    return;
+  }
+  
+  ///////////////////////////////////////////////////////////////////////////////////////////////////
+  //
+  // Init and run the reconstruction
+  // All but HLT reconstructio is switched off
+  //
+  AliReconstruction rec;
+  rec.SetInput(workingDir);
+  rec.SetRunVertexFinder(kFALSE);
+  rec.SetRunReconstruction("HLT");
+  rec.SetLoadAlignFromCDB(0);
+  rec.SetRunQA(":");
+  rec.SetOption("HLT", "loglevel=0x7c");
+  rec.Run();
+
+  if (keepFiles) {
+    cout << "event(s) reconstructed from " << workingDir << endl;
+  } else {
+    command="rm -r ";
+    command+=workingDir;
+    gSystem->Exec(command);
+  }
+}
diff --git a/HLT/programs/runhough.cxx b/HLT/programs/runhough.cxx
deleted file mode 100644 (file)
index 8a27d01..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-// $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de
-//*-- Copyright &copy ALICE HLT Group
-
-#include <AliHLTStandardIncludes.h>
-
-#include <AliHLTRootTypes.h>
-#include <AliHLTLogging.h>
-#include <AliHLTLogger.h>
-#include <AliHLTTransform.h>
-#include <AliHLTTrack.h>
-#include <AliHLTTrackArray.h>
-#include <AliHLTHoughTrack.h>
-#include <AliHLTClustFinderNew.h>
-#include <AliHLTMemHandler.h>
-#include <AliHLTSpacePointData.h>
-#include <AliHLTHoughBaseTransformer.h>
-#include <AliHLTHoughTransformer.h>
-#include <AliHLTHoughTransformerLUT.h>
-#include <AliHLTHoughTransformerVhdl.h>
-#include <AliHLTHoughMaxFinder.h>
-#include <AliHLTHough.h>
-
-#ifndef no_root
-#include <TROOT.h>
-#include <TApplication.h>
-#include <TCanvas.h>
-#include <TH2.h>
-#include <TGraph.h>
-#include <TGraphErrors.h>
-#endif
-
-#if __GNUC__ == 3
-using namespace std;
-#endif
-
-int main(Int_t argc,Char_t **argv)
-{
-  Int_t sl=0;
-  Int_t sh=0;
-  Int_t segs=100;
-
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-
-  Char_t path[1024];
-  if(argc<2){
-    cout<<"Usage: runhough path [slow] [shigh] [segs]"<<endl;
-    exit(1);
-  }
-  strcpy(path,argv[1]);
-  if (argc>2) {
-    sl=atoi(argv[2]);
-  }
-  if (argc>3) {
-    sh=atoi(argv[3]);
-  }
-  if (argc>4) {
-    segs=atoi(argv[4]);
-  }
-
-  //AliHLTFFloat::SetParams(10000);
-  AliHLTTransform::Init(path);
-
-#if 0
-  runhough(sl,sh,path,segs);
-#else //do some comparison tests
-
-  AliHLTHoughBaseTransformer *fh1 = new AliHLTHoughTransformerVhdl(0,0,segs);
-  AliHLTHoughBaseTransformer *fh2 = new AliHLTHoughTransformerLUT(0,0,segs);
-
-  fh1->CreateHistograms(64,0.1,64,-30.,30.);
-  fh2->CreateHistograms(64,0.1,64,-30.,30.);
-
-  fh1->Print();
-
-#endif
-
-  //AliHLTFFloat::PrintStat();
-  exit(0);
-}
-
-
-//----------------------------------------------------------------------------------
-// dont look beyond...
-//----------------------------------------------------------------------------------
-
-#if 0
-void runhough(Int_t sl,Int_t sh,Char_t *path,Int_t n_eta_segments, Int_t show_seg=-1)
-{
-
-  Bool_t binary = kTRUE;
-  Bool_t bit8 = kTRUE;
-  Int_t tv=1;
-  Int_t th=14000;
-
-  AliHLTHough *hough = new AliHLTHough();
-  hough->Init(path,binary,n_eta_segments,bit8,tv);
-  hough->GetMaxFinder()->SetThreshold(th);
-  Int_t ntracks=0;
-
-  for(Int_t slice=sl;slice<=sh;slice++){
-    hough->ReadData(slice);
-    hough->Transform();
-    hough->AddAllHistograms();
-    hough->FindTrackCandidates();
-    //hough->Evaluate(5);
-
-    AliHLTTrackArray *tracks = (AliHLTTrackArray*)hough->GetTracks(0);
-    ntracks=tracks->GetNTracks();
-    for(int i=0; i<ntracks; i++)
-      {
-       AliHLTHoughTrack *track = (AliHLTHoughTrack*)tracks->GetCheckedTrack(i);
-       if(!track) continue;
-       if(sl==sh) cout<<"pt "<<track->GetPt()<<" psi "<<track->GetPsi()<<" eta "<<track->GetEta()<<" etaindex "<<track->GetEtaIndex()<<" weight "<<track->GetWeight()<<endl;
-       if(show_seg<0) show_seg=track->GetEtaIndex();
-      }
-
-    cout<<"Found total "<<tracks->GetNTracks()<<" tracks"<<endl;
-    hough->WriteTracks(slice);
-  }
-
-  //if((ntracks>0)&&(sl==sh)) display(hough,show_seg);
-}
-#endif
-
-#if 0
-void display(AliHLTHough *hough,Int_t eta_index)
-{
-  //Display the data/tracks in eta_index
-  
-  hough->InitEvaluate();
-  AliHLTHistogram *digitd = new AliHLTHistogram("Digits display","",250,0,250,250,-125,125);
-  AliHLTHistogram *trackd = new AliHLTHistogram("Found tracks display","",250,0,250,250,-125,125);
-  for(int i=0; i<6; i++)
-    hough->GetEval(i)->DisplayEtaSlice(eta_index,digitd);
-  
-  float xyz[3];
-  tracks = (AliHLTTrackArray*)hough->GetTracks(0);
-  for(int i=0; i<tracks->GetNTracks(); i++)
-    {
-      AliHLTHoughTrack *track = (AliHLTHoughTrack*)tracks->GetCheckedTrack(i);
-      if(!track) continue;
-      if(track->GetEtaIndex() != eta_index) continue;
-
-      for(int j=0; j<176; j++)
-       {
-         track->GetCrossingPoint(j,xyz);
-         trackd->Fill(xyz[0],xyz[1],1);
-       }
-    }
-  
-  //Draw the parameter space
-  TCanvas *c1 = new TCanvas("c1","",2);
-  hough->GetTransformer(0)->GetHistogram(eta_index)->Draw("box");
-  
-  //Draw the tracks
-  TCanvas *c2 = new TCanvas("c2","",2);
-  digitd->Draw();
-  trackd->Draw("same");
-  ((TH1F*)trackd->GetRootHisto())->SetMarkerColor(2);
-}
-#endif
-
-#if 0
-struct GoodTrack
-{
-  Int_t event;
-  Int_t label;
-  Double_t eta;
-  Int_t code;
-  Double_t px,py,pz;
-  Double_t pt;
-  Int_t nhits;
-};
-
-void geteff(char *fname)
-{
-  GoodTrack gt[15000];
-  int counter=0;
-  ifstream in(fname);
-  if(!in)
-    {
-      cerr<<"Could not open "<<fname<<endl;
-      return;
-    }
-  while(in>>gt[counter].event>>gt[counter].label>>gt[counter].code
-       >>gt[counter].px>>gt[counter].py>>gt[counter].pz>>gt[counter].pt>>gt[counter].eta>>gt[counter].nhits)
-    counter++;
-  
-  char filename[100];
-  file = new AliHLTMemHandler();
-}
-#endif
diff --git a/HLT/programs/runit.cxx b/HLT/programs/runit.cxx
deleted file mode 100644 (file)
index c047f81..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-// $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-
-/**
- Example program how to run the "standalone" clusterfinder.
-
- Important: give patch=-1 for one-patch slices.
-*/
-
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTLogging.h"
-#include "AliHLTLogger.h"
-#include "AliHLTRootTypes.h"
-#include "AliHLTTransform.h"
-#include "AliHLTClustFinderNew.h"
-#include "AliHLTMemHandler.h"
-#include "AliHLTSpacePointData.h"
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#endif
-
-#include <libgen.h>
-
-#define MAXCLUSTER 25000
-
-int main(Int_t argc,Char_t **argv)
-{
-  Int_t slice=0;
-  Int_t patch=0;
-  Int_t fm=4;
-  Int_t th=10;
-  Bool_t de=kFALSE;
-
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-
-  if(argc<2){
-    cout<<"Usage: runit datafile [slice] [patch] [match] [threshold] [deconv]"<<endl;
-    return -1;
-  }
-  if (argc>2) {
-    slice=atoi(argv[2]);
-  }
-  if (argc>3) {
-    patch=atoi(argv[3]);
-  }
-  if (argc>4) {
-    fm=atoi(argv[4]);
-  }
-  if (argc>5) {
-    th=atoi(argv[5]);
-  }
-  if (argc>6) {
-    de=kTRUE;
-  }
-
-  AliHLTDigitRowData *digits = 0;
-  unsigned int nrows=0;
-  
-  //reading transformer init file
-  Char_t fname[1024];
-  strcpy(fname,argv[1]);
-  AliHLTTransform::Init(dirname(fname)); 
-  strcpy(fname,argv[1]);
-
-  //Does all the file/data handling  
-  AliHLTMemHandler file; 
-
-  //Give slice and patch information (see filename convention)
-  if((patch>=0)&&(patch<6)) file.Init(slice,patch);
-  else {
-    Int_t srows[2]={0,AliHLTTransform::GetLastRow(5)};
-    patch=0;
-    file.Init(slice,patch,srows);
-  }
-
-  //Open the data file:
-  if(!file.SetBinaryInput(fname))
-    {
-      cerr<<"Error opening file "<<fname<<endl;
-      return -1;
-    }
-
-  //Store the data in memory, and get the pointer to it:
-  digits = file.CompBinary2Memory(nrows);
-  file.CloseBinaryInput();
-
-  //The cluster finder itself.
-  AliHLTClustFinderNew cf; 
-
-  //Init cluster finder
-  cf.InitSlice(slice,patch,0,nrows-1,MAXCLUSTER);
-  cf.SetMatchWidth(fm);
-  cf.SetThreshold(th);
-  //cf.SetXYError(0.2);
-  //cf.SetZError(0.3);
-  cf.SetSTDOutput(kTRUE);
-  cf.SetCalcErr(kTRUE);
-  cf.SetDeconv(de); //standard is false
-
-  //Allocate memory to store found spacepoints 
-  AliHLTMemHandler fpoints;
-  AliHLTSpacePointData *points=(AliHLTSpacePointData*)fpoints.Allocate(MAXCLUSTER*sizeof(AliHLTSpacePointData));
-  cf.SetOutputArray(points);
-
-  //Give the data pointer to the cluster finder
-  cf.Read(nrows,digits);
-
-  //Start processing:
-  cf.ProcessDigits();
-
-  exit(0);
-}
diff --git a/HLT/programs/runtracker.cxx b/HLT/programs/runtracker.cxx
deleted file mode 100644 (file)
index 1fdb89c..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-// @(#) $Id$
-
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTRootTypes.h"
-#include "AliLevel3.h"
-
-//Standalone program to run the track follower for benchmark tests.
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#include <string.h>
-#include <stdlib.h>
-#endif
-
-int main(Int_t argc,Char_t **argv)
-{
-  
-  if(argc != 4)
-    {
-      cout<<"Usage : runtracker <path> minslice maxslice "<<endl;
-      return -1;
-    }
-  Char_t path[1024];
-  Int_t sl1,sl2;
-  
-  strcpy(path,argv[1]);
-  sl1 = atoi(argv[2]);
-  sl2 = atoi(argv[3]);
-  
-  AliLevel3 level3;
-  level3.Init(path,AliLevel3::kBinary,1);
-  level3.SetClusterFinderParam(0,0,kTRUE);
-  
-  Int_t phi_segments,eta_segments,trackletlength,tracklength;
-  Int_t rowscopetracklet,rowscopetrack;
-  Double_t min_pt_fit,maxangle,goodDist,hitChi2Cut;
-  Double_t goodHitChi2,trackChi2Cut,maxphi,maxeta;
-  
-  phi_segments = 50;//50;
-  eta_segments = 100;//100;
-  trackletlength = 3;
-  tracklength = 5;
-  rowscopetracklet = 2;
-  rowscopetrack = 2;
-  min_pt_fit = 0;
-  maxangle = 1.31;
-  goodDist = 5;
-  maxphi=100;
-  maxeta=100;
-  hitChi2Cut = 15;//100
-  goodHitChi2 = 5;//20;
-  trackChi2Cut = 10;
-  
-  //main vertex tracking parameters:
-  level3.SetTrackerParam(phi_segments,eta_segments,trackletlength,tracklength,
-                    rowscopetracklet,rowscopetrack,
-                    min_pt_fit,maxangle,goodDist,hitChi2Cut,
-                    goodHitChi2,trackChi2Cut,50,maxphi,maxeta,kTRUE);
-  
-  //level3.WriteFiles("data/");
-  level3.ProcessEvent(sl1,sl2);
-  level3.DoBench("1000tango");
-
-  return 0;
-}
diff --git a/HLT/programs/runvhdlcf.cxx b/HLT/programs/runvhdlcf.cxx
deleted file mode 100644 (file)
index 2b9f286..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-// $Id$
-   
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTRootTypes.h"
-#include "AliHLTLogging.h"
-#include "AliHLTLogger.h"
-#include "AliHLTMemHandler.h"
-#include "AliHLTTransform.h"
-#include "AliHLTVHDLClusterFinder.h"
-#include "AliHLTAltroMemHandler.h"
-
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#include <libgen.h>
-#include <stdlib.h>
-#endif
-
-
-/**
-Example program how to run the vhdl clusterfinder.
-*/
-
-int main(Int_t argc,Char_t **argv)
-{
-  Int_t slice=0;
-  Int_t patch=0;
-  Int_t fm=4;
-  Int_t th=10;
-  Bool_t de=kFALSE;
-
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-
-  if(argc<2){
-    cout<<"Usage: runvhdlcf altrodatafile [slice] [patch] [matchwidth] [threshold] [deconv]"<<endl;
-    return -1;
-  }
-  if (argc>2) {
-    slice=atoi(argv[2]);
-  }
-  if (argc>3) {
-    patch=atoi(argv[3]);
-  }
-  if (argc>4) {
-    fm=atoi(argv[4]);
-  }
-  if (argc>5) {
-    th=atoi(argv[5]);
-  }
-  if (argc>6) {
-    de=kTRUE;
-  }
-
-  /*
-  //reading transformer config file
-  Char_t fname[1024];
-  strcpy(fname,argv[1]);
-  AliHLTTransform::Init(dirname(fname)); 
-  strcpy(fname,argv[1]);
-  */
-
-  FILE *afile=fopen(argv[1],"r");
-  if(!afile) {
-    cerr << "Can't open file " << argv[1] << endl;
-    exit(1);
-  }
-
-  AliHLTVHDLClusterFinder cf;
-  cf.SetASCIIInput(afile);
-
-  //set cluster finder parameters
-  cf.SetMatchWidth(fm);
-  cf.SetThreshold(th);
-  //cf.SetXYError(0.2);
-  //cf.SetZError(0.3);
-  cf.SetSTDOutput(kTRUE);
-  cf.SetCalcErr(kTRUE);
-  cf.SetDeconv(de);
-  
-  //start processing data
-  cf.ProcessDigits();
-
-  if(afile) fclose(afile);
-  exit(1);
-}
-
-
-
-
-
diff --git a/HLT/programs/runvhdlhough.cxx b/HLT/programs/runvhdlhough.cxx
deleted file mode 100644 (file)
index dfa22b0..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-// $Id$
-   
-// Author: Constantin Loizides <loizides@ikf.uni-frankfurt.de>
-//*-- Copyright &copy ALICE HLT Group
-
-
-#include "AliHLTStandardIncludes.h"
-
-#include "AliHLTRootTypes.h"
-#include "AliHLTTransform.h"
-#include "AliHLTVHDLClusterFinder.h"
-#include "AliHLTAltroMemHandler.h"
-#include "AliHLTLogging.h"
-#include "AliHLTLogger.h"
-
-#if __GNUC__ == 3
-using namespace std;
-#else
-#include <stream.h>
-#endif
-
-
-/**
-Example program how to run the vhdl hough code.
-*/
-
-int main(int argc,char **argv)
-{
-#if 0
-  Int_t slice=0;
-  Int_t patch=0;
-  Int_t fm=4;
-  Int_t th=10;
-
-  AliHLTLogger l;
-  l.Set(AliHLTLogger::kAll);
-  l.UseStderr();
-  //l.UseStdout();
-  //l.UseStream();
-
-  if(argc<2){
-    cout<<"Usage: runvhdlcf altrodatafile [slice] [patch] [matchwidth] [threshold]"<<endl;
-    return -1;
-  }
-  if (argc>2) {
-    slice=atoi(argv[2]);
-  }
-  if (argc>3) {
-    patch=atoi(argv[3]);
-  }
-  if (argc>4) {
-    fm=atoi(argv[4]);
-  }
-  if (argc>5) {
-    th=atoi(argv[5]);
-  }
-
-  //Storing all specific quantities, needed by the Cluster Finder.
-  //Char_t fname[1024];
-  //strcpy(fname,argv[1]);
-  //AliHLTTransform::Init(dirname(fname)); 
-  //strcpy(fname,argv[1]);
-
-  FILE *afile=fopen(argv[1],"r");
-  if(!afile) {
-    cerr << "Can't open file " << argv[1] << endl;
-    exit(1);
-  }
-
-  AliHLTVHDLClusterFinder cf;
-  cf.SetASCIIInput(afile);
-
-  //set cluster finder parameters
-  cf.SetMatchWidth(fm);
-  cf.SetThreshold(th);
-  //cf.SetXYError(0.2);
-  //cf.SetZError(0.3);
-  cf.SetSTDOutput(kTRUE);
-  cf.SetCalcErr(kTRUE);
-  //cf.SetDeconv(kFALSE);
-  
-  //start processing data
-  cf.ProcessDigits();
-
-  if(afile) fclose(afile);
-  exit(1);
-#endif
-}
-
-
-
-
-
diff --git a/HLT/programs/speedtest.cxx b/HLT/programs/speedtest.cxx
deleted file mode 100644 (file)
index 946b243..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-// $Id$
-
-// Author: Uli Frankenfeld <uli.frankenfeld@gsi.de>
-//*-- Copyright &copy ALICE HLT Group
-
-
-#include "speedtest.h"
-
-int main(int arg,char **arc){
-  int n = 0;
-  if(arg!=2) {cerr<<"usage: speedtest #loops \n";return -1;}  
-  n = atoi(arc[1]);
-//  cerr<<"allocate: "<<n*sizeof(AliHLTConfMapPoint)<<" Bytes"<<endl;
-//  AliHLTConfMapPoint *array = new AliHLTConfMapPoint[n];
-  cerr<<"allocate: "<<n*sizeof(double)<<" Bytes"<<endl;
-  double *array = new double[n];
-//  cerr<<"allocate: "<<n*sizeof(int)<<" Bytes"<<endl;
-//  int *array = new int[n];
-//  cerr<<"allocate: "<<n*sizeof(AliHLTSpacePointData)<<" Bytes"<<endl;
-//  AliHLTSpacePointData *array = new AliHLTSpacePointData[n];
-
-  AliHLTSpacePointData hit;
-  hit.fX=103.55;
-  hit.fY=22.33;
-  hit.fZ=95.312;
-  hit.fID=(4<<25)|14042;
-  hit.fPadRow=77;
-  hit.fXYErr=1;
-  hit.fZErr=2.5;
-
-  cerr<<"start loop"<<endl;
-  double initCpuTime,cpuTime;
-  initCpuTime = CpuTime();
-
-/*  
-  for(int i=0;i<n;i++){
-    array[i].SetHitNumber(hit.fID);
-    array[i].SetPadRow(hit.fPadRow);
-    Int_t slice = (hit.fID>>25) & 0x7f;
-    array[i].SetSector(slice);
-    array[i].SetX(hit.fX);
-    array[i].SetY(hit.fY);
-    array[i].SetZ(hit.fZ);
-    array[i].SetXerr(sqrt((double)hit.fXYErr));
-//    array[i].SetYerr(sqrt(hit.fXYErr));
-//    array[i].SetZerr(sqrt(hit.fZErr));
-  }
-*/
-//  for(int i=0;i<n;i++) array[i].ReadHits(&hit);
-  for(int i=0;i<n;i++) array[i]=sqrt(i); 
-//  for(int i=0;i<n;i++) array[i]=i; 
-//  for(int i=0;i<n;i++) array[i].fX=hit.fX; 
-
-  cpuTime = CpuTime() - initCpuTime;
-//  cerr<<"cpuTime: "<<cpuTime<<endl;
-  printf("cpuTime: %d ms\n",int(cpuTime*1000));
-  return 0;
-}
-
diff --git a/HLT/programs/speedtest.h b/HLT/programs/speedtest.h
deleted file mode 100644 (file)
index ddb186c..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-// $Id$
-
-#include <iostream.h>
-#define ALIL3LOGGING_H
-class AliHLTLog{
-  public:
-  enum TLogLevel { kNone = 0, kDebug= 0x01, kInformational = 0x02, kWarning = 0x04, kError = 0x08 , kFatal = 0x10, kPrimary = 0x80, kAll = 0x9F };
-  enum TLogCmd { kEnd, kPrec, kHex, kDec };
-};
-#define LOG( lvl, origin, keyword ) cerr
-#define ENDLOG endl
-#define no_root
-
-#include <stdio.h>
-#include <math.h>
-#include <stdlib.h>
-#include <time.h>
-#include "AliHLTConfMapPoint.cxx"
-
-double CpuTime()
-{
-  //Return the Cputime in seconds.
-
-  return (double)(clock()) / CLOCKS_PER_SEC;
-}
-
-
diff --git a/HLT/programs/tpcbeamtestdisplay.cxx b/HLT/programs/tpcbeamtestdisplay.cxx
deleted file mode 100644 (file)
index 802d84b..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-// $Id$
-
-#include "AliHLTStandardIncludes.h"
-#include "AliHLTRootTypes.h"
-#include "AliLevel3.h"
-#include "AliHLTTransform.h"
-#include "AliHLTRawDataFileHandler.h"
-#include "AliHLTSpacePointData.h"
-#include "AliHLTClustFinderNew.h"
-#include "AliHLTConfMapper.h"
-#include "AliHLTVertex.h"
-#include "AliHLTMemHandler.h"
-#include "AliHLTLogging.h"
-#include "AliHLTTrackArray.h"
-#include "AliHLTTrack.h"
-#include <TCanvas.h>
-#include <TH2.h>
-#include <TView.h>
-#include <TApplication.h>
-#include <TColor.h>
-#include <TPaletteAxis.h>
-#include <TStyle.h>
-#include <TFormula.h>
-#include <TF1.h>
-#include <TLine.h>
-#include <TAttLine.h>
-#if __GNUC__== 3
-using namespace std;
-#else
-#include <stream.h>
-#include <string.h>
-#include <stdlib.h>
-#endif
-
-//This program does the clusterfinding and the tracking.
-int main(Int_t argc,Char_t **argv){
-
-  //Display all clusters.
-    
-  Char_t cfile[1024];
-  Char_t path[1024];  
-  Char_t fname[1024];  
-
-  if(argc<3){
-    cout<<"Usage: tpcbeamtestdisplay filename path_to_files"<<endl;
-    return -1;
-  }
-  if (argc>2) {
-    sprintf(cfile,"%s",argv[1]);
-    sprintf(path,"%s",argv[2]);
-  }
-
-  //displaying the tracks:
-  UInt_t fNcl;
-  AliHLTMemHandler *clusterfile = new AliHLTMemHandler();
-  sprintf(fname,"%s/%s-points_0_-1.raw",path,cfile);
-  cout<<"file: "<<fname<<endl;
-  if(!clusterfile->SetBinaryInput(fname)){
-    cout<<"file: "<<fname<<" can not be set as binary input!"<<endl;
-    LOG(AliHLTLog::kError,"AliHLTEvaluation::Setup","File Open")
-      <<"Inputfile "<<fname<<" does not exist"<<ENDLOG; 
-    delete clusterfile;
-    clusterfile = 0; 
-  }
-  clusterfile->SetBinaryInput(fname);
-  AliHLTSpacePointData *fClusters = new AliHLTSpacePointData();
-  memset(fClusters,0,sizeof(AliHLTSpacePointData*));
-  fClusters = (AliHLTSpacePointData*)clusterfile->Allocate();
-  clusterfile->Binary2Memory(fNcl,fClusters);
-  clusterfile->CloseBinaryInput();
-  TApplication theApp("App", &argc, argv);
-  TCanvas *c1 = new TCanvas("c1","",900,700);
-  c1->cd();
-
-  c1->Clear();
-  c1->SetFillColor(1);
-  
-  AliHLTSpacePointData *points = fClusters;
-  TH2F *clusters = new TH2F("clusters","",65,-1,64,77,17,94);
-  if(!points)
-    cout<<"no points"<<endl;
-  Int_t npoints = fNcl;
-  //  cout<<"number of points: "<<npoints<<endl;
-  for(Int_t i=0; i<npoints; i++){
-    float x_tmp = points[i].fX;
-    float y_tmp = points[i].fY;
-    //    cout<<"x: "<<x_tmp<<" y: "<<y_tmp<<endl;
-    clusters->Fill(x_tmp,y_tmp,1); 
-  }
-  TH2F *nothing = new TH2F(cfile,"",65,-1,64,77,17,94);
-//  nothing->SetName("Test");
-  //Adding a regression method to calculate the line parameters.
-  float *x=new float[npoints];
-  float *y=new float[npoints];
-  float xyParamA=0;
-  float xyParamB=0;
-  
-  Int_t numofXYPoints=npoints;
-
-  float sumX=0;
-  float sumY=0;
-
-  float sumXtimesY=0;
-  float sumXsquare=0;
-  float sumYsquare=0;
-
-
-  for(Int_t i=0; i<npoints; i++){
-    x[i] = points[i].fX;
-    y[i] = points[i].fY;
-    sumX+=x[i];
-    sumY+=y[i];
-    sumXtimesY+=x[i]*y[i];
-    sumXsquare+=x[i]*x[i];
-    sumYsquare+=y[i]*y[i];
-  }
-  
-
-
-  if(numofXYPoints*sumXsquare-sumX*sumX!=0)
-    xyParamB=(numofXYPoints*sumXtimesY-sumX*sumY)/(numofXYPoints*sumXsquare-sumX*sumX);
-  else
-    cout<<"Divident is zero calculating the xParamB, numofXYPoints*sumXsquare-sumX*sumX=0"<<endl;
-  if(numofXYPoints!=0)
-    xyParamA=(sumY-xyParamB*sumX)/numofXYPoints;
-  else
-    cout<<"Divident is zero calculating the xParamA, numofXYPoints=0"<<endl;
-  
-  //cout<<"y= a + bx : "<<"y= "<<xyParamA<<" + "<<xyParamB<<" x"<<endl;
-
-  TF1 *line = new TF1("line","[0]+[1]*x",0,63);
-  line->SetParameters(xyParamA,xyParamB);
-  TLine *leftline= new TLine(0,(0-AliHLTTransform::GetNPads(0)/2+55),0,AliHLTTransform::GetNPads(0)-(AliHLTTransform::GetNPads(0)/2)+55);
-  TLine *rightline=new TLine(63,(0-AliHLTTransform::GetNPads(63)/2+55),63,AliHLTTransform::GetNPads(63)-(AliHLTTransform::GetNPads(63)/2)+55);
-  TLine *upperline=new TLine(0,(AliHLTTransform::GetNPads(0)-AliHLTTransform::GetNPads(0)/2+55),63,AliHLTTransform::GetNPads(63)-(AliHLTTransform::GetNPads(63)/2)+55);
-  TLine *underline=new TLine(0,(0-AliHLTTransform::GetNPads(0)/2+55),63,0-(AliHLTTransform::GetNPads(63)/2)+55);
-  
-  nothing->Draw("colz");
-  nothing->SetXTitle("Padrows");
-  nothing->SetYTitle("Pads");
-  clusters->SetMarkerStyle(22);
-  clusters->Draw("same");
-
-  line->Draw("same");
-  line->SetLineColor(2);
-  leftline->Draw("same");
-  leftline->SetLineWidth(2);
-  rightline->Draw("same");
-  rightline->SetLineWidth(2);
-  upperline->Draw("same");
-  upperline->SetLineWidth(2);
-  underline->Draw("same");
-  underline->SetLineWidth(2);
-  
-
-  c1->SetFillColor(10);
-  c1->Update();
-  c1->Draw();
-  while(1){
-
-  }
-}
diff --git a/HLT/programs/tpcbeamtesttracker.cxx b/HLT/programs/tpcbeamtesttracker.cxx
deleted file mode 100644 (file)
index 50cebd0..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-// $Id$
-
-#include "AliHLTStandardIncludes.h"
-#include "AliHLTRootTypes.h"
-#include "AliLevel3.h"
-#include "AliHLTTransform.h"
-#include "AliHLTRawDataFileHandler.h"
-#include "AliHLTSpacePointData.h"
-#include "AliHLTClustFinderNew.h"
-#include "AliHLTConfMapper.h"
-#include "AliHLTVertex.h"
-
-#if __GNUC__== 3
-using namespace std;
-#else
-#include <stream.h>
-#include <string.h>
-#include <stdlib.h>
-#endif
-
-
-#include <sys/stat.h>
-struct stat stat_results;
-
-
-//This program does the clusterfinding and the tracking.
-int main(Int_t argc,Char_t **argv)
-{
-
-  Char_t cfile[1024];
-  Char_t path[1024]; 
-  Int_t slice=0;
-  Int_t patch=-1;
-  
-  if(argc<3){
-    cout<<"Usage: tpcbeamtesttracker filename path_to_cosmics"<<endl;
-    return -1;
-  }
-  if (argc>2) {
-    sprintf(cfile,"%s",argv[1]);
-    sprintf(path,"%s",argv[2]);
-  }
-
-  AliHLTTransform::Init("./l3-cosmics-transform.config");
-  AliHLTTransform::SetZeroSup(5);
-  AliHLTRawDataFileHandler *f=new AliHLTRawDataFileHandler();
-
-  f->Init(slice,patch);
-  
-  f->SetMappingFile("remap.txt");
-  f->ReadMappingFile();
-
-  Char_t fname[1024];
-  Char_t pname[1024];
-
-  f->SetRawPedestalsInput("./pedout.out");
-  f->ReadRawPedestalsInput();
-  //f->SetPedVal(85);
-
-  sprintf(pname,"%s/%s",path,cfile);
-#if 0
-  f->SetRawInput(pname);
-  f->ReadRawInput();
-#else
-  if (stat(pname, &stat_results) != 0){
-    exit(1);
-  }
-  Char_t *t=new Char_t[stat_results.st_size];
-  ifstream *fin=new ifstream(pname,fstream::binary);
-  fin->read(t,stat_results.st_size);
-  delete fin;
-  f->ReadRawInputPointer(t);
-#endif
-
-  UInt_t nrows;
-  AliHLTDigitRowData *data=(AliHLTDigitRowData*)f->RawData2Memory(nrows);
-
-  AliHLTMemHandler *out = new AliHLTMemHandler();
-  sprintf(fname,"./%s-digits_%d_%d.raw",cfile,slice,patch);
-  out->SetBinaryOutput(fname);
-  out->Memory2Binary(nrows,data);
-  out->CloseBinaryOutput();
-  out->Free();
-
-  AliHLTMemHandler *mem=new AliHLTMemHandler();
-
-  UInt_t maxclusters=100000;
-  UInt_t pointsize = maxclusters*sizeof(AliHLTSpacePointData);
-  AliHLTSpacePointData *points = (AliHLTSpacePointData*)mem->Allocate(pointsize);
-
-  Bool_t rawsp=kTRUE;
-  AliHLTClustFinderNew *cf = new AliHLTClustFinderNew();
-  cf->InitSlice(slice,patch,maxclusters);
-  cf->SetMatchWidth(10);
-  cf->SetSTDOutput(kTRUE);
-  cf->SetRawSP(rawsp);
-  cf->SetThreshold(10);
-  cf->SetDeconv(kFALSE);
-  cf->SetCalcErr(kTRUE);
-  cf->SetOutputArray(points);
-  cf->Read(nrows,data);
-  cf->ProcessDigits();
-  Int_t npoints = cf->GetNumberOfClusters();
-
-  sprintf(fname,"./%s-points_%d_%d.raw",cfile,slice,patch);
-  out->Transform(npoints,points,slice);
-  out->SetBinaryOutput(fname);
-  out->Memory2Binary(npoints,points);
-  out->CloseBinaryOutput();
-  out->Free();
-
-  delete out;
-  delete mem;
-  delete cf;
-  delete f;
-
-
-}