GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
TGo4ObjectManager Class Reference

#include <TGo4ObjectManager.h>

+ Inheritance diagram for TGo4ObjectManager:

Public Member Functions

 TGo4ObjectManager ()
 
 TGo4ObjectManager (const char *name, const char *title)
 
virtual ~TGo4ObjectManager ()
 
virtual void ProduceFullName (TString &name, TGo4Slot *toparent=0)
 
virtual TGo4ObjectManagerGetOM () const
 
void MakeFolder (const char *pathname)
 
TGo4SlotAdd (const char *pathname, TObject *obj, Bool_t owner=kFALSE, Bool_t canrename=kFALSE)
 
TGo4SlotMakeObjSlot (const char *foldername, const char *name=0, const char *title=0)
 
TGo4SlotAddLink (TGo4Slot *source, const char *pathname, const char *linkname, const char *linktitle)
 
TGo4SlotAddLink (TGo4Slot *source, const char *pathname)
 
TGo4SlotAddLink (const char *sourcename, const char *pathname)
 
TGo4SlotGetLinked (TGo4Slot *link)
 
void AddFile (const char *pathname, const char *filename)
 
void CloseFiles (const char *pathname)
 
void AddDir (const char *pathname, TDirectory *dir, Bool_t owner=kFALSE, Bool_t readright=kFALSE)
 
void AddTree (const char *pathname, TTree *tree, Bool_t owner=kFALSE)
 
void AddFolder (const char *pathname, TFolder *folder, Bool_t owner=kFALSE)
 
void AddROOTFolder (const char *pathname, const char *foldername)
 
void AddROOTFolders (const char *pathname, Bool_t selected=kTRUE)
 
void AddProxy (const char *pathname, TGo4Proxy *cont, const char *name, const char *title="title")
 
TGo4ProxyGetProxy (const char *name)
 
void DeleteSlot (const char *pathname)
 
void SaveDataToFile (TFile *f, Bool_t onlyobjs=kFALSE, TGo4Slot *startslot=0)
 
void ReadDataFromFile (TFile *f)
 
void RegisterLink (TGo4Slot *source, TGo4Slot *target, Bool_t exapndchilds=kFALSE)
 
void UnregisterLink (TGo4Slot *target)
 
virtual TGo4AccessProvideAccess (const char *name=0)
 
virtual void Event (TGo4Slot *source, Int_t id, void *param=0)
 
void RetranslateEvent (TGo4Slot *source, Int_t id, void *param=0)
 
void RegisterObjectWith (TObject *obj, TGo4Slot *slot)
 
void UnregisterObject (TObject *obj, TGo4Slot *slot)
 
void PrintSlots ()
 
Int_t IterateSlots ()
 
Int_t RequestObject (const char *source, const char *targetslot, Int_t waittime_millisec=0)
 
virtual void RecursiveRemove (TObject *obj)
 
- Public Member Functions inherited from TGo4Slot
 TGo4Slot ()
 
 TGo4Slot (TGo4Slot *parent)
 
 TGo4Slot (TGo4Slot *parent, const char *name, const char *title)
 
virtual ~TGo4Slot ()
 
TGo4SlotGetParent () const
 
void SetParent (TGo4Slot *parent)
 
Bool_t IsParent (const TGo4Slot *slot) const
 
TString GetFullName (TGo4Slot *toparent=0)
 
const char * GetInfo ()
 
Int_t GetSizeInfo ()
 
void SetPar (const char *name, const char *value)
 
const char * GetPar (const char *name) const
 
void RemovePar (const char *name)
 
void SetIntPar (const char *name, Int_t value)
 
Bool_t GetIntPar (const char *name, Int_t &value)
 
void PrintPars (Int_t level=3)
 
Int_t NumChilds () const
 
TGo4SlotGetChild (Int_t n) const
 
TGo4SlotFindChild (const char *name)
 
Int_t GetIndexOf (TGo4Slot *child)
 
