ATLAS Offline Software
Loading...
Searching...
No Matches
VP1TrackCaloChannel Class Reference

#include <VP1TrackCaloChannel.h>

Inheritance diagram for VP1TrackCaloChannel:
Collaboration diagram for VP1TrackCaloChannel:

Public Types

enum  Type {
  UNKNOWN = 0 , THREEDIMENSIONAL , TWODIMENSIONAL , HISTOGRAM ,
  NUMBERS
}

Signals

void message (QString)
void uniqueNameChanged (const QString &)
void systemRefreshInfoChanged (QString sysrefreshing, int nsysOn, int nsysOnRefreshed)

Public Member Functions

 VP1TrackCaloChannel ()
void init ()
virtual ~VP1TrackCaloChannel ()
void create ()
virtual QPixmap getSnapshot (bool transp=false, int width=0, bool batch=false)
virtual void lastOfActiveSystemsRefreshed ()
virtual void systemRefreshed (IVP1System *)
virtual void systemErased (IVP1System *)
virtual QByteArray saveState ()
virtual void restoreFromState (QByteArray)
void launchStereoEditor ()
bool isAntiAliasing ()
bool setAntiAliasing (bool)
Type type () const
void setUpdatesEnabled (bool enable)
virtual void goingToNextEvent ()
virtual bool isAccumulator () const
void setRunEvtNumber (int runnumber, unsigned long long eventnumber)
const QString & name () const
const QString unique_name () const
const QString & information () const
const QString & contact_info () const

Static Public Member Functions

static QString str (const QString &s)
static QString str (const char *c)
static QString str (const bool b)
static QString str (const QColor &)
static QString str (const SbColor &)
static QString str (const VP1Interval &)
static QString str (const SbVec2d &)
static QString str (const SbVec2f &)
static QString str (const SbVec2s &)
static QString str (const SbVec3d &)
static QString str (const SbVec3f &)
static QString str (const SbVec3s &)
static QString str (const SbVec4d &)
static QString str (const SbVec4f &)
static QString str (short int n)
static QString str (unsigned short int n)
static QString str (long n)
static QString str (ulong n)
static QString str (int n)
static QString str (uint n)
static QString str (qlonglong n)
static QString str (qulonglong n)
static QString str (const double &d)
static QString str (const float &f)
static QString str (const void *)
template<class T>
static QString str (const T *t)
template<class T>
static QString str (const QFlags< T > &f)
template<class T>
static QString str (const HepGeom::BasicVector3D< T > &t)
static QString str (const Amg::Vector3D &t)
template<class T>
static QString str (const QList< T > &t)

Protected Types

enum  SystemOption {
  AllowAll = 0x0000 , DisallowExtraDisplayWidget = 0x0002 , DisallowSwitchable =0x0004 , DisallowController = 0x0008 ,
  StartDisabled = 0x0010 , DisallowCameraAccess = 0x0060
}

Protected Slots

void showControlsForSystem ()

Protected Member Functions

void addSystem (IVP13DSystem *, const SystemOptions &options=AllowAll)
void addSystem (IVP13DSystemSimple *, const SystemOptions &options=AllowAll)
void dockResized ()
void stopSpinning ()
void registerRenderArea (VP1ExaminerViewer *)
virtual void uncreate ()
void turnOn (IVP1System *)
void turnOff (IVP1System *, const bool &immediateErase=true)
void getRunEvtNumber (int &runnumber, unsigned long long &eventnumber)
void setEvtTimestamp (unsigned timestamp)
void getEvtTimestamp (unsigned &timestamp)
void registerController (QWidget *)
void registerSystem (IVP1System *)

Private Types

enum  State { CONSTRUCTED =0 , READY , UNCREATED }

Private Slots

void toggleSystemActive ()
void updateSnapshotDim ()
void setImageFromPresets ()

Private Member Functions

unsigned cloneID () const
QWidget * controllerWidget ()
void emitRefreshInfoChanged ()
bool hasRefreshingSystem ()
void setCloneID (unsigned id)
const std::set< IVP1System * > & systems ()
void deleteControllers ()
State state () const
void setState (const State &)
void setCanRegister (const bool &controller, const bool &system)

Private Attributes

Impm_d

Detailed Description

Definition at line 10 of file VP1TrackCaloChannel.h.

Member Enumeration Documentation

◆ State

enum IVP1ChannelWidget::State
privateinherited
Enumerator
CONSTRUCTED 
READY 
UNCREATED 

Definition at line 130 of file IVP1ChannelWidget.h.

◆ SystemOption

Enumerator
AllowAll 
DisallowExtraDisplayWidget 
DisallowSwitchable 
DisallowController 
StartDisabled 
DisallowCameraAccess 

Definition at line 33 of file IVP13DStandardChannelWidget.h.

33 {
34 AllowAll = 0x0000,
35 DisallowExtraDisplayWidget = 0x0002,//Any extra display widget provided by this wont be present in the GUI
36 DisallowSwitchable=0x0004,//User can not turn 3d objects from this system on/off.
37 DisallowController = 0x0008,//Any custom controller provided by this wont be present in the GUI
38 StartDisabled = 0x0010,
40 };

◆ Type

enum IVP1ChannelWidget::Type
inherited
Enumerator
UNKNOWN 
THREEDIMENSIONAL 
TWODIMENSIONAL 
HISTOGRAM 
NUMBERS 

Definition at line 46 of file IVP1ChannelWidget.h.

Constructor & Destructor Documentation

◆ VP1TrackCaloChannel()

VP1TrackCaloChannel::VP1TrackCaloChannel ( )

Definition at line 19 of file VP1TrackCaloChannel.cxx.

21 "This channel displays various systems related to Tracking and Calo.",
22 "Riccardo.Maria.Bianchi@cern.ch, Thomas.Kittelmann@cern.ch, Edward.moyse@cern.ch, Vakhtang.Tsulaia@cern.ch")
23{
24}
#define VP1CHANNELNAMEINPLUGIN(cls, nme)
IVP13DStandardChannelWidget(const QString &name, const QString &information, const QString &contact_info, bool detectorViewButtons=true)

◆ ~VP1TrackCaloChannel()

virtual VP1TrackCaloChannel::~VP1TrackCaloChannel ( )
inlinevirtual

Definition at line 18 of file VP1TrackCaloChannel.h.

18{}

Member Function Documentation

◆ addSystem() [1/2]

void IVP13DStandardChannelWidget::addSystem ( IVP13DSystem * system,
const SystemOptions & options = AllowAll )
protectedinherited

Definition at line 135 of file IVP13DStandardChannelWidget.cxx.

