#ifndef ALI_MUON_DATA_INTERFACE_H
#define ALI_MUON_DATA_INTERFACE_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/* $Id$ */
+// Includes revised 07/05/2004
// Author: Artur Szostak
// email: artur@alice.phy.uct.ac.za
#include <TObject.h>
#include <TString.h>
-#include <TParticle.h>
-#include "AliRunLoader.h"
-#include "AliLoader.h"
#include "AliMUONData.h"
-#include "AliMUONHit.h"
-#include "AliMUONDigit.h"
-#include "AliMUONRawCluster.h"
-#include "AliMUONLocalTrigger.h"
+class TParticle;
+
+class AliRunLoader;
+class AliLoader;
+class AliMUONRawCluster;
+class AliMUONLocalTrigger;
+class AliMUONHit;
+class AliMUONDigit;
// An easy to use interface to the MUON module data stored in TreeK, TreeH, TreeS, TreeD and TreeR
// Sets all internal pointers to NULL without releasing the current runloader.
void Reset();
+
+ Bool_t UseCurrentRunLoader();
Int_t NumberOfEvents(TString filename, TString foldername);
// Returns the name of the currently selected file.
- TString CurrentFile() { return fFilename; };
+ TString CurrentFile() const { return fFilename; };
// Returns the name of the currently selected folder.
- TString CurrentFolder() { return fFoldername; };
+ TString CurrentFolder() const { return fFoldername; };
// Returns the number of the currently selected event.
- Int_t CurrentEvent() { return fEventnumber; };
+ Int_t CurrentEvent() const { return fEventnumber; };
// Returns the currently selected track.
- Int_t CurrentTrack() { return fTrack; };
+ Int_t CurrentTrack() const { return fTrack; };
// Returns the currently selected cathode in TreeS.
- Int_t CurrentSCathode() { return fSCathode; };
+ Int_t CurrentSCathode() const { return fSCathode; };
// Returns the currently selected cathode in TreeD.
- Int_t CurrentDCathode() { return fCathode; };
+ Int_t CurrentDCathode() const { return fCathode; };
+
+protected:
+ AliMUONDataInterface(const AliMUONDataInterface& rhs);
+ AliMUONDataInterface& operator=(const AliMUONDataInterface& rhs);
private:
+ Bool_t FetchMuonLoader(TString filename, TString foldername);
Bool_t LoadLoaders(TString filename, TString foldername);
Bool_t FetchLoaders(TString filename, TString foldername);
Bool_t FetchEvent(Int_t event);
Bool_t FetchTreeS();
Bool_t FetchTreeD();
Bool_t FetchTreeR();
-
+
+ Bool_t fCreatedRunLoader; //! If this object created the fRunloader then this flag is set.
Bool_t fHitAddressSet; //! Flag specifying if the TTree address for the hit tree was set.
Bool_t fSDigitAddressSet; //! Flag specifying if the TTree address for the s-digit tree was set.