GSI Object Oriented Online Offline (Go4) GO4-6.4.0
|
#include <TGo4ObjectManager.h>
Public Member Functions | |
TGo4ObjectManager () | |
TGo4ObjectManager (const char *name, const char *title) | |
virtual | ~TGo4ObjectManager () |
TGo4Slot * | Add (const char *pathname, TObject *obj, Bool_t owner=kFALSE, Bool_t canrename=kFALSE) |
void | AddDir (const char *pathname, TDirectory *dir, Bool_t owner=kFALSE, Bool_t readright=kFALSE) |
void | AddFile (const char *pathname, const char *filename) |
void | AddFolder (const char *pathname, TFolder *folder, Bool_t owner=kFALSE) |
TGo4Slot * | AddLink (const char *sourcename, const char *pathname) |
TGo4Slot * | AddLink (TGo4Slot *source, const char *pathname) |
TGo4Slot * | AddLink (TGo4Slot *source, const char *pathname, const char *linkname, const char *linktitle) |
void | AddProxy (const char *pathname, TGo4Proxy *cont, const char *name, const char *title="title") |
void | AddROOTFolder (const char *pathname, const char *foldername) |
void | AddROOTFolders (const char *pathname, Bool_t selected=kTRUE) |
void | AddTree (const char *pathname, TTree *tree, Bool_t owner=kFALSE) |
void | CloseFiles (const char *pathname) |
void | DeleteSlot (const char *pathname) |
void | Event (TGo4Slot *source, Int_t id, void *param=nullptr) override |
TGo4Slot * | GetLinked (TGo4Slot *link) |
TGo4ObjectManager * | GetOM () const override |
TGo4Proxy * | GetProxy (const char *name) |
Int_t | IterateSlots () |
void | MakeFolder (const char *pathname) |
TGo4Slot * | MakeObjSlot (const char *foldername, const char *name=nullptr, const char *title=nullptr) |
void | PrintSlots () |
void | ProduceFullName (TString &name, TGo4Slot *toparent=nullptr) override |
std::unique_ptr< TGo4Access > | ProvideAccess (const char *name=nullptr) override |
void | ReadDataFromFile (TFile *f) |
void | RecursiveRemove (TObject *obj) override |
void | RegisterLink (TGo4Slot *source, TGo4Slot *target, Bool_t exapndchilds=kFALSE) |
void | RegisterObjectWith (TObject *obj, TGo4Slot *slot) |
Int_t | RequestObject (const char *source, const char *targetslot, Int_t waittime_millisec=0) |
void | RetranslateEvent (TGo4Slot *source, Int_t id, void *param=nullptr) |
void | SaveDataToFile (TFile *f, Bool_t onlyobjs=kFALSE, TGo4Slot *startslot=nullptr) |
void | UnregisterLink (TGo4Slot *target) |
void | UnregisterObject (TObject *obj, TGo4Slot *slot) |
![]() | |
TGo4Slot () | |
TGo4Slot (TGo4Slot *parent) | |
TGo4Slot (TGo4Slot *parent, const char *name, const char *title) | |
virtual | ~TGo4Slot () |
Bool_t | AssignObject (TObject *obj, Bool_t owner) |
ClassDefOverride (TGo4Slot, 1) | |
TGo4Slot * | DefineSubSlot (const char *name, const char *&subname) const |
void | Delete (Option_t *opt="") override |
void | DeleteChild (const char *name) |
void | DeleteChilds (const char *startedwith=nullptr) |
Bool_t | DoingDelete () const |
TGo4Slot * | FindChild (const char *name) const |
TGo4Slot * | FindSlot (const char *fullpath, const char **subname=nullptr) |
void | ForwardEvent (TGo4Slot *source, Int_t id, void *param=nullptr) |
Int_t | GetAssignCnt () const |
TObject * | GetAssignedObject () |
Int_t | GetAssignFlag () const |
TGo4Slot * | GetChild (Int_t n) const |
TString | GetFullName (TGo4Slot *toparent=nullptr) |
Int_t | GetIndexOf (const TGo4Slot *child) const |
const char * | GetInfo () |
Bool_t | GetIntPar (const char *name, Int_t &value) const |
TGo4Slot * | GetNext () const |
TGo4Slot * | GetNextChild (const TGo4Slot *child) const |
const char * | GetPar (const char *name) const |
TGo4Slot * | GetParent () const |
TGo4Proxy * | GetProxy () const |
Int_t | GetSizeInfo () |
TGo4Slot * | GetSlot (const char *name, Bool_t force=kFALSE) |
const char * | GetSlotClassName () const |
Int_t | GetSlotKind () const |
Bool_t | HasSlotsSubLevels () const |
Bool_t | HasSubLevels () const |
Bool_t | IsAcceptObject (TClass *cl) const |
Bool_t | IsParent (const TGo4Slot *slot) const |
TGo4LevelIter * | MakeLevelIter () const |
Int_t | NumChilds () const |
void | Print (Option_t *opt="") const override |
void | PrintPars (Int_t level=3) |
std::unique_ptr< TGo4Access > | ProvideSlotAccess (const char *name) |
void | ReadData (TDirectory *dir) |
void | RecursiveRemove (TObject *obj) override |
void | RemovePar (const char *name) |
void | ResetAssignFlag () |
void | SaveData (TDirectory *dir, Bool_t onlyobjs=kFALSE) |
void | SetIntPar (const char *name, Int_t value) |
void | SetPar (const char *name, const char *value) |
void | SetParent (TGo4Slot *parent) |
void | SetProxy (TGo4Proxy *cont) |
Bool_t | ShiftSlotAfter (TGo4Slot *slot, TGo4Slot *after) |
Bool_t | ShiftSlotBefore (TGo4Slot *slot, TGo4Slot *before) |
virtual void | Update (Bool_t strong=kFALSE) |
![]() | |
TGo4AccessWrapper () | |
virtual | ~TGo4AccessWrapper () |
ClassDef (TGo4AccessWrapper, 1) | |
TObject * | GetObject (const char *name=nullptr) |
TClass * | GetObjectClass (const char *name=nullptr) |
const char * | GetObjectClassName (const char *name=nullptr) |
Protected Member Functions | |
virtual Bool_t | AssignObject (const char *path, TObject *obj, Bool_t ownership) |
ClassDefOverride (TGo4ObjectManager, 1) | |
list of registered cleanups | |
void | RemoveFromLinks (const TGo4Slot *slot) |
![]() | |
void | AddChild (TGo4Slot *child) |
void | CleanProxy () |
void | RemoveChild (TGo4Slot *child) |
Protected Attributes | |
TObjArray | fCleanups |
list of links between slots | |
TObjArray | fLinks |
![]() | |
Int_t | fAssignCnt {0} |
! counts number of object assignment | |
Int_t | fAssignFlag {-1} |
! use in object manager to poll until object is assigned | |
TObjArray * | fChilds {nullptr} |
TGo4Slot * | fParent {nullptr} |
TObjArray | fPars |
TGo4Proxy * | fProxy {nullptr} |
! | |
Friends | |
class | TGo4Access |
Additional Inherited Members | |
![]() | |
enum | { evDelete = 0 , evCreate = 1 , evObjAssigned = 2 , evContAssigned = 3 , evObjUpdated = 4 , evSubslotUpdated = 5 , evObjDeleted = 6 } |
![]() | |
static const char * | FindFolderSeparator (const char *name) |
static void | ProduceFolderAndName (const char *fullname, TString &foldername, TString &objectname) |
![]() | |
enum | ESlotBits { kStartDelete = BIT(23) } |
Definition at line 28 of file TGo4ObjectManager.h.
TGo4ObjectManager::TGo4ObjectManager | ( | ) |
Definition at line 74 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), Add(), fCleanups, and fLinks.
Referenced by ClassDefOverride(), GetOM(), and TGo4Access.
TGo4ObjectManager::TGo4ObjectManager | ( | const char * | name, |
const char * | title ) |
Definition at line 82 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), Add(), fCleanups, and fLinks.
|
virtual |
Definition at line 90 of file TGo4ObjectManager.cxx.
References TGo4Slot::DeleteChilds(), fCleanups, and fLinks.
TGo4Slot * TGo4ObjectManager::Add | ( | const char * | pathname, |
TObject * | obj, | ||
Bool_t | owner = kFALSE, | ||
Bool_t | canrename = kFALSE ) |
Definition at line 117 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
Referenced by TGo4ObjectManager(), and TGo4ObjectManager().
void TGo4ObjectManager::AddDir | ( | const char * | pathname, |
TDirectory * | dir, | ||
Bool_t | owner = kFALSE, | ||
Bool_t | readright = kFALSE ) |
Definition at line 154 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
Referenced by AddFile().
void TGo4ObjectManager::AddFile | ( | const char * | pathname, |
const char * | filename ) |
Definition at line 135 of file TGo4ObjectManager.cxx.
References AddDir().
void TGo4ObjectManager::AddFolder | ( | const char * | pathname, |
TFolder * | folder, | ||
Bool_t | owner = kFALSE ) |
Definition at line 178 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
TGo4Slot * TGo4ObjectManager::AddLink | ( | const char * | sourcename, |
const char * | pathname ) |
Definition at line 283 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), AddLink(), and TGo4Slot::GetSlot().
Definition at line 271 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
TGo4Slot * TGo4ObjectManager::AddLink | ( | TGo4Slot * | source, |
const char * | pathname, | ||
const char * | linkname, | ||
const char * | linktitle ) |
Definition at line 249 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), fLinks, TGo4ObjManLink::GetSource(), TGo4ObjManLink::GetTarget(), MakeObjSlot(), TGo4Slot::ProduceFullName(), and TGo4Slot::SetProxy().
Referenced by TGo4Interface::TGo4Interface(), TGo4Interface::AddAnalysisProxy(), and AddLink().
void TGo4ObjectManager::AddProxy | ( | const char * | pathname, |
TGo4Proxy * | cont, | ||
const char * | name, | ||
const char * | title = "title" ) |
Definition at line 218 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
Referenced by TGo4Interface::TGo4Interface(), and TGo4Interface::AddAnalysisProxy().
void TGo4ObjectManager::AddROOTFolder | ( | const char * | pathname, |
const char * | foldername ) |
Definition at line 187 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4FolderProxy::LocateROOTFolder(), MakeObjSlot(), and TGo4Slot::SetProxy().
Referenced by AddROOTFolders().
void TGo4ObjectManager::AddROOTFolders | ( | const char * | pathname, |
Bool_t | selected = kTRUE ) |
Definition at line 198 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), AddROOTFolder(), and TGo4Slot::GetSlot().
void TGo4ObjectManager::AddTree | ( | const char * | pathname, |
TTree * | tree, | ||
Bool_t | owner = kFALSE ) |
Definition at line 168 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), MakeObjSlot(), and TGo4Slot::SetProxy().
|
protectedvirtual |
Definition at line 531 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::AssignObject(), and TGo4Slot::GetSlot().
Referenced by TGo4Access::DoObjectAssignement().
|
protected |
list of registered cleanups
References TGo4ObjectManager().
void TGo4ObjectManager::CloseFiles | ( | const char * | pathname | ) |
Definition at line 140 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::GetChild(), TGo4Slot::GetProxy(), TGo4Slot::GetSlot(), TGo4DirProxy::IsFile(), and TGo4Slot::NumChilds().
void TGo4ObjectManager::DeleteSlot | ( | const char * | pathname | ) |
Definition at line 486 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), and TGo4Slot::GetSlot().
|
overridevirtual |
Reimplemented from TGo4Slot.
Definition at line 341 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::evDelete, TGo4Slot::Event(), TGo4Slot::GetFullName(), RemoveFromLinks(), RetranslateEvent(), and UnregisterObject().
Definition at line 288 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4LinkProxy::GetLink(), and TGo4Slot::GetProxy().
|
overridevirtual |
Reimplemented from TGo4Slot.
Definition at line 106 of file TGo4ObjectManager.cxx.
References TGo4ObjectManager().
TGo4Proxy * TGo4ObjectManager::GetProxy | ( | const char * | name | ) |
Definition at line 225 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::GetProxy(), and TGo4Slot::GetSlot().
Int_t TGo4ObjectManager::IterateSlots | ( | ) |
Definition at line 478 of file TGo4ObjectManager.cxx.
References TGo4Iter::next().
void TGo4ObjectManager::MakeFolder | ( | const char * | pathname | ) |
Definition at line 111 of file TGo4ObjectManager.cxx.
References TGo4Slot::GetSlot().
Referenced by TGo4Interface::TGo4Interface().
TGo4Slot * TGo4ObjectManager::MakeObjSlot | ( | const char * | foldername, |
const char * | name = nullptr, | ||
const char * | title = nullptr ) |
Definition at line 231 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::FindChild(), and TGo4Slot::GetSlot().
Referenced by Add(), AddDir(), AddFolder(), AddLink(), AddLink(), AddProxy(), AddROOTFolder(), and AddTree().
void TGo4ObjectManager::PrintSlots | ( | ) |
Definition at line 468 of file TGo4ObjectManager.cxx.
References TGo4Iter::getname(), TGo4Iter::level(), and TGo4Iter::next().
|
overridevirtual |
Reimplemented from TGo4Slot.
Definition at line 101 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot().
|
inlineoverridevirtual |
Reimplemented from TGo4AccessWrapper.
Definition at line 81 of file TGo4ObjectManager.h.
References TGo4Slot::ProvideSlotAccess().
void TGo4ObjectManager::ReadDataFromFile | ( | TFile * | f | ) |
Definition at line 394 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Iter::getname(), TGo4Iter::getslot(), TGo4Iter::isfolder(), TGo4Iter::levelchange(), TGo4Iter::next(), and TGo4Slot::ReadData().
|
override |
Definition at line 446 of file TGo4ObjectManager.cxx.
References TGo4Slot::evObjDeleted, fCleanups, TGo4Slot::ForwardEvent(), TGo4ObjManCleanup::GetObject(), TGo4ObjManCleanup::GetSlot(), and TGo4Slot::RecursiveRemove().
Referenced by TGo4DrawCloneProxy::CleanupClone().
void TGo4ObjectManager::RegisterLink | ( | TGo4Slot * | source, |
TGo4Slot * | target, | ||
Bool_t | exapndchilds = kFALSE ) |
Definition at line 297 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), and fLinks.
Referenced by TGo4LinkProxy::Initialize().
void TGo4ObjectManager::RegisterObjectWith | ( | TObject * | obj, |
TGo4Slot * | slot ) |
Definition at line 423 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), and fCleanups.
Referenced by TGo4DrawCloneProxy::AssignClone(), TGo4CanvasProxy::Initialize(), TGo4HStackProxy::Initialize(), and TGo4ObjectProxy::Initialize().
|
protected |
Definition at line 307 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), fLinks, TGo4ObjManLink::GetSource(), and TGo4ObjManLink::GetTarget().
Referenced by Event(), and UnregisterLink().
Int_t TGo4ObjectManager::RequestObject | ( | const char * | source, |
const char * | targetslot, | ||
Int_t | waittime_millisec = 0 ) |
Definition at line 492 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Slot::GetAssignFlag(), TGo4Slot::GetSlot(), TGo4Slot::ProvideSlotAccess(), and TGo4Slot::ResetAssignFlag().
void TGo4ObjectManager::RetranslateEvent | ( | TGo4Slot * | source, |
Int_t | id, | ||
void * | param = nullptr ) |
Definition at line 322 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4ObjManLink::CheckEventSource(), TGo4Slot::Event(), fLinks, TGo4Slot::GetFullName(), and TGo4ObjManLink::GetTarget().
Referenced by Event().
void TGo4ObjectManager::SaveDataToFile | ( | TFile * | f, |
Bool_t | onlyobjs = kFALSE, | ||
TGo4Slot * | startslot = nullptr ) |
Definition at line 356 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), TGo4Iter::getname(), TGo4Iter::getslot(), TGo4Iter::isfolder(), TGo4Iter::levelchange(), TGo4Iter::next(), and TGo4Slot::SaveData().
void TGo4ObjectManager::UnregisterLink | ( | TGo4Slot * | target | ) |
Definition at line 302 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), and RemoveFromLinks().
void TGo4ObjectManager::UnregisterObject | ( | TObject * | obj, |
TGo4Slot * | slot ) |
Definition at line 430 of file TGo4ObjectManager.cxx.
References TGo4Slot::TGo4Slot(), fCleanups, TGo4ObjManCleanup::GetObject(), and TGo4ObjManCleanup::GetSlot().
Referenced by TGo4DrawCloneProxy::CleanupClone(), Event(), TGo4CanvasProxy::Finalize(), TGo4HStackProxy::Finalize(), and TGo4ObjectProxy::Finalize().
|
friend |
Definition at line 29 of file TGo4ObjectManager.h.
References TGo4ObjectManager(), TGo4Slot::TGo4Slot(), and TGo4Access.
Referenced by TGo4Access.
|
protected |
list of links between slots
Definition at line 105 of file TGo4ObjectManager.h.
Referenced by TGo4ObjectManager(), TGo4ObjectManager(), ~TGo4ObjectManager(), RecursiveRemove(), RegisterObjectWith(), and UnregisterObject().
|
protected |
Definition at line 103 of file TGo4ObjectManager.h.
Referenced by TGo4ObjectManager(), TGo4ObjectManager(), ~TGo4ObjectManager(), AddLink(), RegisterLink(), RemoveFromLinks(), and RetranslateEvent().