135 {
136
137
138 bool switchable = ! (options & DisallowSwitchable);
139 bool allowController = ! (options & DisallowController);
140 bool allowExtraDisplayWidget = ! (options & DisallowExtraDisplayWidget);
141 bool startDisabled = (options & StartDisabled);
142
143 registerSystem(system);
144 if (!( options & DisallowCameraAccess ))
145 m_d->systemsAllowedCameraList << system;
146
147 SoSeparator * sysroot = system->getSceneGraph();
148 assert(!m_d->system2rootNodes.contains(system));
149 m_d->system2rootNodes.insert(system,sysroot);
150 m_d->root->addChild(sysroot);
151
152 m_d->system2switchable << QPair<IVP1System*,bool>(system,switchable);
153
154 assert(!m_d->system2startdisabled.contains(system));
155 m_d->system2startdisabled.insert(system,startDisabled);
156 assert(m_d->system2startdisabled.contains(system));
157
158 if (allowController) {
159 m_d->systemsAllowedControllers << system;
160 connect(system,SIGNAL(itemFromSystemSelected()),this,SLOT(showControlsForSystem()));
161 }
162
163 if (allowExtraDisplayWidget)
164 m_d->systemsAllowedExtraDisplayWidgets << system;
165}
virtual SoSeparator * getSceneGraph() const =0
void registerSystem(IVP1System *)

◆ addSystem() [2/2]

void IVP13DStandardChannelWidget::addSystem ( IVP13DSystemSimple * sys,
const SystemOptions & options = AllowAll )
protectedinherited

Definition at line 430 of file IVP13DStandardChannelWidget.cxx.

431{
432 addSystem((IVP13DSystem*)sys,options);
433}
void addSystem(IVP13DSystem *, const SystemOptions &options=AllowAll)

◆ cloneID()

unsigned IVP1ChannelWidget::cloneID ( ) const
privateinherited

Definition at line 197 of file IVP1ChannelWidget.cxx.

198{
199 return m_d->cloneid;
200}

◆ contact_info()

const QString & IVP1ChannelWidget::contact_info ( ) const
inherited

Definition at line 191 of file IVP1ChannelWidget.cxx.

192{
193 return m_d->contact_info;
194}

◆ controllerWidget()

QWidget * IVP1ChannelWidget::controllerWidget ( )
privateinherited

Definition at line 77 of file IVP1ChannelWidget.cxx.

78{
79 return m_d->controller;
80}

◆ create()

void IVP13DStandardChannelWidget::create ( )
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 168 of file IVP13DStandardChannelWidget.cxx.

168 {
169
170 //Set up the controller.
171 QWidget * snapshotgroupbox = new QWidget();
172 m_d->uisnapshot.setupUi(snapshotgroupbox);
173
174 VP1ColorSelectButton * colorselectbutton_dummy;
176 m_d->sys2tabpage,m_d->tabwidget,
177 m_d->system2switchable,
178 m_d->checkbox2system,
179 colorselectbutton_dummy,
180 snapshotgroupbox,true ));
181 short x,y;
182 SoOffscreenRenderer::getMaximumResolution().getValue(x,y);
183
184 // now the range is set in the ui file.
185// m_d->uisnapshot.spinBox_width->setRange ( 1, x/4 - 10 );
186// m_d->uisnapshot.spinBox_height->setRange ( 1, y/4 - 10 );
187
188 connect(m_d->uisnapshot.checkBox_as_shown,SIGNAL(toggled(bool)),this,SLOT(updateSnapshotDim()));
189 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
190 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
191 connect(m_d->uisnapshot.radioButton_width,SIGNAL(toggled(bool)),this,SLOT(updateSnapshotDim()));
192 connect(m_d->uisnapshot.radioButton_height,SIGNAL(toggled(bool)),this,SLOT(updateSnapshotDim()));
193
194 connect(m_d->uisnapshot.groupBox_imagePresets,SIGNAL(toggled(bool)),this,SLOT(setImageFromPresets()));
195 connect(m_d->uisnapshot.radioButton_720p,SIGNAL(toggled(bool)),this,SLOT(setImageFromPresets()));
196 connect(m_d->uisnapshot.radioButton_1080p,SIGNAL(toggled(bool)),this,SLOT(setImageFromPresets()));
197 connect(m_d->uisnapshot.radioButton_4K,SIGNAL(toggled(bool)),this,SLOT(setImageFromPresets()));
198 connect(m_d->uisnapshot.radioButton_8K,SIGNAL(toggled(bool)),this,SLOT(setImageFromPresets()));
199
200
201 // m_d->systemsAllowedControllers.clear();
202 m_d->system2switchable.clear();
203
204 QMapIterator<QCheckBox*,IVP1System*> it(m_d->checkbox2system);
205 while (it.hasNext()) {
206 it.next();
207
208 assert(m_d->system2startdisabled.contains(it.value()));
209 if (m_d->system2startdisabled[it.value()]) {
210 it.key()->setChecked(false);
211 m_d->updateSystemState(it.key());
212 }
213
214 connect(it.key(),SIGNAL(toggled(bool)),this,SLOT(toggleSystemActive()));
215
216 }
217
218 QTimer::singleShot(0, this, SLOT(updateSnapshotDim()));
219
220
221 //Setup viewer (with possible splitter for extra widgets):
222 QList<QPair<QString,QWidget*> > sysname2extradisplay;
223 for (IVP13DSystem* sys : m_d->systemsAllowedExtraDisplayWidgets) {
224 QWidget * edwidget = sys->buildExtraDisplayWidget();
225 if (edwidget)
226 sysname2extradisplay << QPair<QString,QWidget*>(sys->name(),edwidget);
227 }
228
229 if (sysname2extradisplay.count()==0) {
230 m_d->viewer = new VP1ExaminerViewer(this,m_d->detectorViewButtons);
231 setMinimumSize(m_d->min3dx,m_d->min3dy);
232 } else if (sysname2extradisplay.count()==1) {
233 m_d->setupSplitter(sysname2extradisplay.front().second);
234 } else if (sysname2extradisplay.count()>1) {
235 VP1TabWidget * tabWidget = new VP1TabWidget();
236 for (int i = 0; i < sysname2extradisplay.count(); ++i) {
237 tabWidget->addTab(sysname2extradisplay.at(i).second,sysname2extradisplay.at(i).first);
238 }
239 tabWidget->setCurrentIndex(0);
240 m_d->setupSplitter(tabWidget);
241 }
242
243 registerRenderArea(m_d->viewer);//remember this...
244
245 m_d->viewer->setSceneGraph(m_d->root);
246 m_d->viewer->setGLRenderAction(new SoLineHighlightRenderAction());
247 //m_d->viewer->setGLRenderAction(new SoBoxHighlightRenderAction());
248
249 // Default Transparency Type
250 // m_d->viewer->setTransparencyType( SoGLRenderAction::DELAYED_BLEND ); // old
251 m_d->viewer->setTransparencyType( SoGLRenderAction::BLEND ); // this looks better for geometry volumes
252
253 //Setup camera info:
254 for (IVP13DSystem*sys : m_d->systemsAllowedCameraList)
255 sys->registerViewer(m_d->viewer);
256
257
258 /* We want to change the default value for the "As shown" option
259 * At the beginning the option was set to True by default, but
260 * the most used setting when creating event displays for ATLAS is
261 * False, because we want to save the full image as a snapshot,
262 * without the frame and buttons from VP1.
263 * So we now set it to False by default.
264 * (We do that with setChecked() in order to not having to change
265 * the whole logics behind.
266 */
267 m_d->uisnapshot.checkBox_as_shown->setChecked(false); // fixme: check if that works, or if it's still TRUE
268
269}
#define y
#define x
void registerRenderArea(VP1ExaminerViewer *)
void registerController(QWidget *)
static QWidget * compositionController(const QList< IVP1System * > &systemsWithControllersAllowed, QMap< IVP1System *, QWidget * > &sys2tabpage, VP1TabWidget *&tabwidget, const QList< QPair< IVP1System *, bool > > &system2switchable, QMap< QCheckBox *, IVP1System * > &checkbox2system, VP1ColorSelectButton *&colorselectbutton, QWidget *extrawidget=0, bool nobgdcolorsel=false)

