CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FWEveView.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: Core
4 // Class : FWEveView
5 //
6 // Implementation:
7 // [Notes on implementation]
8 //
9 // Original Author: Alja Mrak-Tadel
10 // Created: Thu Mar 16 14:11:32 CET 2010
11 // $Id: FWEveView.cc,v 1.55 2012/05/11 20:36:33 amraktad Exp $
12 //
13 
14 
15 
16 #include <RVersion.h>
17 #include <boost/bind.hpp>
18 #include <stdexcept>
19 
20 
21 // user include files
22 
23 #define private public
24 #include "TGLOrthoCamera.h"
25 #include "TGLPerspectiveCamera.h"
26 #undef private
27 #include "TGLCameraGuide.h"
28 
29 #include "TGLEmbeddedViewer.h"
30 #include "TEveViewer.h"
31 #include "TGLScenePad.h"
32 #include "TEveManager.h"
33 #include "TEveElement.h"
34 #include "TEveWindow.h"
35 #include "TEveScene.h"
36 #define protected public
37 #include "TEveCalo.h"
38 #undef protected
39 #include "TGLOverlay.h"
40 
56 
57 namespace fireworks
58 {
59 class Context;
60 }
61 
62 /* This class is temporary workaround for missing in TGLAnnotation functionality */
63 class ScaleAnnotation : public TGLAnnotation
64 {
65 public:
66  ScaleAnnotation(TGLViewerBase* parent, const char* text, Float_t posx, Float_t posy):
67  TGLAnnotation(parent, text, posx, posy) {}
68  virtual ~ScaleAnnotation() {}
69 
70  void setText(const char* txt)
71  {
72  fText = txt;
73  }
74 };
75 
76 //
77 // constructors and destructor
78 //
79 
80 FWEveView::FWEveView(TEveWindowSlot* iParent, FWViewType::EType type, unsigned int version) :
81  FWViewBase(type, version),
82  m_viewer(0),
83  m_eventScene(0),
84  m_ownedProducts(0),
85  m_geoScene(0),
86  m_overlayEventInfo(0),
87  m_overlayLogo(0),
88  m_energyMaxValAnnotation(0),
89  m_cameraGuide(0),
90  m_context(0),
91  // style
92 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
93  m_imageScale(this, "Image Scale", 1.0, 1.0, 6.0),
94 #endif
95  m_eventInfoLevel(this, "Overlay Event Info", 0l, 0l, 2l),
96  m_drawCMSLogo(this,"Show Logo",false),
97  m_pointSmooth(this, "Smooth points", false),
98  m_pointSize(this, "Point size", 1.0, 1.0, 10.0),
99  m_lineSmooth(this, "Smooth lines", false),
100  m_lineWidth(this,"Line width",1.0,1.0,10.0),
101  m_lineOutlineScale(this, "Outline width scale", 1.0, 0.01, 10.0),
102  m_lineWireframeScale(this, "Wireframe width scale", 1.0, 0.01, 10.0),
103  m_showCameraGuide(this,"Show Camera Guide",false),
104  m_useGlobalEnergyScale(this, "UseGlobalEnergyScale", true),
105  m_viewContext( new FWViewContext()),
106  m_localEnergyScale( new FWViewEnergyScale(FWViewType::idToName(type), version)),
107  m_viewEnergyScaleEditor(0)
108 {
109  m_viewer = new TEveViewer(typeName().c_str());
110 
111  TGLEmbeddedViewer* embeddedViewer;
112 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,25,4)
113  embeddedViewer = m_viewer->SpawnGLEmbeddedViewer(0);
114 #else
115  embeddedViewer = m_viewer->SpawnGLEmbeddedViewer();
116 #endif
117  iParent->ReplaceWindow(m_viewer);
118  gEve->GetViewers()->AddElement(m_viewer);
119 
120  m_eventScene = gEve->SpawnNewScene(Form("EventScene %s", typeName().c_str()));
121  m_ownedProducts = new TEveElementList("ViewSpecificProducts");
122  m_eventScene->AddElement(m_ownedProducts);
123 
124  m_viewer->AddScene(m_eventScene);
125 
126  // spawn geo scene
127  m_geoScene = gEve->SpawnNewScene(Form("GeoScene %s", typeName().c_str()));
128  m_geoScene->GetGLScene()->SetSelectable(kFALSE);
129  m_viewer->AddScene(m_geoScene);
130 
131  FWGLEventHandler* eh = new FWGLEventHandler((TGWindow*)embeddedViewer->GetGLWidget(), (TObject*)embeddedViewer);
132  embeddedViewer->SetEventHandler(eh);
133  eh->setViewer(m_viewer);
135  eh->SetDoInternalSelection(kFALSE);
137  // ctxHand->setPickCameraCenter(true);
138  m_viewContextMenu.reset(ctxHand);
139 
140  m_energyMaxValAnnotation = new ScaleAnnotation(viewerGL(), "empty", 0.1, 0.9);
141  m_energyMaxValAnnotation->SetRole(TGLOverlayElement::kViewer);
142  m_energyMaxValAnnotation->SetState(TGLOverlayElement::kInvisible);
143  m_energyMaxValAnnotation->SetUseColorSet(false);
144  m_energyMaxValAnnotation->SetTextSize(0.05);
145  m_energyMaxValAnnotation->SetTextColor(kMagenta);
146 
147  // style params
148 
149  m_overlayEventInfo = new FWEventAnnotation(embeddedViewer);
151 
152  m_eventInfoLevel.addEntry(0, "Nothing");
153  m_eventInfoLevel.addEntry(1, "Run / event");
154  m_eventInfoLevel.addEntry(2, "Run / event / lumi");
155  m_eventInfoLevel.addEntry(3, "Full");
157 
158  m_overlayLogo = new CmsAnnotation(embeddedViewer, 0.02, 0.98);
159  m_overlayLogo->setVisible(false);
161 
162  m_cameraGuide = new TGLCameraGuide(0.9, 0.1, 0.08);
163  m_cameraGuide->SetState(TGLOverlayElement::kInvisible);
164  embeddedViewer->AddOverlayElement(m_cameraGuide);
165  m_showCameraGuide.changed_.connect(boost::bind(&FWEveView::cameraGuideChanged,this));
166 
167  m_pointSmooth.changed_.connect(boost::bind(&FWEveView::pointLineScalesChanged,this));
168  m_pointSize.changed_.connect(boost::bind(&FWEveView::pointLineScalesChanged,this));
169  m_lineSmooth.changed_.connect(boost::bind(&FWEveView::pointLineScalesChanged,this));
170  m_lineWidth.changed_.connect(boost::bind(&FWEveView::pointLineScalesChanged,this));
173 
174 
175  // create scale for view ..
176  m_viewContext->setEnergyScale(m_localEnergyScale.get());
178  m_localEnergyScale->parameterChanged_.connect(boost::bind(&FWEveView::setupEnergyScale, this));
179 }
180 
182 {
183  m_geoScene->RemoveElements();
184  m_eventScene->RemoveElements();
185  m_viewer->DestroyWindowAndSlot();
186 }
187 
188 //______________________________________________________________________________
189 // const member functions
190 
191 
194  return dynamic_cast<FWViewContextMenuHandlerBase*> (m_viewContextMenu.get());
195 }
196 
197 TGLViewer*
199 {
200  return m_viewer->GetGLViewer();
201 }
202 
203 void
204 FWEveView::saveImageTo(const std::string& iName) const
205 {
206  bool succeeded = false;
207 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
208  succeeded = viewerGL()->SavePictureScale(iName, m_imageScale.value());
209 #else
210  succeeded = viewerGL()->SavePicture(iName.c_str());
211 #endif
212 
213  if(!succeeded) {
214  throw std::runtime_error("Unable to save picture");
215  }
216  fwLog(fwlog::kInfo) << "Saved image " << iName << std::endl;
217 }
218 
219 //-------------------------------------------------------------------------------
220 void
222 {
223  viewerGL()->SetSmoothPoints(m_pointSmooth.value());
224  viewerGL()->SetPointScale (m_pointSize.value());
225  viewerGL()->SetSmoothLines (m_lineSmooth.value());
226  viewerGL()->SetLineScale (m_lineWidth.value());
227  viewerGL()->SetOLLineW (m_lineOutlineScale.value());
228  viewerGL()->SetWFLineW (m_lineWireframeScale.value());
229  viewerGL()->Changed();
230  gEve->Redraw3D();
231 }
232 
233 void
235 {
236  m_cameraGuide->SetBinaryState(m_showCameraGuide.value());
237  viewerGL()->Changed();
238  gEve->Redraw3D();
239 }
240 
241 void
243 {
244 }
245 
246 void
248 {
251 }
252 
253 void
255 {
257 }
258 
259 void
261 {
262  viewerGL()->ResetCurrentCamera();
263 }
264 
265 //______________________________________________________________________________
266 void
268 {
269  m_context = &x ;
270 
271  // in constructor view context has local scale
273  m_viewContext->setEnergyScale(context().commonPrefs()->getEnergyScale());
274 }
275 
276 bool
278 {
279  return m_useGlobalEnergyScale.value();
280 }
281 
282 void
284 {
288 }
289 
290 void
292 {
293  TEveCaloViz* calo = getEveCalo();
294  if (calo)
295  context().voteMaxEtAndEnergy(calo->GetData()->GetMaxVal(1), calo->GetData()->GetMaxVal(0));
296 }
297 
298 void
300 {
301  // Called at end of event OR if scale parameters changed.
302 
303  FWViewEnergyScale* energyScale = viewContext()->getEnergyScale();
304  // printf("setupEnergyScale %s >> scale name %s\n", typeName().c_str(), energyScale->name().c_str());
305  voteCaloMaxVal();
306 
307  // set cache for energy to lenght conversion
308  float maxVal = context().getMaxEnergyInEvent(energyScale->getPlotEt());
309  energyScale->updateScaleFactors(maxVal);
310  // printf("max event val %f \n", maxVal);
311  // printf("scales lego %f \n", energyScale->getScaleFactorLego());
312 
313  // configure TEveCaloViz
314  TEveCaloViz* calo = getEveCalo();
315  if (calo)
316  {
317  calo->SetPlotEt(energyScale->getPlotEt());
318  if (FWViewType::isLego(typeId()))
319  {
320  float f = energyScale->getScaleFactorLego();
321  calo->SetMaxValAbs(TMath::Pi()/f);
322  }
323  else
324  {
325  float f = energyScale->getScaleFactor3D();
326  calo->SetMaxValAbs(100/f);
327  }
328  calo->ElementChanged();
329  }
330 
331  // emit signal to proxy builders
333  gEve->Redraw3D();
334 }
335 
336 //-------------------------------------------------------------------------------
337 void
339 {
340  // take care of parameters
342 
343  {
344  assert ( m_overlayEventInfo );
346  }
347  {
348  assert ( m_overlayLogo );
349  m_overlayLogo->addTo(iTo);
350  }
351 
352  m_viewContext->getEnergyScale()->addTo(iTo);
353 }
354 
355 void
357 {
358  // Make sure you change the version ranges here
359  // whenever you update the logic.
360  // The rationale should be:
361  // (version range supported by the next block) && (version range in the configuration file)
362  //
363  // This is not "forward" compatible, but I don't think
364  // we care.
365  if (version() >= 2 && iFrom.version() >= 1)
366  {
367  for(const_iterator it =begin(), itEnd = end();
368  it != itEnd;
369  ++it) {
370  (*it)->setFrom(iFrom);
371  }
372  }
373  if (iFrom.version() > 1)
374  {
375  assert( m_overlayEventInfo);
376  m_overlayEventInfo->setFrom(iFrom);
377  }
378  {
379  assert( m_overlayLogo);
380  m_overlayLogo->setFrom(iFrom);
381  }
382 
383  if (iFrom.version() > 4)
384  {
385  m_localEnergyScale->setFrom(iFrom);
386  }
387 
388 
389  // selection clors
390  {
391  const TGLColorSet& lcs = context().commonPrefs()->getLightColorSet();
392  const TGLColorSet& dcs = context().commonPrefs()->getDarkColorSet();
393  const UChar_t* ca = 0;
394 
395  ca = lcs.Selection(1).CArr();
396  viewerGL()->RefLightColorSet().Selection(1).SetColor(ca[0], ca[1], ca[2]);
397  ca = lcs.Selection(3).CArr();
398  viewerGL()->RefLightColorSet().Selection(3).SetColor(ca[0], ca[1], ca[2]);
399  ca = dcs.Selection(1).CArr();
400  viewerGL()->RefDarkColorSet().Selection(1).SetColor(ca[0], ca[1], ca[2]);
401  ca = dcs.Selection(3).CArr();
402  viewerGL()->RefDarkColorSet().Selection(3).SetColor(ca[0], ca[1], ca[2]);
403  }
404 }
405 
406 //______________________________________________________________________________
407 
408 
409 void
410 FWEveView::addToOrthoCamera(TGLOrthoCamera* camera, FWConfiguration& iTo) const
411 {
412  // zoom
413  std::ostringstream s;
414  s<<(camera->fZoom);
415  std::string name("cameraZoom");
416  iTo.addKeyValue(name+typeName(),FWConfiguration(s.str()));
417 
418  // transformation matrix
419  std::string matrixName("cameraMatrix");
420  for ( unsigned int i = 0; i < 16; ++i ) {
421  std::ostringstream osIndex;
422  osIndex << i;
423  std::ostringstream osValue;
424  osValue << camera->GetCamTrans()[i];
425  iTo.addKeyValue(matrixName+osIndex.str()+typeName(),FWConfiguration(osValue.str()));
426  }
427 }
428 
429 void
430 FWEveView::setFromOrthoCamera(TGLOrthoCamera* camera, const FWConfiguration& iFrom)
431 {
432  try {
433  // zoom
434  std::string zoomName("cameraZoom"); zoomName += typeName();
435  if (iFrom.valueForKey(zoomName) == 0 )
436  {
437  throw std::runtime_error("can't restore parameter cameraZoom");
438  }
439  std::istringstream s(iFrom.valueForKey(zoomName)->value());
440  s>>(camera->fZoom);
441 
442  // transformation matrix
443  std::string matrixName("cameraMatrix");
444  for ( unsigned int i = 0; i < 16; ++i ) {
445  std::ostringstream os;
446  os << i;
447  const FWConfiguration* value = iFrom.valueForKey( matrixName + os.str() + typeName() );
448  if ( value == 0 )
449  {
450  throw std::runtime_error ("can't restore parameter cameraMatrix.");
451  }
452  std::istringstream s(value->value());
453  s>> (camera->RefCamTrans()[i]);
454  }
455  }
456  catch (const std::runtime_error& iException)
457  {
458  fwLog(fwlog::kInfo) << "Caught exception while restoring camera parameters in view " << typeName() << "\n.";
459  viewerGL()->ResetCamerasAfterNextUpdate();
460 
461  }
462  camera->IncTimeStamp();
463 }
464 
465 void
466 FWEveView::addToPerspectiveCamera(TGLPerspectiveCamera* cam, const std::string& name, FWConfiguration& iTo) const
467 {
468  // transformation matrix
469  std::string matrixName("cameraMatrix");
470  for ( unsigned int i = 0; i < 16; ++i ){
471  std::ostringstream osIndex;
472  osIndex << i;
473  std::ostringstream osValue;
474  osValue << (cam->GetCamTrans())[i];
475  iTo.addKeyValue(matrixName+osIndex.str()+name,FWConfiguration(osValue.str()));
476  }
477 
478  // transformation matrix base
479  matrixName = "cameraMatrixBase";
480  for ( unsigned int i = 0; i < 16; ++i ){
481  std::ostringstream osIndex;
482  osIndex << i;
483  std::ostringstream osValue;
484  osValue << (cam->GetCamBase())[i];
485  iTo.addKeyValue(matrixName+osIndex.str()+name,FWConfiguration(osValue.str()));
486  }
487  {
488  std::ostringstream osValue;
489  osValue << cam->fFOV;
490  iTo.addKeyValue(name+" FOV",FWConfiguration(osValue.str()));
491  }
492 }
493 
494 void
495 FWEveView::setFromPerspectiveCamera(TGLPerspectiveCamera* cam, const std::string& name, const FWConfiguration& iFrom)
496 {
497  try {
498  std::string matrixName("cameraMatrix");
499  for ( unsigned int i = 0; i < 16; ++i ){
500  std::ostringstream os;
501  os << i;
502  const FWConfiguration* value = iFrom.valueForKey( matrixName + os.str() + name );
503  if ( value == 0 )
504  {
505  throw std::runtime_error ("can't restore parameter cameraMatrix.");
506  }
507  std::istringstream s(value->value());
508  s>>((cam->RefCamTrans())[i]);
509  }
510 
511  // transformation matrix base
512  matrixName = "cameraMatrixBase";
513  for ( unsigned int i = 0; i < 16; ++i ){
514  std::ostringstream os;
515  os << i;
516  const FWConfiguration* value = iFrom.valueForKey( matrixName + os.str() + name );
517  if ( value == 0 )
518  {
519  throw std::runtime_error ("can't restore parameter cameraMatrixBase.");
520  }
521 
522  std::istringstream s(value->value());
523  s>>((cam->RefCamBase())[i]);
524  }
525 
526  {
527  const FWConfiguration* value = iFrom.valueForKey( name + " FOV" );
528  if ( value == 0 )
529  {
530  throw std::runtime_error ("can't restore parameter cameraMatrixBase.");
531  }
532  std::istringstream s(value->value());
533  s>>cam->fFOV;
534  }
535 
536  cam->IncTimeStamp();
537  }
538  catch (const std::runtime_error& iException)
539  {
540  fwLog(fwlog::kInfo) << "Caught exception while restoring camera parameters in view " << typeName() << "\n.";
541  viewerGL()->ResetCamerasAfterNextUpdate();
542  fwLog(fwlog::kDebug) << "Reset camera fo view " << typeName() << "\n.";
543  }
544 }
545 
546 
547 void
549 {
550  gui.requestTab("Style").
551  addParam(&m_eventInfoLevel).
552  addParam(&m_drawCMSLogo).
553  addParam(&m_showCameraGuide).
554  separator().
555 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
556  addParam(&m_imageScale).
557 #endif
558  addParam(&m_pointSize).
559  addParam(&m_pointSmooth).
560  addParam(&m_lineSmooth).
561  addParam(&m_lineWidth).
562  addParam(&m_lineOutlineScale).
563  addParam(&m_lineWireframeScale);
564 
565 
566  gui.requestTab("Scales").
567  addParam(&m_useGlobalEnergyScale);
568 
572 }
void scaleChanged()
const double Pi
type
Definition: HCALResponse.h:22
float getScaleFactor3D() const
int i
Definition: DBlmapReader.cc:9
void addToOrthoCamera(TGLOrthoCamera *, FWConfiguration &) const
Definition: FWEveView.cc:410
FWEventAnnotation * m_overlayEventInfo
Definition: FWEveView.h:116
std::vector< FWParameterBase * >::const_iterator const_iterator
virtual TEveCaloViz * getEveCalo() const
Definition: FWEveView.h:95
list parent
Definition: dbtoconf.py:74
virtual ~FWEveView()
Definition: FWEveView.cc:181
virtual void useGlobalEnergyScaleChanged()
Definition: FWEveView.cc:283
const_iterator begin() const
std::auto_ptr< FWViewContext > m_viewContext
Definition: FWEveView.h:144
TEveViewer * m_viewer
Definition: FWEveView.h:111
virtual void populateController(ViewerParameterGUI &) const
Definition: FWEveView.cc:548
void setViewer(TEveViewer *ev)
virtual void pointLineScalesChanged()
Definition: FWEveView.cc:221
void voteMaxEtAndEnergy(float Et, float energy) const
Definition: Context.cc:185
ScaleAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Float_t posy)
Definition: FWEveView.cc:66
ViewerParameterGUI & requestTab(const char *)
FWViewEnergyScale * getEnergyScale() const
virtual void setFrom(const FWConfiguration &)
Definition: FWEveView.cc:356
const std::string & typeName() const
Definition: FWViewBase.cc:121
virtual void setFrom(const FWConfiguration &)
TEveScene * m_geoScene
Definition: FWEveView.h:114
unsigned int version() const
FWViewEnergyScaleEditor * m_viewEnergyScaleEditor
Definition: FWEveView.h:147
virtual void setupEnergyScale()
Definition: FWEveView.cc:299
void addFrameToContainer(TGCompositeFrame *)
FWDoubleParameter m_pointSize
Definition: FWEveView.h:134
virtual FWViewContextMenuHandlerBase * contextMenuHandler() const
Definition: FWEveView.cc:193
TGLViewer * viewerGL() const
Definition: FWEveView.cc:198
void updateScaleFactors(float iMaxVal)
sigc::signal< void, T > changed_
const fireworks::Context * m_context
Definition: FWEveView.h:121
TEveElement * m_ownedProducts
Definition: FWEveView.h:113
FWBoolParameter m_lineSmooth
Definition: FWEveView.h:135
virtual void eventEnd()
Definition: FWEveView.cc:247
FWBoolParameter m_showCameraGuide
Definition: FWEveView.h:140
FWBoolParameter m_useGlobalEnergyScale
Definition: FWEveView.h:141
virtual void cameraGuideChanged()
Definition: FWEveView.cc:234
virtual void voteCaloMaxVal()
Definition: FWEveView.cc:291
virtual void setFrom(const FWConfiguration &)
virtual void saveImageTo(const std::string &iName) const
Definition: FWEveView.cc:204
ScaleAnnotation * m_energyMaxValAnnotation
Definition: FWEveView.h:118
unsigned char UChar_t
Definition: FUTypes.h:14
void setText(const char *txt)
Definition: FWEveView.cc:70
float getScaleFactorLego() const
const_iterator end() const
bool addEntry(Long_t id, const std::string &txt)
const TGLColorSet & getLightColorSet() const
Definition: CmsShowCommon.h:70
double f[11][100]
tuple text
Definition: runonSM.py:42
float getMaxEnergyInEvent(bool isEt) const
Definition: Context.cc:201
virtual void resetCamera()
Definition: FWEveView.cc:260
virtual void addTo(FWConfiguration &) const
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
FWBoolParameter m_drawCMSLogo
Definition: FWEveView.h:131
FWConfiguration & addKeyValue(const std::string &, const FWConfiguration &)
virtual void eventBegin()
Definition: FWEveView.cc:242
std::auto_ptr< FWViewEnergyScale > m_localEnergyScale
Definition: FWEveView.h:145
const std::string & value(unsigned int iIndex=0) const
const fireworks::Context & context()
Definition: FWEveView.h:65
FWBoolParameter m_pointSmooth
Definition: FWEveView.h:133
FWDoubleParameter m_imageScale
Definition: FWEveView.h:128
void setFromPerspectiveCamera(TGLPerspectiveCamera *, const std::string &, const FWConfiguration &)
Definition: FWEveView.cc:495
#define fwLog(_level_)
Definition: fwLog.h:51
FWViewContext * viewContext()
Definition: FWEveView.h:80
FWViewEnergyScale * getEnergyScale() const
Definition: CmsShowCommon.h:68
virtual ~ScaleAnnotation()
Definition: FWEveView.cc:68
virtual void setBackgroundColor(Color_t)
Definition: FWEveView.cc:254
FWEveView(TEveWindowSlot *, FWViewType::EType, unsigned int version=7)
Definition: FWEveView.cc:80
FWDoubleParameter m_lineOutlineScale
Definition: FWEveView.h:137
const TGLColorSet & getDarkColorSet() const
Definition: CmsShowCommon.h:71
CmsShowCommon * commonPrefs() const
Definition: Context.cc:179
TGCompositeFrame * getTabContainer()
TEveScene * m_eventScene
Definition: FWEveView.h:112
FWEnumParameter m_eventInfoLevel
Definition: FWEveView.h:130
static bool isLego(int)
Definition: FWViewType.cc:136
static Bool_t setColorSetViewer(TGLViewer *, Color_t)
perl if(1 lt scalar(@::datatypes))
Definition: edlooper.cc:31
boost::shared_ptr< FWViewContextMenuHandlerGL > m_viewContextMenu
Definition: FWEveView.h:143
virtual void addTo(FWConfiguration &) const
const FWConfiguration * valueForKey(const std::string &iKey) const
virtual bool isEnergyScaleGlobal() const
Definition: FWEveView.cc:277
FWDoubleParameter m_lineWidth
Definition: FWEveView.h:136
x
Definition: VDTMath.h:216
FWDoubleParameter m_lineWireframeScale
Definition: FWEveView.h:138
void setFromOrthoCamera(TGLOrthoCamera *, const FWConfiguration &)
Definition: FWEveView.cc:430
virtual void addTo(FWConfiguration &) const
Definition: FWEveView.cc:338
void setVisible(bool x)
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
Definition: FWViewBase.h:57
TGLCameraGuide * m_cameraGuide
Definition: FWEveView.h:119
virtual void setContext(const fireworks::Context &x)
Definition: FWEveView.cc:267
bool getPlotEt() const
CmsAnnotation * m_overlayLogo
Definition: FWEveView.h:117
virtual void addTo(FWConfiguration &) const
FWViewType::EType typeId() const
Definition: FWViewBase.h:42
void addToPerspectiveCamera(TGLPerspectiveCamera *, const std::string &, FWConfiguration &) const
Definition: FWEveView.cc:466