Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-24 09:25:28

0001 // @(#)root/net:$Id$
0002 // Author: Jan Fiete Grosse-Oetringhaus   28/9/2004
0003 // Jancurova.lucia@cern.ch Slovakia  29/9/2008
0004 
0005 /*************************************************************************
0006  * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers.               *
0007  * All rights reserved.                                                  *
0008  *                                                                       *
0009  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0010  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0011  *************************************************************************/
0012 
0013 #ifndef ROOT_TGridJDL
0014 #define ROOT_TGridJDL
0015 
0016 //////////////////////////////////////////////////////////////////////////
0017 //                                                                      //
0018 // TGridJDL                                                             //
0019 //                                                                      //
0020 // Abstract base class to generate JDL files for job submission to the  //
0021 // Grid.                                                                //
0022 //                                                                      //
0023 // Related classes are TGLiteJDL                                        //
0024 //                              .                                       //
0025 //////////////////////////////////////////////////////////////////////////
0026 
0027 #include "TObject.h"
0028 #include "TString.h"
0029 #include "TMap.h"
0030 
0031 namespace ROOT::Deprecated {
0032 
0033 class TGridJDL : public TObject {
0034 protected:
0035    TMap    fMap;              // stores the key, value pairs of the JDL
0036    TMap    fDescriptionMap;   // stores the key, value pairs of the JDL
0037 public:
0038    TGridJDL() : fMap(), fDescriptionMap() { }
0039    virtual ~TGridJDL();
0040 
0041    void             SetValue(const char *key, const char *value);
0042    const char      *GetValue(const char *key);
0043    void             SetDescription(const char *key, const char *description);
0044    const char      *GetDescription(const char *key);
0045    TString          AddQuotes(const char *value);
0046    void             AddToSet(const char *key, const char *value);
0047    void             AddToSetDescription(const char *key, const char *description);
0048    virtual TString  Generate();
0049    void             Clear(const Option_t* = "") override;
0050 
0051    virtual void SetExecutable(const char *value=nullptr, const char *description=nullptr) = 0;
0052    virtual void SetArguments(const char *value=nullptr, const char *description=nullptr) = 0;
0053    virtual void SetEMail(const char *value=nullptr, const char *description=nullptr) = 0;
0054    virtual void SetOutputDirectory(const char *value=nullptr, const char *description=nullptr) = 0;
0055    virtual void SetPrice(UInt_t price=1, const char *description=nullptr) = 0;
0056    virtual void SetTTL(UInt_t ttl=72000, const char *description=nullptr) = 0;
0057    virtual void SetJobTag(const char *jobtag=nullptr, const char *description=nullptr) = 0;
0058    virtual void SetInputDataListFormat(const char *format="xml-single", const char *description=nullptr) = 0;
0059    virtual void SetInputDataList(const char *list="collection.xml", const char *description=nullptr) = 0;
0060 
0061    virtual void SetSplitMode(const char *value, UInt_t maxnumberofinputfiles=0,
0062                              UInt_t maxinputfilesize=0, const char *d1=nullptr,
0063                              const char *d2=nullptr, const char *d3=nullptr) = 0;
0064    virtual void SetSplitArguments(const char *splitarguments=nullptr, const char *description=nullptr) = 0;
0065    virtual void SetValidationCommand(const char *value, const char *description=nullptr) = 0;
0066 
0067    virtual void AddToInputSandbox(const char *value=nullptr, const char *description=nullptr) = 0;
0068    virtual void AddToOutputSandbox(const char *value=nullptr, const char *description=nullptr) = 0;
0069    virtual void AddToInputData(const char *value=nullptr, const char *description=nullptr) = 0;
0070    virtual void AddToInputDataCollection(const char *value=nullptr, const char *description=nullptr) = 0;
0071    virtual void AddToRequirements(const char *value=nullptr, const char *description=nullptr) = 0;
0072    virtual void AddToPackages(const char *name="AliRoot", const char *version="default",
0073                               const char *type="VO_ALICE", const char *description=nullptr) = 0;
0074    virtual void AddToOutputArchive(const char *value=nullptr, const char *description=nullptr) = 0;
0075 
0076    ClassDefOverride(TGridJDL,1)  // ABC defining interface JDL generator
0077 };
0078 
0079 } // namespace ROOT::Deprecated
0080 
0081 using TGridJDL R__DEPRECATED(6, 42, "TGridJDL is expected to be unused and thus deprecated") =
0082    ROOT::Deprecated::TGridJDL;
0083 
0084 #endif