◆ deleteControllers()

void IVP1ChannelWidget::deleteControllers ( )
privateinherited

Definition at line 161 of file IVP1ChannelWidget.cxx.

162{
163 std::set<IVP1System *>::iterator it, itE = m_d->systems.end();
164 for (it=m_d->systems.begin();it!=itE;++it) {
165 // assert((*it)->state()==IVP1System::ERASED);
166 if (*it)
167 (*it)->deleteController();
168 }
169 if (m_d->controller)
170 m_d->controller->deleteLater();
171 m_d->controller = 0;
172}

◆ dockResized()

void IVP13DStandardChannelWidget::dockResized ( )
protectedvirtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 620 of file IVP13DStandardChannelWidget.cxx.

621{
622 VP1Msg::messageVerbose("IVP13DStandardChannelWidget::dockResized()");
623 QTimer::singleShot(0, this, SLOT(updateSnapshotDim()));
625}
virtual void dockResized()
static void messageVerbose(const QString &)
Definition VP1Msg.cxx:84

◆ emitRefreshInfoChanged()

void IVP1ChannelWidget::emitRefreshInfoChanged ( )
privateinherited

Definition at line 268 of file IVP1ChannelWidget.cxx.

269{
270 int nsysOn(0), nsysOnRefreshed(0);
271 QString sysrefreshing;
272 std::set<IVP1System *>::iterator it, itE = m_d->systems.end();
273 for (it=m_d->systems.begin();it!=itE;++it) {
274 if ((*it)->activeState()==IVP1System::ON) {
275 ++nsysOn;
276 if((*it)->state()==IVP1System::REFRESHED)
277 ++nsysOnRefreshed;
278 if ((*it)->isRefreshing()) {
279 assert(sysrefreshing.isEmpty());
280 sysrefreshing=(*it)->name();
281 }
282 }
283 }
284 //Fixme: Only emit if actually changed.
285 systemRefreshInfoChanged(sysrefreshing, nsysOn, nsysOnRefreshed);
286}
void systemRefreshInfoChanged(QString sysrefreshing, int nsysOn, int nsysOnRefreshed)

◆ getEvtTimestamp()

void IVP1ChannelWidget::getEvtTimestamp ( unsigned & timestamp)
protectedinherited

Definition at line 262 of file IVP1ChannelWidget.cxx.

263{
264 timestamp = m_d->timestamp;
265}

◆ getRunEvtNumber()

void IVP1ChannelWidget::getRunEvtNumber ( int & runnumber,
unsigned long long & eventnumber )
protectedinherited

Definition at line 255 of file IVP1ChannelWidget.cxx.

256{
257 runnumber = m_d->runnumber;
258 eventnumber = m_d->eventnumber;
259}
static std::vector< uint32_t > runnumber
Definition iLumiCalc.h:37

◆ getSnapshot()

QPixmap IVP13DStandardChannelWidget::getSnapshot ( bool transp = false,
int width = 0,
bool batch = false )
virtualinherited

Reimplemented from IVP13DChannelWidget.

Definition at line 443 of file IVP13DStandardChannelWidget.cxx.

444{
445 VP1Msg::messageDebug("IVP13DStandardChannelWidget::getSnapshot() - transparent bkg: "+QString::number(transp)+" , width: "+QString::number(width)+" , batch: "+QString::number(batch));
446 // SoToVRML2Action tovrml2;
447 // tovrml2.apply(m_d->selection);
448 // SoVRMLGroup *newroot = tovrml2.getVRML2SceneGraph();
449 // newroot->ref();
450 // SoOutput out;
451 // out.openFile("out.wrl");
452 // out.setHeaderString("#VRML V2.0 utf8");
453 // SoWriteAction wra(&out);
454 // wra.apply(newroot);
455 // out.closeFile();
456
457
458 VP1Msg::messageVerbose("checkBox_as_shown: " + QString::number(m_d->uisnapshot.checkBox_as_shown->isChecked()) );
459 VP1Msg::messageVerbose("spinBox_width: " + QString::number(m_d->uisnapshot.spinBox_width->value()) );
460 VP1Msg::messageVerbose("spinBox_height: " + QString::number(m_d->uisnapshot.spinBox_height->value()) );
461 VP1Msg::messageVerbose("checkBox_transp: " + QString::number(m_d->uisnapshot.checkBox_transp->isChecked()) );
462
463 if (m_d->uisnapshot.checkBox_as_shown->isChecked()) {
464 VP1Msg::messageVerbose("'As shown' option checked - using IVP13DChannelWidget::getSnapshot()");
466 }
467 VP1Msg::messageVerbose("'As shown' option NOT checked");
468
469 // if width is set programmatically, we set the new value in the GUI field
470 int original_width = 0;
471 if (width) {
472 VP1Msg::messageVerbose("'width' passed at function call. Setting the value of the GUI field to: " + QString::number(width));
473 original_width = m_d->uisnapshot.spinBox_width->value();
474 m_d->uisnapshot.spinBox_width->setValue( width );
475 }
476
477
478 // if transparent bkg is requested programmatically, we force it
479 if (transp) {
480 VP1Msg::messageVerbose("'transp' option set - using VP1QtInventorUtils::renderToPixmap() with transp set to 'true'");
482 m_d->uisnapshot.spinBox_width->value(),
483 m_d->uisnapshot.spinBox_height->value(),
484 true);
485 }
486
487 // if changed programatically, set the width back to the original value set by the user
488 if (width) m_d->uisnapshot.spinBox_width->setValue( original_width );
489
490 // default, with user's preferences from the GUI
491 VP1Msg::messageVerbose("save the screenshot with the default tool (with settings from GUI) - using VP1QtInventorUtils::renderToPixmap()");
493 m_d->uisnapshot.spinBox_width->value(),
494 m_d->uisnapshot.spinBox_height->value(),
495 m_d->uisnapshot.checkBox_transp->isChecked());
496
497 //return QPixmap(); // for DEBUG
498
499}
const double width
virtual QPixmap getSnapshot(bool transp=false, int width=0, bool batch=false)
static void messageDebug(const QString &)
Definition VP1Msg.cxx:39
static QPixmap renderToPixmap(VP1ExaminerViewer *ra, int pixels_x, int pixels_y, bool transparent_background=false, double actualRenderedSizeFact=1.0)

◆ goingToNextEvent()

void IVP13DChannelWidget::goingToNextEvent ( )
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 114 of file IVP13DChannelWidget.cxx.

