17 #include "TDirectory.h"
72 ((TH1*)
fObject)->SetDirectory(0);
110 const char* objname = 0;
115 slot->
SetPar(
"ObjectProxy::ObjName", objname);
117 if ((dir==0) || (
fObject==0))
return;
121 if (
fObject->InheritsFrom(TH1::Class())) {
123 TDirectory* olddir = h1->GetDirectory();
125 h1->SetDirectory(olddir);
133 const char* objname = slot->
GetPar(
"ObjectProxy::ObjName");
134 if ((objname==0) || (dir==0))
return;
165 return (cl!=0) && cl->InheritsFrom(TObject::Class());
176 ((TH1*)
fObject)->SetDirectory(0);
193 if (obj==0)
return 0;
195 Long_t sz = obj->IsA()->Size();
197 if (obj->InheritsFrom(TH1::Class())) {
198 TH1* histo =
dynamic_cast<TH1*
> (obj);
199 Int_t nbins = histo->GetNbinsX()+2;
200 if (histo->GetDimension()>1)
201 nbins = nbins*(histo->GetNbinsY()+2);
202 if (histo->GetDimension()>2)
203 nbins = nbins * (histo->GetNbinsZ()+2);
205 if (strchr(histo->ClassName(),
'S')!=0) binsize =
sizeof(Short_t);
else
206 if (strchr(histo->ClassName(),
'D')!=0) binsize =
sizeof(Double_t);
else
207 if (strchr(histo->ClassName(),
'F')!=0) binsize =
sizeof(Float_t);
else
208 if (strchr(histo->ClassName(),
'I')!=0) binsize =
sizeof(Int_t);
else
209 if (strchr(histo->ClassName(),
'C')!=0) binsize =
sizeof(Char_t);
210 sz += binsize * nbins;
212 if (obj->InheritsFrom(TTree::Class())) {
213 TTree* t = (TTree*) obj;
214 sz += t->GetZipBytes();
216 if (obj->InheritsFrom(TGo4Picture::Class())) {
virtual Bool_t IsAcceptObject(TClass *cl)
void UnregisterObject(TObject *obj, TGo4Slot *slot)
virtual Bool_t CanGetObject() const
virtual void ReadData(TGo4Slot *slot, TDirectory *dir)
virtual const char * GetContainedClassName()
virtual Bool_t GetObject(TObject *&obj, Bool_t &owner) const
const char * GetPar(const char *name) const
static Long_t DefineObjectSize(TObject *obj)
virtual const char * GetObjectName() const
virtual Bool_t AssignObject(TGo4Slot *slot, TObject *obj, Bool_t owner)
void RegisterObjectWith(TObject *obj, TGo4Slot *slot)
virtual const char * GetContainedObjectInfo()
virtual void Initialize(TGo4Slot *slot)
virtual TClass * GetObjectClass() const
virtual void Finalize(TGo4Slot *slot)
virtual Int_t GetObjectSizeInfo()
virtual const char * GetObjectClassName() const
virtual Int_t GetObjectKind()
virtual TGo4Access * ProvideAccess(const char *name)
virtual void WriteData(TGo4Slot *slot, TDirectory *dir, Bool_t onlyobjs)
void ForwardEvent(TGo4Slot *source, Int_t id, void *param=0)
virtual Int_t GetObjectSizeInfo()
virtual TObject * GetAssignedObject()
virtual TGo4ObjectManager * GetOM() const
void SetPar(const char *name, const char *value)
TGo4ObjectAccess(TObject *obj)
virtual Bool_t RemoveRegisteredObject(TObject *obj)
virtual ~TGo4ObjectProxy()