12#ifndef ROOT_TNotifyLink
13#define ROOT_TNotifyLink
71 current->fPrevious =
nullptr;
72 current->fNext =
nullptr;
81 template <
class Chain>
86 fNext = chain.GetNotify();
87 chain.SetNotify(
this);
89 next->fPrevious =
this;
99 template <
class Chain>
104 if (chain.GetNotify() ==
this) {
105 R__ASSERT(
fPrevious ==
nullptr &&
"The TNotifyLink head node should not have a previous element.");
106 chain.SetNotify(
fNext);
#define ClassDefOverride(name, id)
#define R__ASSERT(e)
Checks condition e and reports a fatal error if it's false.
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
TNotifyLinkBase * fPrevious
Previous node in a TChain's list of subscribers to its notification.
TObject * fNext
Next node in a TChain's list of subscribers.
void PrependLink(Chain &chain)
Set this link as the head of the chain's list of notify subscribers.
TObject * GetNext() const
void RemoveLink(Chain &chain)
Remove this link from a chain's list of notify subscribers.
void Clear(Option_t *="") override
A node in a doubly linked list of subscribers to TChain notifications.
Bool_t Notify() override
Call Notify on our subscriber and propagate the call to the next link.
TNotifyLink(Type *subscriber)
Mother of all ROOT objects.
virtual Bool_t Notify()
This method must be overridden to handle object notification (the base implementation is no-op).
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.