115{
116 //Stop spinning and abort any ongoing animations:
117 m_d->it = m_d->renderareas.begin();
118 for (;m_d->it!=m_d->itE;++(m_d->it)) {
119 VP1ExaminerViewer* ra = *(m_d->it);
120 if (ra->getTypeId().isDerivedFrom(SoQtViewer::getClassTypeId())) {
121 VP1CameraHelper::abortAnyCurrentZoom(static_cast<SoQtViewer*>(ra)->getCamera());
122 if (ra->getTypeId().isDerivedFrom(SoQtExaminerViewer::getClassTypeId())) {
123 if (static_cast<SoQtExaminerViewer*>(ra)->isAnimating())
124 static_cast<SoQtExaminerViewer*>(ra)->stopAnimating();
125 }
126 }
127 }
128}
static void abortAnyCurrentZoom(SoCamera *camera)

◆ hasRefreshingSystem()

bool IVP1ChannelWidget::hasRefreshingSystem ( )
privateinherited

Definition at line 289 of file IVP1ChannelWidget.cxx.

289 {
290 std::set<IVP1System *>::iterator it, itE = m_d->systems.end();
291 for (it=m_d->systems.begin();it!=itE;++it) {
292 if ((*it)->isRefreshing())
293 return true;
294 }
295 return false;
296}

◆ information()

const QString & IVP1ChannelWidget::information ( ) const
inherited

Definition at line 185 of file IVP1ChannelWidget.cxx.

186{
187 return m_d->information;
188}

◆ init()

void VP1TrackCaloChannel::init ( )
virtual

Implements IVP1ChannelWidget.

Definition at line 26 of file VP1TrackCaloChannel.cxx.

27{
28
29 /* // TODO: to be updated when the new Fatras will be available
30 if (VP1FatrasSingleTrackSimSystem::singleTrackSimAlgorithmIsAvailable())
31 addSystem(new VP1FatrasSingleTrackSimSystem);
32 */
33
34
35 VP1GuideLineSystem * guidelinesystem = new VP1GuideLineSystem;
36 addSystem(guidelinesystem);
37
38 VP1GeometrySystem * geosys = new VP1GeometrySystem(VP1GeoFlags::AllMuonChambers);
39 addSystem(geosys);
40
41
42 VP1TrackSystem * tracksys = new VP1TrackSystem;
43 addSystem(tracksys);
44
45 VP1PrepRawDataSystem* prdsys = new VP1PrepRawDataSystem;
46 addSystem(prdsys);
47
48 addSystem(new VP1CaloCellSystem());
49
50// addSystem(new VP1CaloClusterSystem,IVP13DStandardChannelWidget::StartDisabled);
52
53 for (const QString& n : VP1SysConf::extraGeometrySystems())
55 for (const QString& n : VP1SysConf::extraTrackSystems())
57
58 VP1SysConf::setupStandardConnectionsAndOptions( guidelinesystem,geosys,tracksys,prdsys,0,VP1SysConf::EVENTSTUDIES );
59
60
61}
static QStringList extraGeometrySystems()
static void setupStandardConnectionsAndOptions(VP1GuideLineSystem *, VP1GeometrySystem *, VP1TrackSystem *, VP1PrepRawDataSystem *, VP1VertexSystem *, CHANNELMODE cm=GEOMSTUDIES)
static QStringList extraTrackSystems()

◆ isAccumulator()

bool IVP1ChannelWidget::isAccumulator ( ) const
virtualinherited

Definition at line 83 of file IVP1ChannelWidget.cxx.

84{
85 return false;
86}

◆ isAntiAliasing()

bool IVP13DStandardChannelWidget::isAntiAliasing ( )
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 100 of file IVP13DStandardChannelWidget.cxx.

101{
102 return m_d->viewer->isAntiAlias();
103}

◆ lastOfActiveSystemsRefreshed()

void IVP13DStandardChannelWidget::lastOfActiveSystemsRefreshed ( )
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 331 of file IVP13DStandardChannelWidget.cxx.

332{
333 VP1Msg::messageVerbose("IVP13DStandardChannelWidget::lastOfActiveSystemsRefreshed() called.");
334
335 if (m_d->need_initial_viewall) {
336 m_d->viewer->viewAll();
337 m_d->viewer->storeCameraParametersForReset();
338 m_d->need_initial_viewall=false;
339 }
340
341 if(VP1QtUtils::environmentVariableIsSet("VP1_SCREENSHOTS_DIR"))
342 m_d->autoSnapshot();
343
344 if (m_d->viewer->startTourEachEvent())
345 m_d->viewer->startTour();
346
347 // apparently this is the last method called when all systems have been drawn
348 // so we call here the renderPixmap() method is we are in "batch-mode"
349
350
351
352}
static bool environmentVariableIsSet(const QString &name)

◆ launchStereoEditor()

void IVP13DStandardChannelWidget::launchStereoEditor ( )
inherited

Definition at line 86 of file IVP13DStandardChannelWidget.cxx.

87{
88 m_d->viewer->launchStereoEditor();
89}

◆ message

void IVP1ChannelWidget::message ( QString )
signalinherited

◆ name()

const QString & IVP1ChannelWidget::name ( ) const
inherited

Definition at line 180 of file IVP1ChannelWidget.cxx.

181{
182 return m_d->name;
183}

◆ registerController()

void IVP1ChannelWidget::registerController ( QWidget * w)
protectedinherited

Definition at line 210 of file IVP1ChannelWidget.cxx.

211{
212 assert(m_d->canregistercontroller&&"Please only register controllers during create()");
213 assert(m_d->state==CONSTRUCTED);
214 assert(w&&"IVP1ChannelWidget::registerController(...) called with null pointer!!");
215 assert(!m_d->controller&&"IVP1ChannelWidget::registerController(...) called twice!!");
216 m_d->controller = w;
217 w->setParent(0);
218}

◆ registerRenderArea()

void IVP13DChannelWidget::registerRenderArea ( VP1ExaminerViewer * ra)
protectedinherited

Definition at line 94 of file IVP13DChannelWidget.cxx.

95{
96 if (!ra) {
97 message("Error - tried to register NULL render area!");
98 return;
99 }
100
102
103 m_d->renderareas.push_back(ra);
104 m_d->itE = m_d->renderareas.end();
105
106 //To make sure that it is the actual 3D widget that gets focus when
107 //we e.g. click anywhere else in the widget where the render area is
108 //placed within:
109 if (ra->getParentWidget()&&ra->getWidget())
110 ra->getParentWidget()->setFocusProxy(ra->getWidget());
111}
void message(QString)
static void ensureInitLineWidthAndPointSize(SoQtRenderArea *)

◆ registerSystem()

void IVP1ChannelWidget::registerSystem ( IVP1System * s)
protectedinherited

Definition at line 221 of file IVP1ChannelWidget.cxx.

222{
223 assert(m_d->canregistersystem&&"Please only register systems during the channel constructor");
224 assert(m_d->state==CONSTRUCTED);
225 assert(m_d->systems.find(s)==m_d->systems.end()&&"IVP1ChannelWidget::registerSystem(...) called twice on the same system!!");
226 m_d->systems.insert(s);
227 s->setChannel(this);
228}

◆ restoreFromState()

void IVP13DStandardChannelWidget::restoreFromState ( QByteArray ba)
virtualinherited

Reimplemented from IVP13DChannelWidget.

Definition at line 771 of file IVP13DStandardChannelWidget.cxx.

772{
773 VP1Msg::messageVerbose("IVP13DStandardChannelWidget::restoreFromState");
774
775 // ===> Setup stream for getting the contents of the byteArray:
776 QBuffer buffer(&ba);
777 buffer.open(QIODevice::ReadOnly);
778 QDataStream state(&buffer);
779 // ===> Check version and pass on state info to base class:
780 qint32 version;
781 state >> version;
782
783 message("Configuration file version: " + QString::number(version) );
784
785 if (version<0||version>7) {
786 message("Warning: State data in .vp1 file is in wrong format - ignoring!");
787 return;
788 }
789
790 QByteArray basestate;
791 state >> basestate;
793
794
795 // ===> Decode the state info:
796
797 if (version == 7)
798 m_d->restoreFromState_v7(state);
799
800 if (version<=3) {
801 QColor bgdcol_dummy;
802 state >> bgdcol_dummy;
803 }
804
805 //Switch systems on/off:
806 QMap<QString, bool> sysname2turnedon;
807 state >> sysname2turnedon;
808 QMap<QCheckBox*,IVP1System*>::const_iterator it = m_d->checkbox2system.constBegin();
809 while (it != m_d->checkbox2system.constEnd()) {
810 if (sysname2turnedon.contains(it.key()->text())) {
811 if (sysname2turnedon[it.key()->text()]!=it.key()->isChecked())
812 it.key()->setChecked(sysname2turnedon[it.key()->text()]);
813 } else {
814 message("Warning: Config data does not contain information about switched state of subsystem '"+it.key()->text()+"'");
815 }
816 ++it;
817 }
818
819 if (version<=2) {
820 // We stop here to avoid too messy code.
821 buffer.close();
822 return;
823 }
824
825 //Splitter:
826 QByteArray splitstate;
827 state >> splitstate;
828 if (m_d->extradisplaywidget_splitter)
829 m_d->extradisplaywidget_splitter->restoreState(splitstate);
830
831 //Viewer settings:
832 QByteArray ba_viewer;
833 state >> ba_viewer;
834 m_d->viewer->restoreFromState(ba_viewer);//Fixme: reset camera???
835 m_d->need_initial_viewall = false;
836
837 //Snapshot parameters:
838 bool aa_dummy, transp, widthfixed, as_shown;
839 if (version<=3)
840 state >> aa_dummy;
841 state >> transp; state >> widthfixed; state >> as_shown;
842 m_d->uisnapshot.checkBox_transp->setChecked(transp);
843 m_d->uisnapshot.checkBox_as_shown->setChecked(as_shown);
844 if (widthfixed) {
845 m_d->uisnapshot.radioButton_width->setChecked(true);
846 m_d->uisnapshot.radioButton_height->setChecked(false);
847 } else {
848 m_d->uisnapshot.radioButton_width->setChecked(false);
849 m_d->uisnapshot.radioButton_height->setChecked(true);
850 }
851 if (!as_shown) {
852 qint32 fixval;
853 state >> fixval;
854 if (widthfixed)
855 m_d->uisnapshot.spinBox_width->setValue(fixval);
856 else
857 m_d->uisnapshot.spinBox_height->setValue(fixval);
858 }
859
860 QString tabname;
861 state >> tabname;
862 if (m_d->tabwidget) {
863 for (int i = 0; i < m_d->tabwidget->count(); ++i) {
864 if (m_d->tabwidget->tabText(i) == tabname) {
865 m_d->tabwidget->setCurrentIndex(i);
866 break;
867 }
868 }
869 }
870
871 if (version==5) {
872 bool b;
873 state >> b;
874 }
875
876
877 // ===> Finish up:
878 buffer.close();
879}
virtual void restoreFromState(QByteArray)

◆ saveState()

QByteArray IVP13DStandardChannelWidget::saveState ( )
virtualinherited

Reimplemented from IVP13DChannelWidget.

Definition at line 628 of file IVP13DStandardChannelWidget.cxx.

629{
630 VP1Msg::messageVerbose("IVP13DStandardChannelWidget::saveState");
631
632
633 // NEW VERSION
634
635//
636// // ===> Setup stream writing to a byteArray:
637// QByteArray byteArray;
638// QBuffer buffer(&byteArray);
639// buffer.open(QIODevice::WriteOnly);
640// QDataStream out(&buffer);
641//
642// /*
643// * --- GET DATA TO BE SAVED ---
644// */
645//
646// //Systems turned on/off:
647// //Fixme: Make sure that if you have two copies of the same system,
648// //that the text in the checkbox gets appended some stuff like [1],
649// //[2], etc., so that the strings used here will be unique.
650// QMap<QString, bool> sysname2turnedon;
651// QMap<QCheckBox*,IVP1System*>::const_iterator it = m_d->checkbox2system.constBegin();
652// while (it != m_d->checkbox2system.constEnd()) {
653// sysname2turnedon.insert(it.key()->text(),it.key()->isChecked());
654// ++it;
655// }
656//
657//
658// // snapshot settings
659// bool transp_checked = m_d->uisnapshot.checkBox_transp->isChecked();
660// bool widthfixed = m_d->uisnapshot.radioButton_width->isChecked();
661// bool as_shown = m_d->uisnapshot.checkBox_as_shown->isChecked();
662//
663// bool locked_ratio = m_d->uisnapshot.checkBox_lockRatio->isChecked();
664//
665// qint32 width = (qint32)(m_d->uisnapshot.spinBox_width->value());
666// qint32 height = (qint32)(m_d->uisnapshot.spinBox_height->value());
667//
668// // image presets
669// bool isUsingPreset = m_d->uisnapshot.groupBox_imagePresets->isChecked();
670// bool is720p = m_d->uisnapshot.radioButton_720p->isChecked();
671// bool is1080p = m_d->uisnapshot.radioButton_1080p->isChecked();
672// bool is4K = m_d->uisnapshot.radioButton_4K->isChecked();
673// bool is8K = m_d->uisnapshot.radioButton_8K->isChecked();
674//
675// // active tab
676// QString tab_index = (m_d->tabwidget ? m_d->tabwidget->tabText(m_d->tabwidget->currentIndex()) : QString("") );
677//
678//
679// /*
680// * --- WRITE DATA ---
681// */
682//
683// // ------- SAVE -------
684// out << (qint32)7; //version
685// out << IVP13DChannelWidget::saveState();//Always include state info from the base class.
686// out << sysname2turnedon;
687// out << ( m_d->extradisplaywidget_splitter ? m_d->extradisplaywidget_splitter->saveState() : QByteArray() );
688// out << m_d->viewer->saveState();
689// out << transp_checked;
690// out << widthfixed;
691// out << as_shown;
692// out << locked_ratio; // new in v. 7
693// out << width; // new in v. 7
694// out << height; // new in v. 7
695// out << isUsingPreset; // new in v. 7
696// out << is720p; // new in v. 7
697// out << is1080p; // new in v. 7
698// out << is4K; // new in v. 7
699// out << is8K; // new in v. 7
700// out << tab_index;
701// // --------------------
702//
703// // ===> Finish up:
704// buffer.close();
705// return byteArray;
706//
707//
708
709
710
711 // OLD VERSION
712
713 // ===> Setup stream writing to a byteArray:
714 QByteArray byteArray;
715 QBuffer buffer(&byteArray);
716 buffer.open(QIODevice::WriteOnly);
717 QDataStream out(&buffer);
718
719 // ===> Write Data:
720
721 //Version & base state:
722 out << (qint32)6; //version
723 out << IVP13DChannelWidget::saveState();//Always include state info from the base class.
724
725 //version 3 had bgd color output here;
726
727 //Systems turned on/off:
728 //Fixme: Make sure that if you have two copies of the same system,
729 //that the text in the checkbox gets appended some stuff like [1],
730 //[2], etc., so that the strings used here will be unique.
731 QMap<QString, bool> sysname2turnedon;
732 QMap<QCheckBox*,IVP1System*>::const_iterator it = m_d->checkbox2system.constBegin();
733 while (it != m_d->checkbox2system.constEnd()) {
734 sysname2turnedon.insert(it.key()->text(),it.key()->isChecked());
735 ++it;
736 }
737
738 //Versions 3+ follow here.
739
740 out << sysname2turnedon;
741
742 out << ( m_d->extradisplaywidget_splitter ? m_d->extradisplaywidget_splitter->saveState() : QByteArray() );
743
744 out << m_d->viewer->saveState();
745
746 //version <=3 had bool here.
747
748 out << m_d->uisnapshot.checkBox_transp->isChecked();
749 bool widthfixed = m_d->uisnapshot.radioButton_width->isChecked();
750 bool as_shown = m_d->uisnapshot.checkBox_as_shown->isChecked();
751 out << widthfixed;
752 out << as_shown;
753 if (!as_shown)
754 out << (qint32)(widthfixed ? m_d->uisnapshot.spinBox_width->value() : m_d->uisnapshot.spinBox_height->value());
755
756 if (m_d->tabwidget)
757 out << m_d->tabwidget->tabText(m_d->tabwidget->currentIndex());
758 else
759 out << QString("");
760
761 //In version 5 we output a bool here.
762
763 // ===> Finish up:
764 buffer.close();
765 return byteArray;
766
767
768}
virtual QByteArray saveState()

