34 fIter = hs->GetHists()->MakeIterator();
58 const char *
name()
override
63 const char *
info()
override
107 return fHS ?
fHS->ClassName() :
nullptr;
133 const char *objname =
nullptr;
135 objname =
fHS->GetName();
138 slot->
SetPar(
"HStackProxy::StackName", objname);
140 if (!dir || !
fHS)
return;
149 const char *objname = slot->
GetPar(
"HStackProxy::StackName");
150 if (!objname || !dir)
return;
159 return cl && cl->InheritsFrom(THStack::Class());
167 fHS =
dynamic_cast<THStack*
> (obj);
170 if (!
fHS && obj && owner)
delete obj;
176 return fHS !=
nullptr;
186 if (!hs)
return nullptr;
188 return std::make_unique<TGo4ObjectAccess>(hs);
190 TObject *obj = hs->GetHists()->FindObject(name);
192 return obj ? std::make_unique<TGo4ObjectAccess>(obj) :
nullptr;
const char * name() override
const char * GetClassName() override
TGo4LevelIter * subiterator() override
virtual ~TGo4HStackLevelIter()
TGo4HStackLevelIter(THStack *hs)
const char * info() override
Bool_t isfolder() override
Bool_t IsAcceptObject(TClass *cl) const override
void WriteData(TGo4Slot *slot, TDirectory *dir, Bool_t onlyobjs) override
TObject * GetAssignedObject() override
const char * GetContainedClassName() const override
void Finalize(TGo4Slot *slot) override
static TGo4LevelIter * ProduceIter(THStack *hs)
static std::unique_ptr< TGo4Access > CreateAccess(THStack *hs, const char *name)
virtual ~TGo4HStackProxy()
Bool_t RemoveRegisteredObject(TObject *obj) override
void ReadData(TGo4Slot *slot, TDirectory *dir) override
void Initialize(TGo4Slot *slot) override
Bool_t AssignObject(TGo4Slot *slot, TObject *obj, Bool_t owner) override
Int_t GetObjectKind() const override
void RegisterObjectWith(TObject *obj, TGo4Slot *slot)
void UnregisterObject(TObject *obj, TGo4Slot *slot)
virtual TGo4ObjectManager * GetOM() const
void ForwardEvent(TGo4Slot *source, Int_t id, void *param=nullptr)
void SetPar(const char *name, const char *value)
const char * GetPar(const char *name) const