TGo4SlotGetNextChild (TGo4Slot *child)
 
TGo4SlotGetNext ()
 
void DeleteChild (const char *name)
 
void DeleteChilds (const char *startedwith=0)
 
virtual void Delete (Option_t *opt="")
 
TGo4SlotDefineSubSlot (const char *name, const char *&subname) const
 
TGo4SlotGetSlot (const char *name, Bool_t force=kFALSE)
 
TGo4SlotFindSlot (const char *fullpath, const char **subname=0)
 
Bool_t ShiftSlotBefore (TGo4Slot *slot, TGo4Slot *before)
 
Bool_t ShiftSlotAfter (TGo4Slot *slot, TGo4Slot *after)
 
void SetProxy (TGo4Proxy *cont)
 
TGo4ProxyGetProxy () const
 
Int_t GetSlotKind () const
 
const char * GetSlotClassName () const
 
Bool_t IsAcceptObject (TClass *cl)
 
Bool_t AssignObject (TObject *obj, Bool_t owner)
 
TObject * GetAssignedObject ()
 
virtual void Update (Bool_t strong=kFALSE)
 
Int_t GetAssignFlag () const
 
void ResetAssignFlag ()
 
Int_t GetAssignCnt () const
 
Bool_t HasSubLevels () const
 
Bool_t HasSlotsSubLevels () const
 
TGo4LevelIterMakeLevelIter () const
 
TGo4AccessProvideSlotAccess (const char *name)
 
void SaveData (TDirectory *dir, Bool_t onlyobjs=kFALSE)
 
void ReadData (TDirectory *dir)
 
void ForwardEvent (TGo4Slot *source, Int_t id, void *param=0)
 
virtual void Print (Option_t *option) const
 
Bool_t DoingDelete () const
 
 ClassDef (TGo4Slot, 1)
 
- Public Member Functions inherited from TGo4AccessWrapper
 TGo4AccessWrapper ()
 
virtual ~TGo4AccessWrapper ()
 
TObject * GetObject (const char *name=0)
 
TClass * GetObjectClass (const char *name=0)
 
const char * GetObjectClassName (const char *name=0)
 
 ClassDef (TGo4AccessWrapper, 1)
 

Protected Member Functions

virtual Bool_t AssignObject (const char *path, TObject *obj, Bool_t ownership)
 
void RemoveFromLinks (const TGo4Slot *slot)
 
 ClassDef (TGo4ObjectManager, 1)
 list of registered cleanups More...
 
- Protected Member Functions inherited from TGo4Slot
void CleanProxy ()
 
void AddChild (TGo4Slot *child)
 
void RemoveChild (TGo4Slot *child)
 

Protected Attributes

TObjArray fLinks
 
TObjArray fCleanups
 list of links between slots More...
 
- Protected Attributes inherited from TGo4Slot
TGo4SlotfParent
 
TObjArray * fChilds
 
TObjArray fPars
 
TGo4ProxyfProxy
 
Int_t fAssignFlag
 
Int_t fAssignCnt
 use in object manager to poll until object is assigned More...
 

Friends

class TGo4Access
 

Additional Inherited Members

- Public Types inherited from TGo4Slot
enum  {
  evDelete = 0, evCreate = 1, evObjAssigned = 2, evContAssigned = 3,
  evObjUpdated = 4, evSubslotUpdated = 5, evObjDeleted = 6
}
 counts number of object assignment More...
 
- Static Public Member Functions inherited from TGo4Slot
static const char * FindFolderSeparator (const char *name)
 
static void ProduceFolderAndName (const char *fullname, TString &foldername, TString &objectname)
 
- Protected Types inherited from TGo4Slot
enum  ESlotBits { kStartDelete = BIT(23) }
 

Detailed Description

Definition at line 28 of file TGo4ObjectManager.h.

Constructor & Destructor Documentation

TGo4ObjectManager::TGo4ObjectManager ( )

Definition at line 75 of file TGo4ObjectManager.cxx.

TGo4ObjectManager::TGo4ObjectManager ( const char *  name,
const char *  title 
)

Definition at line 83 of file TGo4ObjectManager.cxx.

TGo4ObjectManager::~TGo4ObjectManager ( )
virtual

Definition at line 91 of file TGo4ObjectManager.cxx.

References TGo4Slot::DeleteChilds(), fCleanups, and fLinks.

Member Function Documentation

TGo4Slot * TGo4ObjectManager::Add ( const char *  pathname,
TObject *  obj,
Bool_t  owner = kFALSE,
Bool_t  canrename = kFALSE 
)

Definition at line 118 of file TGo4ObjectManager.cxx.

References MakeObjSlot(), and TGo4Slot::SetProxy().

Referenced by TGo4BrowserProxy::SaveToMemory().

void TGo4ObjectManager::AddDir ( const char *  pathname,
TDirectory *  dir,
Bool_t  owner = kFALSE,
Bool_t  readright = kFALSE 
)

Definition at line 155 of file TGo4ObjectManager.cxx.

References MakeObjSlot(), and TGo4Slot::SetProxy().

Referenced by AddFile().

void TGo4ObjectManager::AddFile ( const char *  pathname,
const char *  filename 
)

Definition at line 136 of file TGo4ObjectManager.cxx.

References AddDir().

Referenced by TGo4BrowserProxy::OpenFile(), and TGo4MainWindow::OpenRemoteFileSlot().

void TGo4ObjectManager::AddFolder ( const char *  pathname,
TFolder *  folder,
Bool_t  owner = kFALSE 
)

Definition at line 179 of file TGo4ObjectManager.cxx.

References MakeObjSlot(), and TGo4Slot::SetProxy().

TGo4Slot * TGo4ObjectManager::AddLink ( TGo4Slot source,
const char *  pathname,
const char *  linkname,
const char *  linktitle 
)
TGo4Slot * TGo4ObjectManager::AddLink ( TGo4Slot source,
const char *  pathname 
)

Definition at line 278 of file TGo4ObjectManager.cxx.

References MakeObjSlot(), and TGo4Slot::SetProxy().

TGo4Slot * TGo4ObjectManager::AddLink ( const char *  sourcename,
const char *  pathname 
)

Definition at line 296 of file TGo4ObjectManager.cxx.

References AddLink(), and TGo4Slot::GetSlot().

void TGo4ObjectManager::AddProxy ( const char *  pathname,
TGo4Proxy cont,
const char *  name,
const char *  title = "title" 
)
void TGo4ObjectManager::AddROOTFolder ( const char *  pathname,
const char *  foldername 
)
void TGo4ObjectManager::AddROOTFolders ( const char *  pathname,
Bool_t  selected = kTRUE 
)

Definition at line 199 of file TGo4ObjectManager.cxx.

References AddROOTFolder(), and TGo4Slot::GetSlot().

void TGo4ObjectManager::AddTree ( const char *  pathname,
TTree *  tree,
Bool_t  owner = kFALSE 
)

Definition at line 169 of file TGo4ObjectManager.cxx.

References MakeObjSlot(), and TGo4Slot::SetProxy().

Bool_t TGo4ObjectManager::AssignObject ( const char *  path,
TObject *  obj,
Bool_t  ownership 
)
protectedvirtual
TGo4ObjectManager::ClassDef ( TGo4ObjectManager  ,
 
)
protected

list of registered cleanups

void TGo4ObjectManager::CloseFiles ( const char *  pathname)
void TGo4ObjectManager::DeleteSlot ( const char *  pathname)

Definition at line 502 of file TGo4ObjectManager.cxx.

References TGo4Slot::GetSlot().

Referenced by TGo4BrowserProxy::DeleteDataSource().