◆ setAntiAliasing()

bool IVP13DStandardChannelWidget::setAntiAliasing ( bool aa)
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 93 of file IVP13DStandardChannelWidget.cxx.

94{
95 m_d->viewer->setAntiAlias(aa);
96 return true;
97}

◆ setCanRegister()

void IVP1ChannelWidget::setCanRegister ( const bool & controller,
const bool & system )
privateinherited

Definition at line 299 of file IVP1ChannelWidget.cxx.

300{
301 m_d->canregistercontroller=c;
302 m_d->canregistersystem=s;
303}

◆ setCloneID()

void IVP1ChannelWidget::setCloneID ( unsigned id)
privateinherited

Definition at line 203 of file IVP1ChannelWidget.cxx.

204{
205 m_d->cloneid=id;
207}
void uniqueNameChanged(const QString &)
const QString unique_name() const

◆ setEvtTimestamp()

void IVP1ChannelWidget::setEvtTimestamp ( unsigned timestamp)
protectedinherited

Definition at line 96 of file IVP1ChannelWidget.cxx.

97{
98 m_d->timestamp = timestamp;
99}

◆ setImageFromPresets

void IVP13DStandardChannelWidget::setImageFromPresets ( )
privateslotinherited

Definition at line 502 of file IVP13DStandardChannelWidget.cxx.

503{
504 VP1Msg::messageDebug("IVP13DStandardChannelWidget::setImageFromPresets()");
505
506 disconnect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
507 disconnect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
508
509 if (m_d->uisnapshot.radioButton_720p->isChecked()) {
510 m_d->uisnapshot.spinBox_width->setValue(1280);
511 m_d->uisnapshot.spinBox_height->setValue(720);
512 }
513 else if (m_d->uisnapshot.radioButton_1080p->isChecked()) {
514 m_d->uisnapshot.spinBox_width->setValue(1920);
515 m_d->uisnapshot.spinBox_height->setValue(1080);
516 }
517 else if (m_d->uisnapshot.radioButton_4K->isChecked()) {
518 m_d->uisnapshot.spinBox_width->setValue(4096);
519 m_d->uisnapshot.spinBox_height->setValue(2160);
520 }
521 else if (m_d->uisnapshot.radioButton_8K->isChecked()) {
522 m_d->uisnapshot.spinBox_width->setValue(8192);
523 m_d->uisnapshot.spinBox_height->setValue(4320);
524 }
525 else {
526 VP1Msg::messageDebug("ERROR! Sender unknown!!");
527 }
528
529 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
530 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
531
532 // update
534}

◆ setRunEvtNumber()

void IVP1ChannelWidget::setRunEvtNumber ( int runnumber,
unsigned long long eventnumber )
inherited

Definition at line 89 of file IVP1ChannelWidget.cxx.

90{
91 m_d->runnumber = runnumber;
92 m_d->eventnumber = eventnumber;
93}

◆ setState()

void IVP1ChannelWidget::setState ( const State & s)
privateinherited

Definition at line 108 of file IVP1ChannelWidget.cxx.

109{
110
111#ifndef NDEBUG
112 assert(s!=CONSTRUCTED);
113 if (s==READY) {
114 assert(m_d->state==CONSTRUCTED);
115 }
116 if (s==UNCREATED) {
117 assert(m_d->state==READY);
118 }
119#endif
120 m_d->state = s;
121}

◆ setUpdatesEnabled()

void IVP13DChannelWidget::setUpdatesEnabled ( bool enable)
inherited

Definition at line 83 of file IVP13DChannelWidget.cxx.

84{
85 m_d->it = m_d->renderareas.begin();
86 for (;m_d->it!=m_d->itE;++(m_d->it)) {
87 (*(m_d->it))->setAutoRedraw(enable);
88 }
89 IVP1ChannelWidget::setUpdatesEnabled(enable);
90}

◆ showControlsForSystem

void IVP13DStandardChannelWidget::showControlsForSystem ( )
protectedslotinherited

Definition at line 882 of file IVP13DStandardChannelWidget.cxx.

883{
884 if (!m_d->tabwidget)
885 return;
886 IVP1System * sys = static_cast<IVP1System*>(sender());
887 if (!sys) {
888 message("showControlsForSystem Error: Unable to determine system identity.");
889 return;
890 }
891 if (!m_d->sys2tabpage.contains(sys)) {
892 //Dont send warning here. The system in question might simply not have a controller!
893 return;
894 }
895
896 int index = m_d->tabwidget->indexOf(m_d->sys2tabpage[sys]);
897 if (index<0||!m_d->tabwidget->isTabEnabled(index)) {
898 message("Warning: Asked to show controller for a disabled system. Surely you jest?");
899 return;
900 }
901 m_d->tabwidget->setCurrentIndex(index);
902}
str index
Definition DeMoScan.py:362

◆ state()

IVP1ChannelWidget::State IVP1ChannelWidget::state ( ) const
privateinherited

Definition at line 102 of file IVP1ChannelWidget.cxx.

