![]() |
|
|||
File indexing completed on 2025-07-09 08:46:12
0001 // @(#)root/net:$Id$ 0002 // Author: A. Peters, G. Ganis 7/2/2007 0003 0004 /************************************************************************* 0005 * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * 0006 * All rights reserved. * 0007 * * 0008 * For the licensing terms see $ROOTSYS/LICENSE. * 0009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 0010 *************************************************************************/ 0011 0012 #ifndef ROOT_TFileStager 0013 #define ROOT_TFileStager 0014 0015 ////////////////////////////////////////////////////////////////////////// 0016 // // 0017 // TFileStager // 0018 // // 0019 // Abstract base class defining an interface to a stager. // 0020 // // 0021 // To open a connection to a stager use the static method // 0022 // Open("<stager>"), where <stager> contains a keyword allowing to load // 0023 // the relevant plug-in, e.g. // 0024 // TFileStager::Open("root://lxb6064.cern.ch") // 0025 // will load TXNetFileStager and initialize it for the redirector at // 0026 // lxb6046.cern.ch . // 0027 // // 0028 ////////////////////////////////////////////////////////////////////////// 0029 0030 #include "TNamed.h" 0031 #include "TString.h" 0032 0033 class TCollection; 0034 class TFileCollection; 0035 0036 class TFileStager : public TNamed { 0037 0038 public: 0039 TFileStager(const char *stager) : TNamed(stager, stager) { } 0040 virtual ~TFileStager() { } 0041 0042 virtual TList *GetStaged(TCollection *pathlist); 0043 virtual Bool_t IsStaged(const char *); 0044 virtual Int_t Locate(const char *u, TString &f); 0045 virtual Int_t LocateCollection(TFileCollection *fc, Bool_t addDummyUrl = kFALSE); 0046 virtual Bool_t Matches(const char *s) { return ((s && (fName == s)) ? kTRUE : kFALSE); } 0047 virtual Bool_t Stage(const char *, Option_t * = nullptr) { return kTRUE; } 0048 virtual Bool_t Stage(TCollection *pathlist, Option_t *opt = nullptr); 0049 0050 virtual Bool_t IsValid() const { return kTRUE; } 0051 0052 // Extract the path name from supported object types 0053 static TString GetPathName(TObject *o); 0054 0055 //--- Load desired plugin 0056 static TFileStager *Open(const char *stager); 0057 0058 ClassDefOverride(TFileStager,0) // ABC defining interface to a stager 0059 }; 0060 0061 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |