]>
Commit | Line | Data |
---|---|---|
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 | |
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 |