defects fixed
[u/mrichter/AliRoot.git] / RALICE / AliJob.h
CommitLineData
5481c137 1#ifndef ALIJOB_H
2#define ALIJOB_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// $Id$
7
8#include "TROOT.h"
9#include "TTask.h"
10#include "TFolder.h"
11#include "TObjArray.h"
12
13class AliJob : public TTask
14{
15 public :
16 AliJob(const char* name="AliJob",const char* title=""); // Constructor
17 virtual ~AliJob(); // Destructor
18 void ListEnvironment(); // Provide listing of the job environment
9f575717 19 void ExecuteJob(Int_t mode=0); // Invokation of the top level processing
1c9018c6 20 void MakeFolder(); // Select creation of the folder structure
5481c137 21 TFolder* GetFolder() const; // Provide pointer to the whiteboard folder
22 TObject* GetMainObject() const; // Provide pointer to the main object structure
23 void AddObject(TObject* obj); // Add an object into the environment
24 void AddObjects(TObjArray* arr); // Add all array objects into the environment
25 void RemoveObject(TObject* obj); // Remove an object from the environment
26 void RemoveObjects(const char* classname); // Remove all objects inheriting from "classname"
27 TObject* GetObject(const char* classname) const; // Provide first stored object inheriting from "classname"
28 TObject* GetObject(Int_t j) const; // Provide j-th stored object
29 TObjArray* GetObjects() const; // Provide all stored object pointers
30 TObjArray* GetObjects(const char* classname); // Provide all objects inheriting from "classname"
3bd8f3ec 31 void ProcessObject(TObject* obj); // Process all sub-tasks for the specified object
5481c137 32
33 protected :
1c9018c6 34 Int_t fMakefolder; // Flag to indicate creation of the folder structure
5481c137 35 TFolder* fFolder; // Pointer to the folder which serves as the job's whiteboard
36 TObject* fMainObject; // Pointer to the main processing object structure within the job
37 TObjArray* fObjects; // Pointers to the various user-added objects
38 TObjArray* fSelect; //! Temp. array of pointers to user-selected stored objects
39
40 void SetMainObject(TObject* obj); // Store pointer to the main object structure
41
3bd8f3ec 42 ClassDef(AliJob,4) // Base class for top level job in a task based procedure
5481c137 43};
44#endif