#include <TTree.h>
+#include <TFile.h>
+
#include "AliAODHandler.h"
#include "AliAODEvent.h"
AliAODHandler::AliAODHandler() :
AliVirtualEventHandler(),
fAODEvent(NULL),
- fTreeA(NULL)
+ fTreeA(NULL),
+ fFileA(NULL),
+ fName("")
{
// default constructor
}
AliAODHandler::AliAODHandler(const char* name, const char* title):
AliVirtualEventHandler(name, title),
fAODEvent(NULL),
- fTreeA(NULL)
+ fTreeA(NULL),
+ fFileA(NULL),
+ fName("")
{
}
}
-Bool_t AliAODHandler::InitIO()
+Bool_t AliAODHandler::InitIO(Option_t* opt)
{
// Initialize IO
+ //
+ // Create the AODevent object
fAODEvent = new AliAODEvent();
fAODEvent->CreateStdContent();
+ //
+ // File opening according to execution mode
+
+ if (!(strcmp(opt, "proof"))) {
+ // proof
+ } else {
+ // local and grid
+ fFileA = new TFile(fName, "RECREATE");
+ }
+ //
+ // Create the output tree
CreateTree();
return kTRUE;
AliAODHandler();
AliAODHandler(const char* name, const char* title);
virtual ~AliAODHandler();
- virtual Bool_t InitIO();
+ virtual void SetOutputFileName(char* fname) {fName = fname;}
+ virtual char* GetOutputFileName() {return fName;}
+ virtual Bool_t InitIO(Option_t* option);
virtual Bool_t Fill();
virtual Bool_t Terminate();
virtual Bool_t TerminateIO();
private:
AliAODEvent *fAODEvent; //! Pointer to the AOD event
TTree *fTreeA; //! tree for AOD persistency
-
-
+ TFile *fFileA; //! Output file
+ char *fName; //! Output file name
ClassDef(AliAODHandler, 1);
};
AliVirtualEventHandler();
AliVirtualEventHandler(const char* name, const char* title);
virtual ~AliVirtualEventHandler();
- virtual Bool_t InitIO() = 0;
- virtual Bool_t Fill() = 0;
- virtual Bool_t Terminate() = 0;
- virtual Bool_t TerminateIO() = 0;
+ virtual void SetOutputFileName(char* fname) = 0;
+ virtual char* GetOutputFileName() = 0;
+ virtual Bool_t InitIO(Option_t* opt) = 0;
+ virtual Bool_t Fill() = 0;
+ virtual Bool_t Terminate() = 0;
+ virtual Bool_t TerminateIO() = 0;
private :
ClassDef(AliVirtualEventHandler, 1);
};