35 TMap TGLObject::fgGLClassMap;
 
   41 Bool_t TGLObject::ShouldDLCache(
const TGLRnrCtx& rnrCtx)
 const 
   45        (rnrCtx.SecSelection() && SupportsSecondarySelect()) ||
 
   46        (fMultiColor && (rnrCtx.Highlight() || rnrCtx.IsDrawPassOutlineLine())) ||
 
   47        (AlwaysSecondarySelect() && rnrCtx.Highlight()))
 
   60 void TGLObject::UpdateBoundingBox()
 
   63    UpdateBoundingBoxesOfPhysicals();
 
   71 Bool_t TGLObject::SetModelCheckClass(TObject* obj, TClass* cls)
 
   73    if(obj->InheritsFrom(cls) == kFALSE) {
 
   74       Warning(
"TGLObject::SetModelCheckClass", 
"object of wrong class passed.");
 
   86 void TGLObject::SetAxisAlignedBBox(Float_t xmin, Float_t xmax,
 
   87                                    Float_t ymin, Float_t ymax,
 
   88                                    Float_t zmin, Float_t zmax)
 
   90    fBoundingBox.SetAligned(TGLVertex3(xmin, ymin, zmin),
 
   91                            TGLVertex3(xmax, ymax, zmax));
 
   98 void TGLObject::SetAxisAlignedBBox(
const Float_t* p)
 
  100    SetAxisAlignedBBox(p[0], p[1], p[2], p[3], p[4], p[5]);
 
  108 TClass* TGLObject::SearchGLRenderer(TClass* cls)
 
  110    TString rnr( cls->GetName() );
 
  112    TClass* c = TClass::GetClass(rnr);
 
  116    TList* bases = cls->GetListOfBases();
 
  117    if (bases == 0 || bases->IsEmpty())
 
  120    TIter  next_base(bases);
 
  122    while ((bc = (TBaseClass*) next_base()) != 0) {
 
  123       cls = bc->GetClassPointer();
 
  124       if ((c = SearchGLRenderer(cls)) != 0) {
 
  135 TClass* TGLObject::GetGLRenderer(TClass* isa)
 
  137    TPair* p = (TPair*) fgGLClassMap.FindObject(isa);
 
  140       cls = (TClass*) p->Value();
 
  142       cls = SearchGLRenderer(isa);
 
  143       fgGLClassMap.Add(isa, cls);