Warning, file /include/root/TTreeDrawArgsParser.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TTreeDrawArgsParser
0013 #define ROOT_TTreeDrawArgsParser
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024 #include "TObject.h"
0025
0026 #include "TString.h"
0027
0028
0029 class TTreeDrawArgsParser : public TObject {
0030
0031 public:
0032 enum EOutputType {
0033 kUNKNOWN,
0034 kEVENTLIST,
0035 kENTRYLIST,
0036 kPROFILE,
0037 kPROFILE2D,
0038 kGRAPH,
0039 kPOLYMARKER3D,
0040 kHISTOGRAM1D,
0041 kHISTOGRAM2D,
0042 kLISTOFGRAPHS,
0043 kLISTOFPOLYMARKERS3D,
0044 kHISTOGRAM3D
0045 };
0046
0047 static Int_t fgMaxDimension;
0048 static Int_t fgMaxParameters;
0049
0050 protected:
0051 TString fExp;
0052 TString fSelection;
0053 TString fOption;
0054
0055 Int_t fDimension;
0056 TString fVarExp[4];
0057
0058
0059
0060 bool fAdd;
0061 TString fName;
0062
0063 Int_t fNoParameters;
0064 bool fParameterGiven[9];
0065 Double_t fParameters[9];
0066
0067 bool fShouldDraw;
0068 bool fOptionSame;
0069 bool fEntryList;
0070 TObject *fOriginal;
0071 bool fDrawProfile;
0072 EOutputType fOutputType;
0073
0074 void ClearPrevious();
0075 TTreeDrawArgsParser::EOutputType DefineType();
0076 bool SplitVariables(TString variables);
0077 bool ParseName(TString name);
0078 bool ParseOption();
0079 bool ParseVarExp();
0080
0081 public:
0082 TTreeDrawArgsParser();
0083 ~TTreeDrawArgsParser() override;
0084
0085 bool Parse(const char *varexp, const char *selection, Option_t *option);
0086 bool GetAdd() const { return fAdd; }
0087 Int_t GetDimension() const { return fDimension; }
0088 bool GetShouldDraw() const { return fShouldDraw; }
0089 TString const& GetExp() const { return fExp; }
0090 Double_t GetIfSpecified(Int_t num, Double_t def) const;
0091 Int_t GetNoParameters() const { return fNoParameters; }
0092 Double_t GetParameter(int num) const;
0093 TString GetProofSelectorName() const;
0094 TString const& GetObjectName() const { return fName; }
0095 TString GetObjectTitle() const;
0096 bool GetOptionSame() const { return fOptionSame; }
0097 TObject *GetOriginal() const { return fOriginal; }
0098 TString const& GetSelection() const { return fSelection; }
0099 TString GetVarExp(Int_t num) const;
0100 TString GetVarExp() const;
0101 bool IsSpecified(int num) const;
0102 void SetObjectName(const char *s) { fName = s; }
0103 void SetOriginal(TObject *o) { fOriginal = o; }
0104 static Int_t GetMaxDimension();
0105
0106 ClassDefOverride(TTreeDrawArgsParser,0);
0107 };
0108
0109 #endif
0110