+/**************************************************************************
+ * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * *
+ * Author: The ALICE Off-line Project. *
+ * Contributors are mentioned in the code where appropriate. *
+ * *
+ * Permission to use, copy, modify and distribute this software and its *
+ * documentation strictly for non-commercial purposes is hereby granted *
+ * without fee, provided that the above copyright notice appears in all *
+ * copies and that both the copyright notice and this permission notice *
+ * appear in the supporting documentation. The authors make no claims *
+ * about the suitability of this software for any purpose. It is *
+ * provided "as is" without express or implied warranty. *
+ **************************************************************************/
+
+/* $Id$ */
+
+#include <TClonesArray.h>
+#include <TClass.h>
+#include <TGeoManager.h>
+
#include "AliITSdigit.h"
#include "AliITSLoader.h"
#include "AliRunLoader.h"
+#include "AliObjectLoader.h"
+#include "AliITSInitGeometry.h"
#include "AliLog.h"
///////////////////////////////////////////////////////////////////////////
/**********************************************************************/
AliITSLoader::AliITSLoader():AliLoader(),
-fITSpid(0),
fGeom(0){
// Default constructor
}
/*********************************************************************/
AliITSLoader::AliITSLoader(const Char_t *name,const Char_t *topfoldername):
AliLoader(name,topfoldername),
-fITSpid(0),
fGeom(0){
//Constructor
AliDataLoader* rawClustersDataLoader = new AliDataLoader(
/**********************************************************************/
AliITSLoader::AliITSLoader(const Char_t *name,TFolder *topfolder):
AliLoader(name,topfolder),
-fITSpid(0),
fGeom(0){
//ctor
AliDataLoader* rawClustersDataLoader = new AliDataLoader(
TClonesArray *cl = 0;
TTree *td = 0;
TBranch *br = 0;
- Char_t branch[13];
+ Char_t branch[14];
const Char_t *det[3] = {"SPD","SDD","SSD"};
if(!digPerDet){
for(i=0;i<n;i++){
if(digPerDet->At(i)==0){ // set up TClones Array
digPerDet->AddAt(new TClonesArray(digclass[i],1000),i);
- if(n==3) sprintf(branch,"ITSDigits%s",det[i]);
- else sprintf(branch,"ITSDigits%d",i+1);
+ if(n==3) snprintf(branch,13,"ITSDigits%s",det[i]);
+ else snprintf(branch,13,"ITSDigits%d",i+1);
br = td->GetBranch(branch);
br->SetAddress(&((*digPerDet)[i]));
continue; // do next one.
"derived from AliITSdigit",i,digPerDet->At(i));
} // end if
cl->Clear();
- if(n==3) sprintf(branch,"ITSDigits%s",det[i]);
- else sprintf(branch,"ITSDigits%d",i+1);
+ if(n==3) snprintf(branch,13,"ITSDigits%s",det[i]);
+ else snprintf(branch,13,"ITSDigits%d",i+1);
br = td->GetBranch(branch);
br->SetAddress(&((*digPerDet)[i]));
continue;
delete fGeom;
fGeom = 0;
}
- AliRunLoader *runLoader = GetRunLoader();
- if (!runLoader->GetAliRun()) runLoader->LoadgAlice();
- if (!runLoader->GetAliRun()) {
- Error("GetITSgeom", "couldn't get AliRun object");
- return NULL;
+ if(!gGeoManager){
+ AliError("gGeoManager is a null pointer - ITS geometry not built");
+ return fGeom;
}
-
- TDirectory *curdir = gDirectory;
- runLoader->CdGAFile();
- fGeom = (AliITSgeom*)gDirectory->Get("AliITSgeom");
- curdir->cd();
- if(!fGeom){
- Error("GetITSgeom","no ITS geometry available");
- return NULL;
- }
- AliWarning("AliITSgeom object has been fetched from galice.root file");
+ AliITSInitGeometry initgeom;
+ fGeom = initgeom.CreateAliITSgeom();
+ AliDebug(1,"AliITSgeom object has been initialized from TGeo\n");
+ AliDebug(1,Form("Geometry name: %s",(initgeom.GetGeometryName()).Data()));
return fGeom;
}
//______________________________________________________________________
}// end if
fGeom=geom;
}
-