GSI Object Oriented Online Offline (Go4)  GO4-6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4CanvasProxy.h
Go to the documentation of this file.
1 // $Id: TGo4CanvasProxy.h 2627 2019-10-01 08:02:45Z linev $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef TGO4CANVASPROXY_H
15 #define TGO4CANVASPROXY_H
16 
17 #include "TGo4Proxy.h"
18 
19 class TCanvas;
20 
21 class TGo4CanvasProxy : public TGo4Proxy {
22  public:
24  TGo4CanvasProxy(TCanvas* c, Bool_t owner = kFALSE);
25  virtual ~TGo4CanvasProxy();
26 
27  virtual Bool_t HasSublevels() const { return fCanvas!=0; }
28  virtual Int_t GetObjectKind();
29  virtual const char* GetContainedClassName();
30 
31  virtual void Initialize(TGo4Slot* slot);
32  virtual void Finalize(TGo4Slot* slot);
33  virtual Bool_t RemoveRegisteredObject(TObject* obj);
34 
36  { return (fCanvas==0) ? 0 : ProduceIter(fCanvas); }
37 
38  virtual TGo4Access* ProvideAccess(const char* name)
39  { return CreateAccess(fCanvas, name); }
40 
41  virtual void WriteData(TGo4Slot* slot, TDirectory* dir, Bool_t onlyobjs);
42  virtual void ReadData(TGo4Slot* slot, TDirectory* dir);
43 
44  virtual Bool_t IsAcceptObject(TClass* cl);
45  virtual Bool_t AssignObject(TGo4Slot* slot, TObject* obj, Bool_t owner);
46  virtual TObject* GetAssignedObject();
47 
48  static TGo4Access* CreateAccess(TCanvas* canv, const char* name);
49  static TGo4LevelIter* ProduceIter(TCanvas* canv);
50 
51  protected:
52  TCanvas* fCanvas;
53  Bool_t fOwner;
54 
56 };
57 
58 
59 #endif
virtual void Initialize(TGo4Slot *slot)
virtual void ReadData(TGo4Slot *slot, TDirectory *dir)
virtual void Finalize(TGo4Slot *slot)
static TGo4Access * CreateAccess(TCanvas *canv, const char *name)
static TGo4LevelIter * ProduceIter(TCanvas *canv)
virtual Int_t GetObjectKind()
virtual ~TGo4CanvasProxy()
virtual void WriteData(TGo4Slot *slot, TDirectory *dir, Bool_t onlyobjs)
virtual Bool_t RemoveRegisteredObject(TObject *obj)
virtual TObject * GetAssignedObject()
virtual Bool_t HasSublevels() const
virtual Bool_t IsAcceptObject(TClass *cl)
virtual TGo4Access * ProvideAccess(const char *name)
virtual TGo4LevelIter * MakeIter()
virtual const char * GetContainedClassName()
ClassDef(TGo4CanvasProxy, 1)
virtual Bool_t AssignObject(TGo4Slot *slot, TObject *obj, Bool_t owner)