void TGo4ObjectManager::Event ( TGo4Slot source,
Int_t  id,
void *  param = 0 
)
virtual
TGo4Slot * TGo4ObjectManager::GetLinked ( TGo4Slot link)

Definition at line 301 of file TGo4ObjectManager.cxx.

References TGo4LinkProxy::GetLink(), and TGo4Slot::GetProxy().

TGo4ObjectManager * TGo4ObjectManager::GetOM ( ) const
virtual

Reimplemented from TGo4Slot.

Definition at line 107 of file TGo4ObjectManager.cxx.

TGo4Proxy * TGo4ObjectManager::GetProxy ( const char *  name)

Definition at line 226 of file TGo4ObjectManager.cxx.

References TGo4Slot::GetProxy(), and TGo4Slot::GetSlot().

Referenced by TGo4MainWindow::Browser().

Int_t TGo4ObjectManager::IterateSlots ( )

Definition at line 494 of file TGo4ObjectManager.cxx.

References TGo4Iter::next().

void TGo4ObjectManager::MakeFolder ( const char *  pathname)
TGo4Slot * TGo4ObjectManager::MakeObjSlot ( const char *  foldername,
const char *  name = 0,
const char *  title = 0 
)
void TGo4ObjectManager::PrintSlots ( )

Definition at line 482 of file TGo4ObjectManager.cxx.

References TGo4Iter::getname(), TGo4Iter::level(), and TGo4Iter::next().

void TGo4ObjectManager::ProduceFullName ( TString &  name,
TGo4Slot toparent = 0 
)
virtual

Reimplemented from TGo4Slot.

Definition at line 102 of file TGo4ObjectManager.cxx.

virtual TGo4Access* TGo4ObjectManager::ProvideAccess ( const char *  name = 0)
inlinevirtual

Reimplemented from TGo4AccessWrapper.

Definition at line 81 of file TGo4ObjectManager.h.

References TGo4Slot::ProvideSlotAccess().

void TGo4ObjectManager::ReadDataFromFile ( TFile *  f)
void TGo4ObjectManager::RecursiveRemove ( TObject *  obj)
virtual
void TGo4ObjectManager::RegisterLink ( TGo4Slot source,
TGo4Slot target,
Bool_t  exapndchilds = kFALSE 
)

Definition at line 310 of file TGo4ObjectManager.cxx.

References fLinks.

Referenced by TGo4LinkProxy::Initialize(), and TGo4BrowserProxy::Initialize().

void TGo4ObjectManager::RegisterObjectWith ( TObject *  obj,
TGo4Slot slot 
)
void TGo4ObjectManager::RemoveFromLinks ( const TGo4Slot slot)
protected

Definition at line 320 of file TGo4ObjectManager.cxx.

References 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 
)
void TGo4ObjectManager::RetranslateEvent ( TGo4Slot source,
Int_t  id,
void *  param = 0 
)
void TGo4ObjectManager::SaveDataToFile ( TFile *  f,
Bool_t  onlyobjs = kFALSE,
TGo4Slot startslot = 0 
)
void TGo4ObjectManager::UnregisterLink ( TGo4Slot target)

Definition at line 315 of file TGo4ObjectManager.cxx.

References RemoveFromLinks().

Referenced by TGo4LinkProxy::Finalize(), and TGo4BrowserProxy::Finalize().

void TGo4ObjectManager::UnregisterObject ( TObject *  obj,
TGo4Slot slot 
)

Friends And Related Function Documentation

friend class TGo4Access
friend

Definition at line 29 of file TGo4ObjectManager.h.

Member Data Documentation

TObjArray TGo4ObjectManager::fCleanups
protected

list of links between slots

Definition at line 105 of file TGo4ObjectManager.h.

Referenced by RecursiveRemove(), RegisterObjectWith(), UnregisterObject(), and ~TGo4ObjectManager().

TObjArray TGo4ObjectManager::fLinks
protected

The documentation for this class was generated from the following files: