CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
FWGeoTopNodeGL Class Reference

#include <FWGeoTopNodeGL.h>

Inheritance diagram for FWGeoTopNodeGL:

Public Member Functions

Bool_t AlwaysSecondarySelect () const override
 
 ClassDefOverride (FWGeoTopNodeGL, 0)
 
void DirectDraw (TGLRnrCtx &rnrCtx) const override
 
 FWGeoTopNodeGL ()
 
void ProcessSelection (TGLRnrCtx &rnrCtx, TGLSelectRecord &rec) override
 
void SetBBox () override
 
Bool_t SetModel (TObject *obj, const Option_t *opt=nullptr) override
 
Bool_t SupportsSecondarySelect () const override
 
 ~FWGeoTopNodeGL () override
 

Protected Attributes

FWGeoTopNodefM
 

Detailed Description

Definition at line 7 of file FWGeoTopNodeGL.h.

Constructor & Destructor Documentation

◆ FWGeoTopNodeGL()

FWGeoTopNodeGL::FWGeoTopNodeGL ( )

Definition at line 9 of file FWGeoTopNodeGL.cc.

9  : TGLObject() {
10  // Constructor.
11 }

◆ ~FWGeoTopNodeGL()

FWGeoTopNodeGL::~FWGeoTopNodeGL ( )
inlineoverride

Definition at line 13 of file FWGeoTopNodeGL.h.

13 {}

Member Function Documentation

◆ AlwaysSecondarySelect()

Bool_t FWGeoTopNodeGL::AlwaysSecondarySelect ( ) const
inlineoverride

Definition at line 23 of file FWGeoTopNodeGL.h.

23 { return kTRUE; }

◆ ClassDefOverride()

FWGeoTopNodeGL::ClassDefOverride ( FWGeoTopNodeGL  ,
 
)

◆ DirectDraw()

void FWGeoTopNodeGL::DirectDraw ( TGLRnrCtx &  rnrCtx) const
override

Definition at line 29 of file FWGeoTopNodeGL.cc.

29  {
30  // Draw quad-set with GL.
31 
32  static const TEveException eH("TEveQuadSetGL::DirectDraw ");
33 
34  // printf("FWGeoTopNodeGL::DirectDraw\n");
35 
36  // glPushAttrib(GL_POINT_BIT);
37  // glPointSize(20);
38  // glBegin(GL_POINTS);
39  // glVertex3d(1,1,1);
40  // glEnd();
41  // glPopAttrib();
42 }

◆ ProcessSelection()

void FWGeoTopNodeGL::ProcessSelection ( TGLRnrCtx &  rnrCtx,
TGLSelectRecord &  rec 
)
override

Definition at line 45 of file FWGeoTopNodeGL.cc.

References FWGeoTopNode::fHted, fM, FWGeoTopNode::fSted, AlCaHLTBitMon_ParallelJobs::p, FWGeoTopNode::ProcessSelection(), and findQualityFiles::v.

45  {
46  // Processes secondary selection from TGLViewer.
47  // Calls DigitSelected(Int_t) in the model object with index of
48  // selected point as the argument.
49 
50  // printf("FWGeoTopNodeGL::ProcessSelection who knows what we've got ...\n");
51  // rec.Print();
52 
53  TGLViewer* v = dynamic_cast<TGLViewer*>(rnrCtx.GetViewer());
54  /*
55  if (v)
56  {
57  printf(" but we know the first selection was what we actually want!\n");
58  printf(" and this is in rnrctx.viewer.selrec\n");
59  printf(" log=%p, this=%p\n", v->GetSelRec().GetLogShape(), this);
60  }
61  */
62  TGLPhysicalShape* p = v->GetSelRec().GetPhysShape();
63 
64  if (rec.GetHighlight()) {
65  fM->ProcessSelection(rec, fM->fHted, p);
66  } else {
67  fM->ProcessSelection(rec, fM->fSted, p);
68  }
69 
70  // Also, do something in UnSelected / UnHighlighted XXXXX
71 }
std::set< TGLPhysicalShape * > fSted
Definition: FWGeoTopNode.h:72
FWGeoTopNode * fM
Definition: FWGeoTopNodeGL.h:9
void ProcessSelection(TGLSelectRecord &rec, std::set< TGLPhysicalShape *> &sset, TGLPhysicalShape *id)
Definition: FWGeoTopNode.cc:88
std::set< TGLPhysicalShape * > fHted
Definition: FWGeoTopNode.h:71

◆ SetBBox()

void FWGeoTopNodeGL::SetBBox ( )
override

Definition at line 14 of file FWGeoTopNodeGL.cc.

14  {
15  // Set bounding box.
16 
17  SetAxisAlignedBBox(((FWGeoTopNode*)fExternalObj)->AssertBBox());
18 }

◆ SetModel()

Bool_t FWGeoTopNodeGL::SetModel ( TObject *  obj,
const Option_t *  opt = nullptr 
)
override

Definition at line 21 of file FWGeoTopNodeGL.cc.

References fM, and getGTfromDQMFile::obj.

21  {
22  // Set model object.
23 
24  fM = SetModelDynCast<FWGeoTopNode>(obj);
25  return kTRUE;
26 }
FWGeoTopNode * fM
Definition: FWGeoTopNodeGL.h:9

◆ SupportsSecondarySelect()

Bool_t FWGeoTopNodeGL::SupportsSecondarySelect ( ) const
inlineoverride

Definition at line 22 of file FWGeoTopNodeGL.h.

22 { return kTRUE; }

Member Data Documentation

◆ fM

FWGeoTopNode* FWGeoTopNodeGL::fM
protected

Definition at line 9 of file FWGeoTopNodeGL.h.

Referenced by ProcessSelection(), and SetModel().