103{
104 return m_d->state;
105}

◆ stopSpinning()

void IVP13DStandardChannelWidget::stopSpinning ( )
protectedinherited

Definition at line 436 of file IVP13DStandardChannelWidget.cxx.

437{
438 if (m_d->viewer->isAnimating())
439 m_d->viewer->stopAnimating();
440}

◆ str() [1/30]

QString VP1String::str ( const Amg::Vector3D & t)
inlinestaticinherited

Definition at line 98 of file VP1String.h.

98{ return "("+str(t.x())+", "+str(t.y())+", "+str(t.z())+")"; }
static QString str(const QString &s)
Definition VP1String.h:49

◆ str() [2/30]

QString VP1String::str ( const bool b)
inlinestaticinherited

Definition at line 53 of file VP1String.h.

53{ return b?"True":"False"; }

◆ str() [3/30]

QString VP1String::str ( const char * c)
inlinestaticinherited

Definition at line 50 of file VP1String.h.

50{ return c; }

◆ str() [4/30]

QString VP1String::str ( const double & d)
inlinestaticinherited

Definition at line 81 of file VP1String.h.

81{ return QString::number(d); }

◆ str() [5/30]

QString VP1String::str ( const float & f)
inlinestaticinherited

Definition at line 82 of file VP1String.h.

82{ return QString::number(f); }

◆ str() [6/30]

template<class T>
QString VP1String::str ( const HepGeom::BasicVector3D< T > & t)
inlinestaticinherited

Definition at line 95 of file VP1String.h.

95{ return "("+str(t.x())+", "+str(t.y())+", "+str(t.z())+")"; }

◆ str() [7/30]

QString VP1String::str ( const QColor & c)
staticinherited

Definition at line 30 of file VP1String.cxx.

31{
32 return c.isValid() ? c.name() : "Invalid";
33}

◆ str() [8/30]

template<class T>
QString VP1String::str ( const QFlags< T > & f)
inlinestaticinherited

Definition at line 91 of file VP1String.h.

91{ return "0x"+QString::number(f, 16).toUpper().rightJustified(8,'0'); }

◆ str() [9/30]

template<class T>
QString VP1String::str ( const QList< T > & t)
inlinestaticinherited

Definition at line 102 of file VP1String.h.

102{ return "QList of size"+QString::number(t.size()); }

◆ str() [10/30]

QString VP1String::str ( const QString & s)
inlinestaticinherited

Definition at line 49 of file VP1String.h.

49{ return s; }

◆ str() [11/30]

QString VP1String::str ( const SbColor & c)
staticinherited

Definition at line 36 of file VP1String.cxx.

37{
39}
static QColor sbcol2qcol(const SbColor &)

◆ str() [12/30]

QString VP1String::str ( const SbVec2d & v)
staticinherited

Definition at line 61 of file VP1String.cxx.

61{ double x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }

◆ str() [13/30]

QString VP1String::str ( const SbVec2f & v)
staticinherited

Definition at line 62 of file VP1String.cxx.

62{ float x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }

◆ str() [14/30]

QString VP1String::str ( const SbVec2s & v)
staticinherited

Definition at line 63 of file VP1String.cxx.

63{ short x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }

◆ str() [15/30]

QString VP1String::str ( const SbVec3d & v)
staticinherited

Definition at line 64 of file VP1String.cxx.

64{ double x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }
#define z

◆ str() [16/30]

QString VP1String::str ( const SbVec3f & v)
staticinherited

Definition at line 65 of file VP1String.cxx.

65{ float x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }

◆ str() [17/30]

QString VP1String::str ( const SbVec3s & v)
staticinherited

Definition at line 66 of file VP1String.cxx.

66{ short x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }

◆ str() [18/30]

QString VP1String::str ( const SbVec4d & v)
staticinherited

Definition at line 67 of file VP1String.cxx.

67{ double x,y,z,t; v.getValue(x,y,z,t); return "("+str(x)+", "+str(y)+", "+str(z)+", "+str(t)+")"; }

◆ str() [19/30]

QString VP1String::str ( const SbVec4f & v)
staticinherited

Definition at line 68 of file VP1String.cxx.

68{ float x,y,z,t; v.getValue(x,y,z,t); return "("+str(x)+", "+str(y)+", "+str(z)+", "+str(t)+")"; }

◆ str() [20/30]

template<class T>
QString VP1String::str ( const T * t)
inlinestaticinherited

Definition at line 87 of file VP1String.h.

87{ return str(static_cast<const void* >(t)); }

◆ str() [21/30]

QString VP1String::str ( const void * p)
staticinherited

Definition at line 48 of file VP1String.cxx.

49{
50 if (p) {
51 std::ostringstream s;
52 s << p;
53 // Explicitly naming QString here avoids a cppcheck warning.
54 return QString (s.str().c_str());
55 } else {
56 return "NULL";
57 }
58}

◆ str() [22/30]

QString VP1String::str ( const VP1Interval & i)
staticinherited

Definition at line 42 of file VP1String.cxx.

43{
44 return i.toString();
45}

◆ str() [23/30]

QString VP1String::str ( int n)
inlinestaticinherited

Definition at line 77 of file VP1String.h.

77{ return QString::number(n); }

◆ str() [24/30]

QString VP1String::str ( long n)
inlinestaticinherited

Definition at line 75 of file VP1String.h.

75{ return QString::number(n); }

◆ str() [25/30]

QString VP1String::str ( qlonglong n)
inlinestaticinherited

Definition at line 79 of file VP1String.h.

79{ return QString::number(n); }

◆ str() [26/30]

QString VP1String::str ( qulonglong n)
inlinestaticinherited

Definition at line 80 of file VP1String.h.

80{ return QString::number(n); }

◆ str() [27/30]

QString VP1String::str ( short int n)
inlinestaticinherited

Definition at line 73 of file VP1String.h.

73{ return QString::number(n); }

◆ str() [28/30]

QString VP1String::str ( uint n)
inlinestaticinherited

Definition at line 78 of file VP1String.h.

78{ return QString::number(n); }

◆ str() [29/30]

QString VP1String::str ( ulong n)
inlinestaticinherited

Definition at line 76 of file VP1String.h.

76{ return QString::number(n); }

◆ str() [30/30]

QString VP1String::str ( unsigned short int n)
inlinestaticinherited

Definition at line 74 of file VP1String.h.

74{ return QString::number(n); }

◆ systemErased()

void IVP13DStandardChannelWidget::systemErased ( IVP1System * sys)
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 360 of file IVP13DStandardChannelWidget.cxx.

361{
362 IVP13DSystem * sys3d = static_cast<IVP13DSystem*>(sys);
363 if (sys3d)
364 sys3d->deselectAll();
365}
virtual void deselectAll(SoCooperativeSelection *exception_sel=0)

◆ systemRefreshed()

void IVP13DStandardChannelWidget::systemRefreshed ( IVP1System * )
virtualinherited

Reimplemented from IVP1ChannelWidget.

Definition at line 355 of file IVP13DStandardChannelWidget.cxx.

356{
357}

◆ systemRefreshInfoChanged

void IVP1ChannelWidget::systemRefreshInfoChanged ( QString sysrefreshing,
int nsysOn,
int nsysOnRefreshed )
signalinherited

