98 if (variables.Length() == 0)
104 if (variables[i] ==
':'
105 && !( (i > 0 && variables[i - 1] ==
':')
106 || (i + 1 < variables.Length() && variables[i + 1] ==
':') ) ) {
133 name.ReplaceAll(
" ",
"");
135 if (
name.Length() != 0 &&
name[0] ==
'+') {
147 if (
char *
p = (
char*)strstr(
name.Data(),
"(")) {
150 char* end =
p + strlen(
p);
154 while (
p < end && *
p !=
',' && *
p !=
')')
162 Error(
"ParseName",
"expected \')\'");
171 Error(
"ParseName",
"impossible value for *q!");
188 char* gg = (
char*)strstr(
fExp.
Data(),
">>");
202 Error(
"ParseVarExp",
"error parsing variable expression");
321 return "TProofDrawEventList";
323 return "TProofDrawEntryList";
325 return "TProofDrawProfile";
327 return "TProofDrawProfile2D";
329 return "TProofDrawGraph";
331 return "TProofDrawPolyMarker3D";
333 return "TProofDrawListOfGraphs";
337 return "TProofDrawHist";
339 return "TProofDrawListOfPolyMarkers3D";
355 Error(
"GetParameter",
"wrong arguments");
398 Error(
"GetVarExp",
"wrong Parameters %d; fDimension = %d", num,
fDimension);
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
void ToLower()
Change string to lower-case.
const char * Data() const
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
A class that parses all parameters for TTree::Draw().
Bool_t fAdd
Values should be added to an existing object.
TString GetObjectTitle() const
Returns the desired plot title.
Double_t GetParameter(int num) const
returns num-th parameter from brackets in the expression in case of an error (wrong number) returns 0...
static Int_t GetMaxDimension()
return fgMaxDimension (cannot be inline)
Double_t GetIfSpecified(Int_t num, Double_t def) const
Bool_t fOptionSame
If option contained "same".
TString GetProofSelectorName() const
Returns appropriate TSelector class name for proof for the object that is to be drawn assumes that Pa...
Bool_t ParseVarExp()
Split variables and parse name and parameters in brackets.
TString fOption
Draw options.
Bool_t ParseOption()
Check if options contain some data important for choosing the type of the drawn object.
Bool_t fShouldDraw
If to draw the plot.
Bool_t SplitVariables(TString variables)
Parse expression [var1 [:var2 [:var3] ...]], number of variables cannot be greater than fgMaxDimensio...
EOutputType fOutputType
Type of the output.
~TTreeDrawArgsParser() override
Destructor.
Int_t fNoParameters
If dimensions of the plot was specified.
Bool_t Parse(const char *varexp, const char *selection, Option_t *option)
Parses parameters from TTree::Draw().
Int_t fDimension
Dimension of the histogram/plot.
TTreeDrawArgsParser::EOutputType DefineType()
Put the type of the draw result into fOutputType and return it.
TObject * fOriginal
Original plot (if it is to be reused)
TString fSelection
Selection expression.
static Int_t fgMaxDimension
= 4
TString fVarExp[4]
Variable expression 0 - X, 1 - Y, 2 - Z, 3 - W If dimension < fgMaxDimension then some Expressions ar...
Bool_t fDrawProfile
True if the options contain :"prof".
TTreeDrawArgsParser()
Constructor - cleans all the class variables.
Bool_t fParameterGiven[9]
True if the parameter was given, otherwise false.
Bool_t ParseName(TString name)
Syntax:
Bool_t fEntryList
If fill a TEntryList.
Double_t fParameters[9]
Parameters in brackets.
void ClearPrevious()
Resets all the variables of the class.
static Int_t fgMaxParameters
= 9
Bool_t IsSpecified(int num) const
returns kTRUE if the num-th parameter was specified otherwise returns fFALSE in case of an error (wro...
TString fExp
Complete variable expression.
TString fName
Histogram's/plot's name.
TString GetVarExp() const
Returns the variable string, i.e. [var1[:var2[:var2[:var4]]]].