TDSet


class description - source file - inheritance tree

class TDSet : public TNamed


    public:
TDSet TDSet() TDSet TDSet(const char* type, const char* objname = "*", const char* dir = "/") TDSet TDSet(const TDSet&) virtual void ~TDSet() virtual void Add(const char* file, const char* objname = "0", const char* dir = "0", Long64_t first = 0, Long64_t num = -1) virtual void Add(TDSet* set) virtual void AddFriend(TDSet* friendset) static TClass* Class() TDSetElement* Current() const const char* GetDirectory() const static Int_t GetEntries(Bool_t isTree, const char* filename, const char* path, const char* objname, Long64_t& entries) virtual TList* GetListOfElements() const const char* GetObjName() const const char* GetType() const virtual TClass* IsA() const virtual Bool_t IsTree() const virtual Bool_t IsValid() const virtual TDSetElement* Next() virtual void Print(Option_t* option) const Int_t Process(const char* selector, Long64_t nentries = -1, Long64_t first = 0, TEventList* evl = 0) virtual void Reset() void SetDirectory(const char* dir) void SetObjName(const char* objname) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
TString fObjName name of objects to be analyzed (e.g. TTree name) TList* fElements -> list of TDSetElements Bool_t fIsTree true if type is a TTree (or TTree derived) TIter* fIterator ! iterator on fElements protected:
TDSetElement* fCurrent ! current element


See also

TDSetProxy

Class Description

                                                                      
 TDSet                                                                
                                                                      
 This class implements a data set to be used for PROOF processing.    
 The TDSet defines the class of which objects will be processed,      
 the directory in the file where the objects of that type can be      
 found and the list of files to be processed. The files can be        
 specified as logical file names (LFN's) or as physical file names    
 (PFN's). In case of LFN's the resolution to PFN's will be done       
 according to the currently active GRID interface.                    
 Examples:                                                            
   TDSet treeset("TTree", "AOD");                                     
   treeset.Add("lfn:/alien.cern.ch/alice/prod2002/file1");            
   ...                                                                
   treeset.AddFriend(friendset);                                      
                                                                      
 or                                                                   
                                                                      
   TDSet objset("MyEvent", "*", "/events");                           
   objset.Add("root://cms.cern.ch/user/prod2002/hprod_1.root");       
   ...                                                                
   objset.Add(set2003);                                               
                                                                      
 Validity of file names will only be checked at processing time       
 (typically on the PROOF master server), not at creation time.        
                                                                      


TDSet()
 Default ctor.

TDSet(const char *type, const char *objname, const char *dir)
 Create a TDSet object. The "type" defines the class of which objects
 will be processed. The optional "objname" argument specifies the
 name of the objects of the specified class (the name is mandatory
 if the type inherits from a TTree). If the "objname" is not given all
 objects of the class found in the specified directory are processed.
 The "dir" argument specifies in which directory the objects are
 to be found, the top level directory ("/") is the default.
 Directories can be specified using wildcards, e.g. "*" or "/*"
 means to look in all top level directories, "/dir/*" in all
 directories under "/dir", and "/*/*" to look in all directories
 two levels deep.

~TDSet()
 Cleanup.

Int_t Process(const char *selector, Long64_t nentries, Long64_t first, TEventList *evl)
 Process TDSet on currently active PROOF session.
 Returns -1 in case of error, 0 otherwise.

void Print(const Option_t *option) const
 Print TDSet basic or full data.

void SetObjName(const char *objname)
 Set/change object name.

void SetDirectory(const char *dir)
 Set/change directory.

void Add(const char *file, const char *objname, const char *dir, Long64_t first, Long64_t num)
 Add file to list of files to be analyzed. Optionally with the
 objname and dir arguments the default, TDSet wide, objname and
 dir can be overridden.

void Add(TDSet *set)
 Add specified data set to the this set.

void AddFriend(TDSet *friendset)
 Add friend dataset to this set. Only possible if the TDSet type is
 a TTree or derived class.

void Reset()
 Reset or initialize access to the elements.

TDSetElement* Next()
 Returns next TDSetElement.

Int_t GetEntries(Bool_t isTree, const char *filename, const char *path, const char *objname, Long64_t &entries)



Inline Functions


          const char* GetType() const
          const char* GetObjName() const
          const char* GetDirectory() const
               Bool_t IsTree() const
               Bool_t IsValid() const
               TList* GetListOfElements() const
        TDSetElement* Current() const
              TClass* Class()
              TClass* IsA() const
                 void ShowMembers(TMemberInspector& insp, char* parent)
                 void Streamer(TBuffer& b)
                 void StreamerNVirtual(TBuffer& b)
                TDSet TDSet(const TDSet&)


Author: Fons Rademakers 11/01/02
Last update: root/base:$Name: $:$Id: TDSet.cxx,v 1.13 2002/09/16 10:57:57 rdm Exp $
Copyright (C) 1995-2001, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.