ROOT logo
Gled » GLEDCORE » ZGlass

class ZGlass: public TObject


 Base class of Gled enabled classes.
 Provides infrastructure for integration with the Gled system.

 mGlassBits: collection of internal lens flags shared also with ZQueen.

Function Members (Methods)

public:
ZGlass(const ZGlass&)
ZGlass(const Text_t* n = "ZGlass", const Text_t* t = 0)
virtual~ZGlass()
static void_gled_catalog_init()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual AList*AsAList()
virtual voidTObject::Browse(TBrowser* b)
Bool_tCheckBit(ZGlass::Bits_e bit) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual voidClearAllReferences()
voidClearLinks()
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidCopyLinkRefs(lppZGlass_t& ref_list)
virtual voidCopyLinkReps(ZGlass::lLinkRep_t& link_rep_list)
virtual voidCopyLinks(lpZGlass_t& glass_list)
Short_tDecEyeRefCount()
Short_tDecRefCount(ZGlass* from, UShort_t n = 1)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tDetachedThreadNice(const ZMIR* mir) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
voidExecuteMir(ZMIR& mir)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
static FID_tFID()
virtual ZGlass*FindLensByPath(const TString& url, bool throwp = false)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Bool_tGetAcceptRefs() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
UShort_tGetFireRefCount() const
UInt_tGetGlassBits()
ZMirFilter*GetGuard()
virtual const char*TObject::GetIconName() const
virtual ZGlass*GetLinkByName(const TString& link_name)
Bool_tGetMIRActive() const
UShort_tGetMoonRefCount() const
virtual const Text_t*GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
ZQueen*GetQueen()
UShort_tGetRefCount() const
Saturn*GetSaturn()
ID_tGetSaturnID() const
TimeStamp_tGetStampReqTring() const
UShort_tGetSunRefCount() const
TimeStamp_tGetTimeStamp() const
virtual const Text_t*GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Bool_tGetUseDispList() const
Bool_tGetUseNameStack() const
static GledNS::ClassInfo*GlassInfo()
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
TStringIdentify() const
Short_tIncEyeRefCount()
Short_tIncRefCount(ZGlass* from)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
boolIsSunOrFireSpace()
boolIsSunSpace()
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidMarkStampReqTring()
voidTObject::MayNotUse(const char* method) const
static MID_tMid_RebuildRnrScheme()
static MID_tMid_ReTriangulate()
static MID_tMid_SetAcceptRefs()
static MID_tMid_SetGuard()
static MID_tMid_SetMIRActive()
static MID_tMid_SetName()
static MID_tMid_SetStampReqTring()
static MID_tMid_SetTimeStamp()
static MID_tMid_SetTitle()
static MID_tMid_SetUseDispList()
static MID_tMid_SetUseDLRec()
static MID_tMid_SetUseNameStack()
static MID_tMid_UpdateAllViews()
static MID_tMid_UpdateGlassView()
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
ZGlass&operator=(const ZGlass&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
voidReadLock() const
voidReadUnlock() const
virtual Int_tRebuildAllRefs(An_ID_Demangler* idd)
virtual Int_tRebuildLinkRefs(An_ID_Demangler* c)
voidRebuildRnrScheme()
virtual voidTObject::RecursiveRemove(TObject* obj)
const TString&RefName() const
const TString&RefTitle() const
voidregister_name_change_cb(ZGlass::NameChangeCB* nccb)
voidregister_ray_absorber(ZGlass::RayAbsorber* ra)
Int_tRemoveReferencesTo(ZGlass* lens)
voidTObject::ResetBit(UInt_t f)
voidReTriangulate()
ZMIR*S_RebuildRnrScheme()
ZMIR*S_ReTriangulate()
ZMIR*S_SetAcceptRefs(Bool_t acceptrefs)
ZMIR*S_SetGuard(ZMirFilter* guard)
ZMIR*S_SetMIRActive(Bool_t miractive)
ZMIR*S_SetName(const Text_t* s)
ZMIR*S_SetStampReqTring(TimeStamp_t stampreqtring)
ZMIR*S_SetTimeStamp(TimeStamp_t timestamp)
ZMIR*S_SetTitle(const Text_t* s)
ZMIR*S_SetUseDispList(Bool_t usedisplist)
ZMIR*S_SetUseDLRec(Bool_t state)
ZMIR*S_SetUseNameStack(Bool_t usenamestack)
ZMIR*S_UpdateAllViews()
ZMIR*S_UpdateGlassView()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidSetAcceptRefs(Bool_t acceptrefs)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetGuard(ZMirFilter* guard)
voidSetMIRActive(Bool_t miractive)
voidSetName(const Text_t* n)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetStampReqTring(TimeStamp_t stampreqtring)
virtual voidSetStamps(TimeStamp_t s)
voidSetTimeStamp(TimeStamp_t timestamp)
voidSetTitle(const Text_t* t)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUseDispList(Bool_t usedisplist)
voidSetUseDLRec(Bool_t state)
voidSetUseNameStack(Bool_t usenamestack)
virtual voidShowMembers(TMemberInspector& insp)
TimeStamp_tStamp()
virtual TimeStamp_tStamp(FID_t fid, UChar_t eye_bits = 0)
TimeStamp_tStampLink()
virtual TimeStamp_tStampLink(FID_t fid)
TimeStamp_tStampLinkVFID()
virtual voidStampReqTring(FID_t fid = FID_t(0,0))
TimeStamp_tStampVFID()
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
TStringStrName() const
TStringStrTitle() const
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidunregister_name_change_cb(ZGlass::NameChangeCB* nccb)
voidunregister_ray_absorber(ZGlass::RayAbsorber* ra)
voidUpdateAllViews()
voidUpdateGlassView()
virtual voidTObject::UseCurrentStyle()
virtual FID_tVFID() const
virtual GledNS::ClassInfo*VGlassInfo() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
voidWriteLock()
voidWriteUnlock()
protected:
virtual voidAdEndarkenment()
virtual voidAdEnlightenment()
virtual voidAdUnfoldment()
ZMIR*assert_MIR_presence(const Exc_t& header, int what = 0)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
ZMIR*get_MIR()
voidTObject::MakeZombie()
voidqueen_check_in(ZGlass* l)
virtual voidreference_all()
virtual voidreference_links()
virtual Int_tremove_references_to(ZGlass* lens)
voidset_link_or_die(ZGlass*& link, ZGlass* new_val, FID_t fid)
ZMIR*suggest_MIR_presence(const Exc_t& header, int what = 0)
virtual voidunreference_all()
virtual voidunreference_links()
voidwarn_caller(const TString& warning)
private:
void_init()

Data Members

public:
enum Bits_e { kFixedNameBit
kDyingBit
};
enum MirComponents_e { MC_Any
MC_IsFlare
MC_IsBeam
MC_HasResultReq
MC_IsDetached
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Bool_tbAcceptRefsX{GS} 7 BoolOut()
Bool_tbMIRActiveX{GS} 7 BoolOut(-join=>1)
Bool_tbUseDispListX{GST} 7 Bool(-join=>1)
Bool_tbUseNameStackX{GS} 7 Bool()
UShort_tmEyeRefCount!
UShort_tmFireRefCount! X{G} 7 ValOut(-width=>4)
UInt_tmGlassBitsX{g}
ZLink<ZMirFilter>mGuardX{E} L{}
UShort_tmMoonRefCount! X{G} 7 ValOut(-width=>4)
TStringmNameX{RGE} 7 Textor()
ZQueen*mQueen! X{g}
GMutexmReadMutex!
UShort_tmRefCount! X{G} 7 ValOut(-width=>4, -join=>1)
Saturn*mSaturn! X{g}
ID_tmSaturnIDX{G} 7 ValOut(-range=>[0,MAX_ID,1], -width=>10)
TimeStamp_tmStampReqTring! X{GS} TimeStamp of last change that requires retriangulation
UShort_tmSunRefCount! X{G} 7 ValOut(-width=>4, -join=>1)
TimeStamp_tmTimeStamp! X{GS} TimeStamp of last change
TStringmTitleX{RGE} 7 Textor()
set<NameChangeCB*>*pspNameChangeCB!
set<RayAbsorber*>*pspRayAbsorber!
static GledNS::LinkMemberInfo*sap_Guard_lmi
static GledNS::ClassInfo*sap_ZGlass_ci

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void _init()
~ZGlass()
void queen_check_in(ZGlass* l)
 Needed to be able to check-in lenses from inline functions without
 including ZQueen.h.
void set_link_or_die(ZGlass*& link, ZGlass* new_val, FID_t fid)
void reference_all()
void unreference_all()
void reference_links()
void unreference_links()
Int_t remove_references_to(ZGlass* lens)
 Removes link references to *lens*.
 Virtual ... lists overrirde it but also call the link version
 for unreferencing of links.
 Emits Rays, but does NOT call DecRefCount: this is done by wrapper
 RemoveReferencesTo() (and sometimes by ZQueen during lens delition).
Int_t RebuildAllRefs(An_ID_Demangler* idd)
TString Identify() const
void WriteLock()
void WriteUnlock()
ZMIR* get_MIR()
ZMIR* assert_MIR_presence(const Exc_t& header, int what = 0)
ZMIR* suggest_MIR_presence(const Exc_t& header, int what = 0)
void warn_caller(const TString& warning)
void SetName(const Text_t* n)
void SetTitle(const Text_t* t)
ZMirFilter* GetGuard()
void SetGuard(ZMirFilter* guard)
 Might want to read-lock if LOCK_SET_METHS is true in project7.
void UpdateGlassView()
void UpdateAllViews()
void ReTriangulate()
void RebuildRnrScheme()
bool IsSunSpace()
 Returns true if this lens is in local Saturn's sun-space.
bool IsSunOrFireSpace()
 Returns true if this lens is in local Saturn's sun or fire-space.
Short_t IncRefCount(ZGlass* from)
 Called to notify *this* that *from* desires to reference it.
 Throws an exception if the reference is not allowed by *this*
 lens or its queen.
Short_t DecRefCount(ZGlass* from, UShort_t n = 1)
 Called to notify *this* that it is no longer referenced by lens from.
Short_t IncEyeRefCount()
Short_t DecEyeRefCount()
void ClearLinks()
void ClearAllReferences()
Int_t RemoveReferencesTo(ZGlass* lens)
ZGlass* GetLinkByName(const TString& link_name)
 Returns glass pointed to by link with name link_name.
 Attempts link_name == LinkMemberName and
 link_name == Class::LinkMemberName.
 Throws an exception (TString) if link does not exist.
 In principle could have a map link-name->link-specs.
ZGlass* FindLensByPath(const TString& url, bool throwp = false)
void register_ray_absorber(ZGlass::RayAbsorber* ra)
void unregister_ray_absorber(ZGlass::RayAbsorber* ra)
void register_name_change_cb(ZGlass::NameChangeCB* nccb)
void unregister_name_change_cb(ZGlass::NameChangeCB* nccb)
TimeStamp_t Stamp(FID_t fid, UChar_t eye_bits = 0)
TimeStamp_t StampLink(FID_t fid)
void SetUseDLRec(Bool_t state)
ZLinkBase& operator=(const ZGlass& )
{ _lens = l; return *this; }
void ReadLock() const
void ReadUnlock() const
void AdEnlightenment()
 Handlers of lens-state change notfications ... called from Saturn/Queen
{}
void AdEndarkenment()
{}
void AdUnfoldment()
{}
ZGlass(const Text_t* n = "ZGlass", const Text_t* t = 0)
{ _init(); }
AList* AsAList()
{ return 0; }
Bool_t CheckBit(ZGlass::Bits_e bit) const
{ return mGlassBits & bit; }
Int_t DetachedThreadNice(const ZMIR* mir) const
{ return 0; }
void SetStamps(TimeStamp_t s)
 Stamps
TimeStamp_t StampVFID()
{ return Stamp(VFID()); }
TimeStamp_t StampLink(FID_t fid)
TimeStamp_t StampLinkVFID()
{ return StampLink(VFID()); }
void MarkStampReqTring()
void StampReqTring(FID_t fid = FID_t(0,0))
{ mStampReqTring = Stamp(fid); }