GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
TGo4LinkProxy.h
Go to the documentation of this file.
1 // $Id$
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 TGO4LINKPROXY_H
15 #define TGO4LINKPROXY_H
16 
17 #include "TGo4Proxy.h"
18 
19 class TString;
20 
21 class TGo4LinkProxy : public TGo4Proxy {
22  public:
23  TGo4LinkProxy();
24  TGo4LinkProxy(TGo4Slot *linkedslot);
25  virtual ~TGo4LinkProxy();
26 
27  void Initialize(TGo4Slot *slot) override;
28  void Finalize(TGo4Slot *slot) override;
29 
30  std::unique_ptr<TGo4Access> ProvideAccess(const char *name) override;
31  TGo4LevelIter *MakeIter() override;
32 
33  Int_t GetObjectKind() const override;
34  const char *GetContainedClassName() const override;
35 
36  void WriteData(TGo4Slot *slot, TDirectory *dir, Bool_t onlyobjs) override;
37  void ReadData(TGo4Slot *slot, TDirectory *dir) override;
38 
39  Bool_t IsAcceptObject(TClass *cl) const override;
40  Bool_t AssignObject(TGo4Slot *slot, TObject *obj, Bool_t owner) override;
41  TObject *GetAssignedObject() override;
42 
43  Bool_t ProcessEvent(TGo4Slot *slot, TGo4Slot *source, Int_t id, void *param) override;
44 
45  TGo4Slot *GetLink() const { return fLink; }
46 
47  protected:
48  TGo4Slot * fLink{nullptr};
49 
51 };
52 
53 #endif
std::unique_ptr< TGo4Access > ProvideAccess(const char *name) override
Bool_t IsAcceptObject(TClass *cl) const override
TGo4Slot * fLink
Definition: TGo4LinkProxy.h:48
void Initialize(TGo4Slot *slot) override
virtual ~TGo4LinkProxy()
void WriteData(TGo4Slot *slot, TDirectory *dir, Bool_t onlyobjs) override
ClassDefOverride(TGo4LinkProxy, 1)
Int_t GetObjectKind() const override
Bool_t AssignObject(TGo4Slot *slot, TObject *obj, Bool_t owner) override
TGo4LevelIter * MakeIter() override
void ReadData(TGo4Slot *slot, TDirectory *dir) override
void Finalize(TGo4Slot *slot) override
const char * GetContainedClassName() const override
TObject * GetAssignedObject() override
Bool_t ProcessEvent(TGo4Slot *slot, TGo4Slot *source, Int_t id, void *param) override
TGo4Slot * GetLink() const
Definition: TGo4LinkProxy.h:45