◆ systems()

const std::set< IVP1System * > & IVP1ChannelWidget::systems ( )
privateinherited

Definition at line 231 of file IVP1ChannelWidget.cxx.

232{
233 return m_d->systems;
234}

◆ toggleSystemActive

void IVP13DStandardChannelWidget::toggleSystemActive ( )
privateslotinherited

Definition at line 368 of file IVP13DStandardChannelWidget.cxx.

369{
370 QCheckBox * cb = static_cast<QCheckBox*>(sender()); assert(cb);
371 m_d->updateSystemState(cb);
372}

◆ turnOff()

void IVP1ChannelWidget::turnOff ( IVP1System * s,
const bool & immediateErase = true )
protectedinherited

Definition at line 246 of file IVP1ChannelWidget.cxx.

247{
248 assert(s->channel()==this);
249 assert(m_d->systems.find(s)!=m_d->systems.end());
250 s->setActiveState(IVP1System::OFF,!immediateErase);
252}

◆ turnOn()

void IVP1ChannelWidget::turnOn ( IVP1System * s)
protectedinherited

Definition at line 237 of file IVP1ChannelWidget.cxx.

238{
239 assert(s->channel()==this);
240 assert(m_d->systems.find(s)!=m_d->systems.end());
241 s->setActiveState(IVP1System::ON);
243}

◆ type()

Type IVP13DChannelWidget::type ( ) const
inlinevirtualinherited

Implements IVP1ChannelWidget.

Definition at line 40 of file IVP13DChannelWidget.h.

40{ return THREEDIMENSIONAL; };

◆ uncreate()

void IVP1ChannelWidget::uncreate ( )
protectedvirtualinherited

Definition at line 155 of file IVP1ChannelWidget.cxx.

156{
157 assert(m_d->state==READY);
158}

◆ unique_name()

const QString IVP1ChannelWidget::unique_name ( ) const
inherited

Definition at line 175 of file IVP1ChannelWidget.cxx.

176{
177 return m_d->name+(m_d->cloneid?" ["+QString::number(m_d->cloneid)+"]":QString(""));//Fixme: make sure that it is forbidden to end a name with ' [.*]'!
178}

◆ uniqueNameChanged

void IVP1ChannelWidget::uniqueNameChanged ( const QString & )
signalinherited

◆ updateSnapshotDim

void IVP13DStandardChannelWidget::updateSnapshotDim ( )
privateslotinherited

Definition at line 538 of file IVP13DStandardChannelWidget.cxx.

539{
540 VP1Msg::messageDebug("IVP13DStandardChannelWidget::updateSnapshotDim()");
541
542 // if (!m_d->uisnapshot.checkBox_as_shown)
543// return;
544// if (sender()==m_d->uisnapshot.spinBox_width)
545// m_d->uisnapshot.radioButton_width->setChecked(true);
546// else if (sender()==m_d->uisnapshot.spinBox_height)
547// m_d->uisnapshot.radioButton_height->setChecked(true);
548
549 if (!m_d->uisnapshot.checkBox_as_shown)
550 return;
551
552 if (sender()==m_d->uisnapshot.spinBox_width)
553 m_d->uisnapshot.radioButton_width->setChecked(true);
554 else if (sender()==m_d->uisnapshot.spinBox_height)
555 m_d->uisnapshot.radioButton_height->setChecked(true);
556
557 /*
558 * Get widget width and height
559 * Note: the method "getNormalWidget" is from the "SoQtGLWidget" class
560 * and it returns a QWidget object
561 */
562 int onscreen_width = m_d->viewer->getNormalWidget()->geometry().width();
563 int onscreen_height = m_d->viewer->getNormalWidget()->geometry().height();
564
565 if ( m_d->uisnapshot.checkBox_as_shown->isChecked() ) {
566 disconnect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
567 disconnect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
568 m_d->uisnapshot.spinBox_width->setValue(onscreen_width);
569 m_d->uisnapshot.spinBox_height->setValue(onscreen_height);
570 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
571 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
572 } else {
573 if (m_d->uisnapshot.checkBox_lockRatio->isChecked()) {
574 VP1Msg::messageDebug("checkBox_lockRatio is checked - updating only rendering size");
575 if (m_d->uisnapshot.radioButton_width->isChecked()) {
576 disconnect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
577 m_d->uisnapshot.spinBox_height->setValue(static_cast<int>(m_d->uisnapshot.spinBox_width->value()*static_cast<double>(onscreen_height)/onscreen_width+0.5));
578 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
579 } else {
580 disconnect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
581 m_d->uisnapshot.spinBox_width->setValue(static_cast<int>(m_d->uisnapshot.spinBox_height->value()*static_cast<double>(onscreen_width)/onscreen_height+0.5));
582 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
583 }
584 }
585 else {
586 VP1Msg::messageDebug("checkBox_lockRatio is NOT checked - Updating the widget size as well");
587
588// if (m_d->uisnapshot.radioButton_width->isChecked() ) {
589// int newWidth = static_cast<int>(m_d->uisnapshot.spinBox_width->value() * static_cast<double>(onscreen_height) / m_d->uisnapshot.spinBox_height->value() + 0.5);
590// m_d->viewer->getNormalWidget()->resize(newWidth, onscreen_height);
591// } else if (m_d->uisnapshot.radioButton_height->isChecked()) {
592// int newHeight = static_cast<int>( onscreen_width * static_cast<double>(m_d->uisnapshot.spinBox_height->value()) / m_d->uisnapshot.spinBox_width->value() + 0.5);
593// m_d->viewer->resize(onscreen_width, newHeight);
594// }
595
596 }
597 }
598
599 //Finally, ensure that we are within the ranges:
600 if (m_d->uisnapshot.spinBox_width->value()>=m_d->uisnapshot.spinBox_width->maximum()) {
601 disconnect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
602 disconnect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
603 m_d->uisnapshot.spinBox_width->setValue(m_d->uisnapshot.spinBox_width->maximum());
604 m_d->uisnapshot.spinBox_height->setValue(static_cast<int>(m_d->uisnapshot.spinBox_width->value()*static_cast<double>(onscreen_height)/onscreen_width+0.5));
605 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
606 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
607 }
608 if (m_d->uisnapshot.spinBox_height->value()>=m_d->uisnapshot.spinBox_height->maximum()) {
609 disconnect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
610 disconnect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
611 m_d->uisnapshot.spinBox_height->setValue(m_d->uisnapshot.spinBox_height->maximum());
612 m_d->uisnapshot.spinBox_width->setValue(static_cast<int>(m_d->uisnapshot.spinBox_height->value()*static_cast<double>(onscreen_width)/onscreen_width+0.5));
613 connect(m_d->uisnapshot.spinBox_width,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
614 connect(m_d->uisnapshot.spinBox_height,SIGNAL(valueChanged(int)),this,SLOT(updateSnapshotDim()));
615 }
616
617}

Member Data Documentation

◆ m_d

Imp* IVP13DStandardChannelWidget::m_d
privateinherited

Definition at line 71 of file IVP13DStandardChannelWidget.h.


The documentation for this class was generated from the following files: