Logo ROOT   6.16/01
Reference Guide
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 virtual ~TDSetPlet() { }
51 };
52
53public:
54
55 TProofMonSender(const char *n = "Abstract",
56 const char *t = "ProofMonSender") : TNamed(n,t),
62 virtual ~TProofMonSender() { }
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 ClassDef(TProofMonSender,0); // Interface for PROOF monitoring
80};
81
82#endif
int Int_t
Definition: RtypesCore.h:41
const Bool_t kFALSE
Definition: RtypesCore.h:88
bool Bool_t
Definition: RtypesCore.h:59
const Bool_t kTRUE
Definition: RtypesCore.h:87
#define ClassDef(name, id)
Definition: Rtypes.h:324
#define BIT(n)
Definition: Rtypes.h:82
This class implements a data set to be used for PROOF processing.
Definition: TDSet.h:153
A doubly linked list.
Definition: TList.h:44
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:172
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
Definition: TObject.cxx:694
void ResetBit(UInt_t f)
Definition: TObject.h:171
@ kInvalidObject
if object ctor succeeded but object should not be used
Definition: TObject.h:68
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 ~TProofMonSender()
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
Bool_t IsValid() const
const Int_t n
Definition: legend1.C:16