File indexing completed on 2025-01-18 10:12:12
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TLeafO
0013 #define ROOT_TLeafO
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024 #include "TLeaf.h"
0025
0026 class TLeafO : public TLeaf {
0027
0028 protected:
0029 bool fMinimum;
0030 bool fMaximum;
0031 bool *fValue;
0032 bool **fPointer;
0033
0034 public:
0035 TLeafO();
0036 TLeafO(TBranch *parent, const char *name, const char *type);
0037 ~TLeafO() override;
0038
0039 void Export(TClonesArray *list, Int_t n) override;
0040 void FillBasket(TBuffer &b) override;
0041 DeserializeType GetDeserializeType() const override { return DeserializeType::kZeroCopy; }
0042 Int_t GetMaximum() const override {return fMaximum;}
0043 Int_t GetMinimum() const override {return fMinimum;}
0044 const char *GetTypeName() const override;
0045 Double_t GetValue(Int_t i=0) const override;
0046 void *GetValuePointer() const override { return fValue; }
0047 bool IncludeRange(TLeaf *) override;
0048 void Import(TClonesArray *list, Int_t n) override;
0049 void PrintValue(Int_t i=0) const override;
0050 void ReadBasket(TBuffer &b) override;
0051 void ReadBasketExport(TBuffer &b, TClonesArray *list, Int_t n) override;
0052 void ReadValue(std::istream& s, Char_t delim = ' ') override;
0053 void SetAddress(void *add=nullptr) override;
0054 virtual void SetMaximum(bool max) { fMaximum = max; }
0055 virtual void SetMinimum(bool min) { fMinimum = min; }
0056
0057
0058
0059 bool ReadBasketFast(TBuffer&, Long64_t) override { return true; }
0060
0061 ClassDefOverride(TLeafO,1);
0062 };
0063
0064 inline Double_t TLeafO::GetValue(Int_t i) const { return fValue[i]; }
0065
0066 #endif