16 #include <boost/bind.hpp>
22 #define private public
23 #include "TGLOrthoCamera.h"
24 #include "TGLPerspectiveCamera.h"
26 #include "TGLCameraGuide.h"
28 #include "TGLEmbeddedViewer.h"
29 #include "TEveViewer.h"
30 #include "TGLScenePad.h"
31 #include "TEveManager.h"
32 #include "TEveElement.h"
33 #include "TEveWindow.h"
34 #include "TEveScene.h"
35 #define protected public
38 #include "TGLOverlay.h"
66 TGLAnnotation(parent, text, posx, posy) {}
86 m_overlayEventInfo(0),
88 m_energyMaxValAnnotation(0),
91 #
if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
92 m_imageScale(this,
"Image Scale", 1.0, 1.0, 6.0),
94 m_eventInfoLevel(this,
"Overlay Event Info", 0
l, 0
l, 2
l),
95 m_drawCMSLogo(this,
"Show Logo",
false),
96 m_pointSmooth(this,
"Smooth points",
false),
97 m_pointSize(this,
"Point size", 1.0, 1.0, 10.0),
98 m_lineSmooth(this,
"Smooth lines",
false),
99 m_lineWidth(this,
"Line width",1.0,1.0,10.0),
100 m_lineOutlineScale(this,
"Outline width scale", 1.0, 0.01, 10.0),
101 m_lineWireframeScale(this,
"Wireframe width scale", 1.0, 0.01, 10.0),
102 m_showCameraGuide(this,
"Show Camera Guide",
false),
103 m_useGlobalEnergyScale(this,
"UseGlobalEnergyScale",
true),
106 m_viewEnergyScaleEditor(0)
110 TGLEmbeddedViewer* embeddedViewer;
111 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,25,4)
112 embeddedViewer =
m_viewer->SpawnGLEmbeddedViewer(0);
114 embeddedViewer =
m_viewer->SpawnGLEmbeddedViewer();
117 gEve->GetViewers()->AddElement(
m_viewer);
127 m_geoScene->GetGLScene()->SetSelectable(kFALSE);
131 embeddedViewer->SetEventHandler(eh);
134 eh->SetDoInternalSelection(kFALSE);
206 #if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
209 succeeded =
viewerGL()->SavePicture(iName.c_str());
213 throw std::runtime_error(
"Unable to save picture");
316 calo->SetPlotEt(energyScale->
getPlotEt());
325 calo->SetMaxValAbs(100/f);
327 calo->ElementChanged();
369 (*it)->setFrom(iFrom);
392 const UChar_t* ca = 0;
394 ca = lcs.Selection(1).CArr();
395 viewerGL()->RefLightColorSet().Selection(1).SetColor(ca[0], ca[1], ca[2]);
396 ca = lcs.Selection(3).CArr();
397 viewerGL()->RefLightColorSet().Selection(3).SetColor(ca[0], ca[1], ca[2]);
398 ca = dcs.Selection(1).CArr();
399 viewerGL()->RefDarkColorSet().Selection(1).SetColor(ca[0], ca[1], ca[2]);
400 ca = dcs.Selection(3).CArr();
401 viewerGL()->RefDarkColorSet().Selection(3).SetColor(ca[0], ca[1], ca[2]);
412 std::ostringstream
s;
419 for (
unsigned int i = 0;
i < 16; ++
i ) {
420 std::ostringstream osIndex;
422 std::ostringstream osValue;
423 osValue << camera->GetCamTrans()[
i];
436 throw std::runtime_error(
"can't restore parameter cameraZoom");
443 for (
unsigned int i = 0;
i < 16; ++
i ) {
444 std::ostringstream os;
449 throw std::runtime_error (
"can't restore parameter cameraMatrix.");
451 std::istringstream
s(value->
value());
452 s>> (camera->RefCamTrans()[
i]);
455 catch (
const std::runtime_error& iException)
458 viewerGL()->ResetCamerasAfterNextUpdate();
461 camera->IncTimeStamp();
469 for (
unsigned int i = 0;
i < 16; ++
i ){
470 std::ostringstream osIndex;
472 std::ostringstream osValue;
473 osValue << (cam->GetCamTrans())[i];
478 matrixName =
"cameraMatrixBase";
479 for (
unsigned int i = 0;
i < 16; ++
i ){
480 std::ostringstream osIndex;
482 std::ostringstream osValue;
483 osValue << (cam->GetCamBase())[i];
487 std::ostringstream osValue;
488 osValue << cam->fFOV;
498 for (
unsigned int i = 0;
i < 16; ++
i ){
499 std::ostringstream os;
504 throw std::runtime_error (
"can't restore parameter cameraMatrix.");
506 std::istringstream
s(value->
value());
507 s>>((cam->RefCamTrans())[i]);
511 matrixName =
"cameraMatrixBase";
512 for (
unsigned int i = 0;
i < 16; ++
i ){
513 std::ostringstream os;
518 throw std::runtime_error (
"can't restore parameter cameraMatrixBase.");
521 std::istringstream
s(value->
value());
522 s>>((cam->RefCamBase())[i]);
529 throw std::runtime_error (
"can't restore parameter cameraMatrixBase.");
531 std::istringstream
s(value->
value());
537 catch (
const std::runtime_error& iException)
540 viewerGL()->ResetCamerasAfterNextUpdate();
554 #
if ROOT_VERSION_CODE >= ROOT_VERSION(5,26,0)
float getScaleFactor3D() const
void addToOrthoCamera(TGLOrthoCamera *, FWConfiguration &) const
FWEventAnnotation * m_overlayEventInfo
std::vector< FWParameterBase * >::const_iterator const_iterator
virtual TEveCaloViz * getEveCalo() const
virtual void useGlobalEnergyScaleChanged()
const_iterator begin() const
std::auto_ptr< FWViewContext > m_viewContext
virtual void populateController(ViewerParameterGUI &) const
virtual void pointLineScalesChanged()
void voteMaxEtAndEnergy(float Et, float energy) const
ScaleAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Float_t posy)
ViewerParameterGUI & requestTab(const char *)
FWViewEnergyScale * getEnergyScale() const
virtual void setFrom(const FWConfiguration &)
const std::string & typeName() const
virtual void setFrom(const FWConfiguration &)
unsigned int version() const
FWViewEnergyScaleEditor * m_viewEnergyScaleEditor
virtual void setupEnergyScale()
void addFrameToContainer(TGCompositeFrame *)
FWDoubleParameter m_pointSize
virtual FWViewContextMenuHandlerBase * contextMenuHandler() const
TGLViewer * viewerGL() const
void updateScaleFactors(float iMaxVal)
sigc::signal< void, T > changed_
const fireworks::Context * m_context
TEveElement * m_ownedProducts
FWBoolParameter m_lineSmooth
unsigned int version() const
FWBoolParameter m_showCameraGuide
FWBoolParameter m_useGlobalEnergyScale
virtual void cameraGuideChanged()
virtual void voteCaloMaxVal()
virtual void setFrom(const FWConfiguration &)
virtual void saveImageTo(const std::string &iName) const
ScaleAnnotation * m_energyMaxValAnnotation
void setText(const char *txt)
float getScaleFactorLego() const
const_iterator end() const
bool addEntry(Long_t id, const std::string &txt)
const TGLColorSet & getLightColorSet() const
float getMaxEnergyInEvent(bool isEt) const
virtual void resetCamera()
virtual void addTo(FWConfiguration &) const
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
FWBoolParameter m_drawCMSLogo
void setViewer(FWEveView *ev)
FWConfiguration & addKeyValue(const std::string &, const FWConfiguration &)
virtual void eventBegin()
std::auto_ptr< FWViewEnergyScale > m_localEnergyScale
const std::string & value(unsigned int iIndex=0) const
const fireworks::Context & context()
FWBoolParameter m_pointSmooth
FWDoubleParameter m_imageScale
void setFromPerspectiveCamera(TGLPerspectiveCamera *, const std::string &, const FWConfiguration &)
FWViewContext * viewContext()
FWViewEnergyScale * getEnergyScale() const
virtual ~ScaleAnnotation()
virtual void setBackgroundColor(Color_t)
FWEveView(TEveWindowSlot *, FWViewType::EType, unsigned int version=7)
FWDoubleParameter m_lineOutlineScale
const TGLColorSet & getDarkColorSet() const
CmsShowCommon * commonPrefs() const
TGCompositeFrame * getTabContainer()
FWEnumParameter m_eventInfoLevel
static Bool_t setColorSetViewer(TGLViewer *, Color_t)
boost::shared_ptr< FWViewContextMenuHandlerGL > m_viewContextMenu
virtual void addTo(FWConfiguration &) const
const FWConfiguration * valueForKey(const std::string &iKey) const
volatile std::atomic< bool > shutdown_flag false
virtual bool isEnergyScaleGlobal() const
FWDoubleParameter m_lineWidth
if(conf.exists("allCellsPositionCalc"))
FWDoubleParameter m_lineWireframeScale
void setFromOrthoCamera(TGLOrthoCamera *, const FWConfiguration &)
virtual void addTo(FWConfiguration &) const
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
TGLCameraGuide * m_cameraGuide
virtual void setContext(const fireworks::Context &x)
CmsAnnotation * m_overlayLogo
virtual void addTo(FWConfiguration &) const
FWViewType::EType typeId() const
void addToPerspectiveCamera(TGLPerspectiveCamera *, const std::string &, FWConfiguration &) const