ROOT logo
/////////////////////////////////////////////////////////////////////////////////////////////
//                                                                                         //
//  class AliObjectLoader                                                                  //
//                                                                                         //
//  Container of all data needed for full                                                  //
//  description of each data type                                                          //
//  (Hits, Kine, ...)                                                                      //
//                                                                                         //
//  Each data loader has a basic standard setup of BaseLoaders                             //
//  which can be identuified by indexes (defined by EStdBasicLoaders)                      //
//  Data managed by these standard base loaders has fixed naming convention                //
//  e.g. - tree with hits is always named TreeH                                            //
//                     (defined in AliLoader::fgkDefaultHitsContainerName)                 //
//       - task DtectorName+Name defined                                                   //
//                                                                                         //
//  EStdBasicLoaders   idx     Object Type        Description                              //
//      kData           0    TTree or TObject     main data itself (hits,digits,...)       //
//      kTask           1        TTask            object producing main data               //
//      kQA             2        TTree                quality assurance tree               //
//      kQATask         3        TTask            task producing QA object                 //
//                                                                                         //
//                                                                                         //
//  User can define and add more basic loaders even Run Time.                              //
//  Caution: in order to save information about added base loader                          //
//  user must rewrite Run Loader to galice.file, overwriting old setup                     //
//                                                                                         //
/////////////////////////////////////////////////////////////////////////////////////////////

#include "AliObjectLoader.h"
#include "AliDataLoader.h"
#include "AliLog.h"
#include <TFolder.h>

ClassImp(AliObjectLoader)

//______________________________________________________________________________
AliObjectLoader::AliObjectLoader(const TString& name, AliDataLoader* dl, Bool_t storeontop):
  AliBaseLoader(name,dl,storeontop)
{
  //
  // Constructor
  //
}

//______________________________________________________________________________
TFolder* AliObjectLoader::GetFolder() const
{
  //
  // Returns pointer to the object folder
  //
  TFolder* df = GetDataLoader()->GetFolder();
  if (df == 0x0)
    {
      AliFatal("Data Folder is NULL");
    }
  return df;
}

//______________________________________________________________________________
void AliObjectLoader::RemoveFromBoard(TObject* obj)
{
  //
  // Removes "obj" from the board
  //
  GetFolder()->Remove(obj);
}

//______________________________________________________________________________
Int_t AliObjectLoader::AddToBoard(TObject* obj)
{
  //
  // Adds "obj" to the board
  //
  GetFolder()->Add(obj);
  return 0;
}

//______________________________________________________________________________
TObject* AliObjectLoader::Get() const
{
  //
  // Returns pointer to the object loader
  //
  return (GetFolder()) ? GetFolder()->FindObject(GetName()) : 0x0;
}



 AliObjectLoader.cxx:1
 AliObjectLoader.cxx:2
 AliObjectLoader.cxx:3
 AliObjectLoader.cxx:4
 AliObjectLoader.cxx:5
 AliObjectLoader.cxx:6
 AliObjectLoader.cxx:7
 AliObjectLoader.cxx:8
 AliObjectLoader.cxx:9
 AliObjectLoader.cxx:10
 AliObjectLoader.cxx:11
 AliObjectLoader.cxx:12
 AliObjectLoader.cxx:13
 AliObjectLoader.cxx:14
 AliObjectLoader.cxx:15
 AliObjectLoader.cxx:16
 AliObjectLoader.cxx:17
 AliObjectLoader.cxx:18
 AliObjectLoader.cxx:19
 AliObjectLoader.cxx:20
 AliObjectLoader.cxx:21
 AliObjectLoader.cxx:22
 AliObjectLoader.cxx:23
 AliObjectLoader.cxx:24
 AliObjectLoader.cxx:25
 AliObjectLoader.cxx:26
 AliObjectLoader.cxx:27
 AliObjectLoader.cxx:28
 AliObjectLoader.cxx:29
 AliObjectLoader.cxx:30
 AliObjectLoader.cxx:31
 AliObjectLoader.cxx:32
 AliObjectLoader.cxx:33
 AliObjectLoader.cxx:34
 AliObjectLoader.cxx:35
 AliObjectLoader.cxx:36
 AliObjectLoader.cxx:37
 AliObjectLoader.cxx:38
 AliObjectLoader.cxx:39
 AliObjectLoader.cxx:40
 AliObjectLoader.cxx:41
 AliObjectLoader.cxx:42
 AliObjectLoader.cxx:43
 AliObjectLoader.cxx:44
 AliObjectLoader.cxx:45
 AliObjectLoader.cxx:46
 AliObjectLoader.cxx:47
 AliObjectLoader.cxx:48
 AliObjectLoader.cxx:49
 AliObjectLoader.cxx:50
 AliObjectLoader.cxx:51
 AliObjectLoader.cxx:52
 AliObjectLoader.cxx:53
 AliObjectLoader.cxx:54
 AliObjectLoader.cxx:55
 AliObjectLoader.cxx:56
 AliObjectLoader.cxx:57
 AliObjectLoader.cxx:58
 AliObjectLoader.cxx:59
 AliObjectLoader.cxx:60
 AliObjectLoader.cxx:61
 AliObjectLoader.cxx:62
 AliObjectLoader.cxx:63
 AliObjectLoader.cxx:64
 AliObjectLoader.cxx:65
 AliObjectLoader.cxx:66
 AliObjectLoader.cxx:67
 AliObjectLoader.cxx:68
 AliObjectLoader.cxx:69
 AliObjectLoader.cxx:70
 AliObjectLoader.cxx:71
 AliObjectLoader.cxx:72
 AliObjectLoader.cxx:73
 AliObjectLoader.cxx:74
 AliObjectLoader.cxx:75
 AliObjectLoader.cxx:76
 AliObjectLoader.cxx:77
 AliObjectLoader.cxx:78
 AliObjectLoader.cxx:79
 AliObjectLoader.cxx:80
 AliObjectLoader.cxx:81
 AliObjectLoader.cxx:82
 AliObjectLoader.cxx:83
 AliObjectLoader.cxx:84
 AliObjectLoader.cxx:85
 AliObjectLoader.cxx:86
 AliObjectLoader.cxx:87
 AliObjectLoader.cxx:88