TGridJDL.h

Go to the documentation of this file.
00001 // @(#)root/net:$Id: TGridJDL.h 26013 2008-10-29 16:19:13Z brun $
00002 // Author: Jan Fiete Grosse-Oetringhaus   28/9/2004
00003 // Jancurova.lucia@cern.ch Slovakia  29/9/2008
00004 
00005 /*************************************************************************
00006  * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers.               *
00007  * All rights reserved.                                                  *
00008  *                                                                       *
00009  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00010  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00011  *************************************************************************/
00012 
00013 #ifndef ROOT_TGridJDL
00014 #define ROOT_TGridJDL
00015 
00016 //////////////////////////////////////////////////////////////////////////
00017 //                                                                      //
00018 // TGridJDL                                                             //
00019 //                                                                      //
00020 // Abstract base class to generate JDL files for job submission to the  //
00021 // Grid.                                                                //
00022 //                                                                      //
00023 // Related classes are TGLiteJDL                                        //
00024 //                              .                                       //
00025 //////////////////////////////////////////////////////////////////////////
00026 
00027 #ifndef ROOT_TObject
00028 #include "TObject.h"
00029 #endif
00030 #ifndef ROOT_TString
00031 #include "TString.h"
00032 #endif
00033 #ifndef ROOT_TMap
00034 #include "TMap.h"
00035 #endif
00036 
00037 
00038 class TGridJDL : public TObject {
00039 protected:
00040    TMap    fMap;              // stores the key, value pairs of the JDL
00041    TMap    fDescriptionMap;   // stores the key, value pairs of the JDL
00042 public:
00043    TGridJDL() : fMap(), fDescriptionMap() { }
00044    virtual ~TGridJDL();
00045 
00046    void             SetValue(const char *key, const char *value);
00047    const char      *GetValue(const char *key);
00048    void             SetDescription(const char *key, const char *description);
00049    const char      *GetDescription(const char *key);
00050    TString          AddQuotes(const char *value);
00051    void             AddToSet(const char *key, const char *value);
00052    void             AddToSetDescription(const char *key, const char *description);
00053    virtual TString  Generate();
00054    virtual void     Clear(const Option_t* = 0);
00055 
00056    virtual void SetExecutable(const char *value=0, const char *description=0) = 0;
00057    virtual void SetArguments(const char *value=0, const char *description=0) = 0;
00058    virtual void SetEMail(const char *value=0, const char *description=0) = 0;
00059    virtual void SetOutputDirectory(const char *value=0, const char *description=0) = 0;
00060    virtual void SetPrice(UInt_t price=1, const char *description=0) = 0;
00061    virtual void SetTTL(UInt_t ttl=72000, const char *description=0) = 0;
00062    virtual void SetJobTag(const char *jobtag=0, const char *description=0) = 0;
00063    virtual void SetInputDataListFormat(const char *format="xml-single", const char *description=0) = 0;
00064    virtual void SetInputDataList(const char *list="collection.xml", const char *description=0) = 0;
00065 
00066    virtual void SetSplitMode(const char *value, UInt_t maxnumberofinputfiles=0,
00067                              UInt_t maxinputfilesize=0, const char *d1=0,
00068                              const char *d2=0, const char *d3=0) = 0;
00069    virtual void SetSplitArguments(const char *splitarguments=0, const char *description=0) = 0;
00070    virtual void SetValidationCommand(const char *value, const char *description=0) = 0;
00071 
00072    virtual void AddToInputSandbox(const char *value=0, const char *description=0) = 0;
00073    virtual void AddToOutputSandbox(const char *value=0, const char *description=0) = 0;
00074    virtual void AddToInputData(const char *value=0, const char *description=0) = 0;
00075    virtual void AddToInputDataCollection(const char *value=0, const char *description=0) = 0;
00076    virtual void AddToRequirements(const char *value=0, const char *description=0) = 0;
00077    virtual void AddToPackages(const char *name="AliRoot", const char *version="default",
00078                               const char *type="VO_ALICE", const char *description=0) = 0;
00079    virtual void AddToOutputArchive(const char *value=0, const char *description=0) = 0;
00080 
00081    ClassDef(TGridJDL,1)  // ABC defining interface JDL generator
00082 };
00083 
00084 #endif

Generated on Tue Jul 5 14:26:57 2011 for ROOT_528-00b_version by  doxygen 1.5.1