Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TProofMonSender.h
Go to the documentation of this file.
1// @(#)root/proofplayer:$Id$
2// Author: G.Ganis July 2011
3
4/*************************************************************************
5 * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TProofMonSender
13#define ROOT_TProofMonSender
14
15//////////////////////////////////////////////////////////////////////////
16// //
17// TProofMonSender //
18// //
19// Provides the interface for PROOF monitoring to different writers. //
20// Allows to decouple the information sent from the backend. //
21// //
22//////////////////////////////////////////////////////////////////////////
23
24#include "TNamed.h"
25
26class TDSet;
27class TList;
28class TPerfStat;
29
30class TProofMonSender : public TNamed {
31
32protected:
33 Int_t fSummaryVrs; // Version of the summary 'table'
34 Int_t fDataSetInfoVrs; // Version of the dataset info 'table'
35 Int_t fFileInfoVrs; // Version of the file info 'table'
36 enum EConfigBits { // TProofMonSender status/config bits
37 kSendSummary = BIT(15), // Toggle sending of summary
38 kSendDataSetInfo = BIT(16), // Toggle sending of dataset info
39 kSendFileInfo = BIT(17) // Toggle sending of files info
40 };
41
42 // Auxilliary class describing dataset multiplets
43 class TDSetPlet : public TNamed {
44 public:
48 TDSetPlet(const char *name, TDSet *ds = 0) :
49 TNamed(name, ""), fFiles(0), fMissing(0), fDSet(ds) { }
50 ~TDSetPlet() override { }
51 };
52
53public:
54
55 TProofMonSender(const char *n = "Abstract",
56 const char *t = "ProofMonSender") : TNamed(n,t),
62 ~TProofMonSender() override { }
63
64 // This changes the send control options
65 Int_t SetSendOptions(const char *);
66
67 // Object validity
69
70 // Summary record
71 virtual Int_t SendSummary(TList *, const char *) = 0;
72
73 // Information about the dataset(s) processed
74 virtual Int_t SendDataSetInfo(TDSet *, TList *, const char *, const char *) = 0;
75
76 // Detailed information about files
77 virtual Int_t SendFileInfo(TDSet *, TList *, const char *, const char *) = 0;
78
79 ClassDefOverride(TProofMonSender,0); // Interface for PROOF monitoring
80};
81
82#endif
int Int_t
Definition RtypesCore.h:45
constexpr Bool_t kFALSE
Definition RtypesCore.h:94
constexpr Bool_t kTRUE
Definition RtypesCore.h:93
#define BIT(n)
Definition Rtypes.h:90
#define ClassDefOverride(name, id)
Definition Rtypes.h:346
char name[80]
Definition TGX11.cxx:110
This class implements a data set to be used for PROOF processing.
Definition TDSet.h:153
A doubly linked list.
Definition TList.h:38
The TNamed class is the base class for all named ROOT classes.
Definition TNamed.h:29
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
Definition TObject.h:199
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
Definition TObject.cxx:798
void ResetBit(UInt_t f)
Definition TObject.h:198
@ kInvalidObject
if object ctor succeeded but object should not be used
Definition TObject.h:72
TDSetPlet(const char *name, TDSet *ds=0)
Provides the interface for PROOF monitoring to different writers.
TProofMonSender(const char *n="Abstract", const char *t="ProofMonSender")
virtual Int_t SendFileInfo(TDSet *, TList *, const char *, const char *)=0
virtual Int_t SendDataSetInfo(TDSet *, TList *, const char *, const char *)=0
Int_t SetSendOptions(const char *)
Parse send options from string 'sendopts'.
virtual Int_t SendSummary(TList *, const char *)=0
~TProofMonSender() override
Bool_t IsValid() const
const Int_t n
Definition legend1.C:16