12#ifndef ROOT_TParameter
13#define ROOT_TParameter
34template <
class AParamType>
41#if defined(__clang__) && __clang_major__ < 20
42#pragma clang diagnostic push
43#pragma clang diagnostic ignored "-Wshadow"
46#if defined(__clang__) && __clang_major__ < 20
47#pragma clang diagnostic pop
108 if (
this == obj)
return 0;
131template <
class AParamType>
141 if (fVal !=
c->GetVal()) ResetBit(kIsConst);
145 }
else if (TestBit(
kMax)) {
147 if (
c->GetVal() > fVal) fVal =
c->GetVal();
148 }
else if (TestBit(kMin)) {
150 if (
c->GetVal() < fVal) fVal =
c->GetVal();
151 }
else if (TestBit(kLast)) {
154 }
else if (!TestBit(kFirst)) {
177 if (fVal != (
Bool_t)
c->GetVal()) ResetBit(kIsConst);
181 }
else if (TestBit(kLast)) {
184 }
else if (!TestBit(kFirst) || TestBit(
kMax)) {
bool Bool_t
Boolean (0=false, 1=true) (bool)
unsigned long ULong_t
Unsigned long integer 4 bytes (unsigned long). Size depends on architecture.
const char Option_t
Option string (const char)
#define ClassDefOverride(name, id)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Buffer base class used for serializing objects.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Collection abstract base class.
const char * GetName() const override
Returns name of object.
Mother of all ROOT objects.
virtual const char * GetName() const
Returns name of object.
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
Named parameter, streamable and storable.
void Streamer(TBuffer &) override
Stream an object of class TObject.
ULong_t Hash() const override
Return hash value for this object.
TParameter(const char *name, const AParamType &val, char mergemode)
const char * GetName() const override
Returns name of object.
virtual Int_t Merge(TCollection *in)
TClass * IsA() const override
void ls(Option_t *) const override
The ls function lists the contents of a class on stdout.
void Print(Option_t *) const override
This method must be overridden when a class wants to print itself.
void SetMergeMode(char mergemode='+')
void SetVal(const AParamType &val)
const AParamType & GetVal() const
Int_t Compare(const TObject *obj) const override
Compare abstract method.
TParameter(const char *name, const AParamType &val)
Bool_t IsSortable() const override
static void IndentLevel()
Functions used by ls() to indent an object hierarchy.
int CompareTo(const char *cs, ECaseCompare cmp=kExact) const
Compare a string to char *cs2.
UInt_t Hash(ECaseCompare cmp=kExact) const
Return hash value.
void CallRecursiveRemoveIfNeeded(TObject &obj)
call RecursiveRemove for obj if gROOT is valid and obj.TestBit(kMustCleanup) is true.