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 | |
13 | class 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 |
19 | void ExecuteJob(); // 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" |
31 | |
32 | protected : |
1c9018c6 |
33 | Int_t fMakefolder; // Flag to indicate creation of the folder structure |
5481c137 |
34 | TFolder* fFolder; // Pointer to the folder which serves as the job's whiteboard |
35 | TObject* fMainObject; // Pointer to the main processing object structure within the job |
36 | TObjArray* fObjects; // Pointers to the various user-added objects |
37 | TObjArray* fSelect; //! Temp. array of pointers to user-selected stored objects |
38 | |
39 | void SetMainObject(TObject* obj); // Store pointer to the main object structure |
40 | |
1c9018c6 |
41 | ClassDef(AliJob,2) // Base class for top level job in a task based procedure |
5481c137 |
42 | }; |
43 | #endif |