CMS 3D CMS Logo

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

#include <Fireworks/Core/interface/CmsShowMain.h>

Inheritance diagram for CmsShowMain:
CmsShowMainBase

Public Member Functions

void appendData ()
 
 CmsShowMain (int argc, char *argv[])
 
const fireworks::Contextcontext () const
 
void doExit ()
 
void fileChangedSlot (const TFile *file)
 
const fwlite::EventgetCurrentEvent () const
 
bool getGlobalTagCheck () const
 
bool getVersionCheck () const
 
void notified (TSocket *)
 
void openData ()
 
void openDataViaURL ()
 
void quit () override
 
void resetInitialization ()
 
 ~CmsShowMain () override
 
- Public Member Functions inherited from CmsShowMainBase
FWModelChangeManagerchangeManager ()
 
 CmsShowMainBase ()
 
FWColorManagercolorManager ()
 
const char * configFilename () const
 
FWConfigurationManagerconfigurationManager ()
 
void doFirstEvent ()
 
void doLastEvent ()
 
void doNextEvent ()
 
void doPreviousEvent ()
 
void draw ()
 
FWEventItemsManagereiManager ()
 
bool forward () const
 
const std::string & geometryFilename (void)
 
FWGeometrygetGeom ()
 
void goToRunEvent (edm::RunNumber_t, edm::LuminosityBlockNumber_t, edm::EventNumber_t)
 
FWGUIManagerguiManager ()
 
bool isPlaying () const
 
void loadGeometry ()
 
bool loop () const
 
FWModelChangeManagermodelChangeManager ()
 
void partialLoadConfiguration (const std::string &config)
 
void partialWriteToConfigFile (const std::string &config)
 
void playBackward ()
 
void playForward ()
 
void registerPhysicsObject (const FWPhysicsObjectDesc &iItem)
 
void reloadConfiguration (const std::string &config)
 
FWSelectionManagerselectionManager ()
 
void setAutoSaveAllViewsFormat (const std::string &fmt)
 
void setAutoSaveAllViewsHeight (int x)
 
void setConfigFilename (const std::string &f)
 
void setGeometryFilename (const std::string &filename)
 
void setPlayDelay (Float_t val)
 
void setPlayLoop ()
 
void setSimGeometryFilename (const std::string &filename, const std::string &geoname)
 
void setup (FWNavigatorBase *navigator, fireworks::Context *context, FWJobMetadataManager *metadataManager)
 
void setupActions ()
 
void setupAutoLoad (float x)
 
void setupConfiguration ()
 
void setupDebugSupport ()
 
void setupViewManagers ()
 
void startAutoLoadTimer ()
 
CmsShowTaskExecutorstartupTasks ()
 
void stopAutoLoadTimer ()
 
void unsetPlayLoop ()
 
FWViewManagerManagerviewManager ()
 
void writePartialToConfigFile ()
 
void writeToConfigFile (const std::string &config)
 
void writeToCurrentConfigFile ()
 
virtual ~CmsShowMainBase () noexcept(false)
 

Protected Member Functions

void eventChangedImp () override
 
- Protected Member Functions inherited from CmsShowMainBase
fireworks::Contextcontext ()
 
void eventChangedSlot ()
 
void sendVersionInfo ()
 

Private Member Functions

void autoLoadNewEvent () override
 
void checkKeyBindingsOnPLayEventsStateChanged () override
 
void checkLiveMode ()
 
void checkPosition () override
 
 CmsShowMain (const CmsShowMain &)
 
void connectSocket ()
 
void filterButtonClicked ()
 
void loadGeometry ()
 
void navigatorChangedFilterState (int)
 
const CmsShowMainoperator= (const CmsShowMain &)
 
void postFiltering (bool)
 
void preFiltering ()
 
void reachedBeginning ()
 
void reachedEnd ()
 
void setLiveMode ()
 
void setLoadedAnyInputFileAfterStartup ()
 
void setupDataHandling ()
 
void setupSocket (unsigned int)
 
void stopPlaying () override
 

Private Attributes

std::unique_ptr< fireworks::Contextm_context
 
bool m_globalTagCheck
 
std::vector< std::string > m_inputFiles
 
UInt_t m_lastXEventSerial
 
bool m_live
 
int m_liveTimeout
 
std::unique_ptr< SignalTimerm_liveTimer
 
bool m_loadedAnyInputFile
 
std::unique_ptr< FWLiteJobMetadataManagerm_metadataManager
 
std::unique_ptr< TMonitor > m_monitor
 
std::unique_ptr< CmsShowNavigatorm_navigator
 
bool m_noVersionCheck
 
const TFile * m_openFile
 
std::unique_ptr< CmsShowSearchFilesm_searchFiles
 

Detailed Description

Description: Displays an fwlite::Event in ROOT

Usage: <usage>

Definition at line 58 of file CmsShowMain.h.

Constructor & Destructor Documentation

◆ CmsShowMain() [1/2]

CmsShowMain::CmsShowMain ( int  argc,
char *  argv[] 
)

Definition at line 125 of file CmsShowMain.cc.

126  : CmsShowMainBase(),
127  m_navigator(new CmsShowNavigator(*this)),
131  m_loadedAnyInputFile(false),
132  m_openFile(nullptr),
133  m_live(false),
134  m_liveTimer(new SignalTimer()),
135  m_liveTimeout(600000),
137  m_noVersionCheck(false),
138  m_globalTagCheck(true) {
139  try {
140  TGLWidget* w = TGLWidget::Create(gClient->GetDefaultRoot(), kTRUE, kTRUE, nullptr, 10, 10);
141  delete w;
142  } catch (std::exception& iException) {
143  fwLog(fwlog::kError) << "Failed creating an OpenGL window: " << iException.what()
144  << "\n"
145  "Things to check:\n"
146  "- Is DISPLAY environment variable set?\n"
147  "- Are OpenGL libraries installed?\n"
148  "- If running remotely, make sure you use 'ssh -X' or 'ssh -Y'.\n"
149  "See also: https://twiki.cern.ch/twiki/bin/viewauth/CMS/WorkBookFireworks\n";
150  gSystem->Exit(1);
151  }
152 
153  eiManager()->setContext(m_context.get());
154 
155  std::string descString(argv[0]);
156  descString += " [options] <data file>\nGeneral";
157 
158  namespace po = boost::program_options;
159  po::options_description desc(descString);
160  desc.add_options()(kInputFilesCommandOpt, po::value<std::vector<std::string> >(), "Input root files")(
161  kConfigFileCommandOpt, po::value<std::string>(), "Include configuration file")(
162  kNoConfigFileCommandOpt, "Empty configuration")(kNoVersionCheck, "No file version check")(
163  kGeomFileCommandOpt, po::value<std::string>(), "Reco geometry file. Default is cmsGeom10.root")(
165  po::value<std::string>(),
166  "Geometry file for browsing in table view. Default is CmsSimGeom-14.root. Can be simulation or reco geometry in "
167  "TGeo format")(kTGeoNameCommandOpt, po::value<std::string>(), "TGeoManager name. The default is \"cmsGeo;1\"")(
168  kFieldCommandOpt, po::value<double>(), "Set magnetic field value explicitly. Default is auto-field estimation")(
169  kRootInteractiveCommandOpt, "Enable root interactive prompt")(
170  kSoftCommandOpt, "Try to force software rendering to avoid problems with bad hardware drivers")(
171  kExpertCommandOpt, "Enable PF user plugins.")(kHelpCommandOpt, "Display help message");
172 
173  po::options_description livedesc("Live Event Display");
174  livedesc.add_options()(
175  kPlayCommandOpt, po::value<float>(), "Start in play mode with given interval between events in seconds")(
176  kPortCommandOpt, po::value<unsigned int>(), "Listen to port for new data files to open")(
177  kLoopCommandOpt, "Loop events in play mode")(
179  po::value<unsigned int>(),
180  "Chain up to a given number of recently open files. Default is 1 - no chain")(
181  kLiveCommandOpt, "Enforce playback mode if a user is not using display")(
183  po::value<std::string>(),
184  "Auto-save all views with given prefix (run_event_lumi_view.<auto-save-type> is appended)")(
185  kAutoSaveType, po::value<std::string>(), "Image type of auto-saved views, png or jpg (png is default)")(
186  kAutoSaveHeight, po::value<int>(), "Screenshots height when auto-save-all-views is enabled")(
187  kSyncAllViews, "Synchronize all views on new event");
188 
189  po::options_description debugdesc("Debug");
190  debugdesc.add_options()(kLogLevelCommandOpt,
191  po::value<unsigned int>(),
192  "Set log level starting from 0 to 4 : kDebug, kInfo, kWarning, kError")(
193  kEveCommandOpt, "Show TEveBrowser to help debug problems")(kEnableFPE,
194  "Enable detection of floating-point exceptions");
195 
196  po::options_description tcachedesc("TreeCache");
197  tcachedesc.add_options()(kLogTreeCacheOpt, "Log tree cache operations and status")(
198  kSizeTreeCacheOpt, po::value<int>(), "Set size of TTreeCache for data access in MB (default is 50)")(
199  kPrefetchTreeCacheOpt, "Enable prefetching");
200 
201  po::options_description rnrdesc("Appearance");
202  rnrdesc.add_options()(kFreePaletteCommandOpt, "Allow free color selection (requires special configuration!)")(
203  kZeroWinOffsets, "Disable auto-detection of window position offsets")(kAdvancedRenderCommandOpt,
204  "Enable line anti-aliasing");
205  po::positional_options_description p;
206  p.add(kInputFilesOpt, -1);
207 
208  po::options_description hiddendesc("hidden");
209  hiddendesc.add_options();
210 
211  po::options_description all("");
212  all.add(desc).add(rnrdesc).add(livedesc).add(debugdesc).add(tcachedesc);
213 
214  int newArgc = argc;
215  char** newArgv = argv;
216  po::variables_map vm;
217  try {
218  po::store(po::command_line_parser(newArgc, newArgv).options(all).positional(p).run(), vm);
219 
220  po::notify(vm);
221  } catch (const std::exception& e) {
222  // Return with exit status 0 to avoid generating crash reports
223 
224  fwLog(fwlog::kError) << e.what() << std::endl;
225  std::cout << all << std::endl;
226  exit(0);
227  }
228 
229  if (vm.count(kHelpOpt)) {
230  std::cout << all << std::endl;
231  exit(0);
232  }
233 
234  if (vm.count(kLogLevelCommandOpt)) {
235  fwlog::LogLevel level = (fwlog::LogLevel)(vm[kLogLevelCommandOpt].as<unsigned int>());
237  }
238 
239  if (vm.count(kLogTreeCacheOpt)) {
240  fwLog(fwlog::kInfo) << "Enabling logging of TTreCache operations." << std::endl;
242  }
243 
244  if (vm.count(kPrefetchTreeCacheOpt)) {
245  fwLog(fwlog::kInfo) << "Enabling TTreCache prefetching." << std::endl;
247  }
248 
249  if (vm.count(kSizeTreeCacheOpt)) {
250  int ds = vm[kSizeTreeCacheOpt].as<int>();
251  if (ds < 0)
252  throw std::runtime_error("tree-cache-size should be non negative");
253  if (ds > 8192)
254  throw std::runtime_error("tree-cache-size should be smaller than 8 GB");
255  fwLog(fwlog::kInfo) << "Setting default TTreeCache size to " << ds << " MB." << std::endl;
256  FWTTreeCache::SetDefaultCacheSize(ds * 1024 * 1024);
257  }
258 
259  if (vm.count(kPlainRootCommandOpt)) {
260  fwLog(fwlog::kInfo) << "Plain ROOT prompt requested" << std::endl;
261  return;
262  }
263 
264  const char* cmspath = gSystem->Getenv("CMSSW_BASE");
265  if (nullptr == cmspath) {
266  throw std::runtime_error("CMSSW_BASE environment variable not set");
267  }
268 
269  // input file
270  if (vm.count(kInputFilesOpt)) {
271  m_inputFiles = vm[kInputFilesOpt].as<std::vector<std::string> >();
272  }
273 
274  if (m_inputFiles.empty())
275  fwLog(fwlog::kInfo) << "No data file given." << std::endl;
276  else if (m_inputFiles.size() == 1)
277  fwLog(fwlog::kInfo) << "Input " << m_inputFiles.front() << std::endl;
278  else
279  fwLog(fwlog::kInfo) << m_inputFiles.size() << " input files; first: " << m_inputFiles.front()
280  << ", last: " << m_inputFiles.back() << std::endl;
281 
282  // configuration file
283  if (vm.count(kConfigFileOpt)) {
284  setConfigFilename(vm[kConfigFileOpt].as<std::string>());
285  if (access(configFilename(), R_OK) == -1) {
286  fwLog(fwlog::kError) << "Specified configuration file does not exist. Quitting.\n";
287  exit(1);
288  }
289 
290  fwLog(fwlog::kInfo) << "Config " << configFilename() << std::endl;
291  } else {
292  if (vm.count(kNoConfigFileOpt)) {
293  fwLog(fwlog::kInfo) << "No configuration is loaded.\n";
295  }
296  }
297 
298  // geometry
299  if (vm.count(kGeomFileOpt)) {
300  m_globalTagCheck = false;
301  setGeometryFilename(vm[kGeomFileOpt].as<std::string>());
302  fwLog(fwlog::kInfo) << "Geometry file " << geometryFilename() << "\n";
303  }
304 
305  if (vm.count(kSimGeomFileOpt)) {
306  if (vm.count(kTGeoNameOpt))
307  setSimGeometryFilename(vm[kSimGeomFileOpt].as<std::string>(), vm[kTGeoNameOpt].as<std::string>());
308  else
309  setSimGeometryFilename(vm[kSimGeomFileOpt].as<std::string>(), "cmsGeo;1");
310  } else {
311  setSimGeometryFilename("cmsSimGeom-14.root", "cmsGeo;1");
312  }
313 
314  // Free-palette palette
315  if (vm.count(kFreePaletteCommandOpt)) {
317  fwLog(fwlog::kInfo) << "Palette restriction removed on user request!\n";
318  }
319  bool eveMode = vm.count(kEveOpt);
320 
321  //Delay creating guiManager and enabling autoloading until here so that if we have a 'help' request we don't
322  // open any graphics or build dictionaries
324 
325  TEveManager::Create(kFALSE, eveMode ? "FIV" : "FI");
326 
327  if (vm.count(kExpertCommandOpt)) {
328  m_context->setHidePFBuilders(false);
329  } else {
330  m_context->setHidePFBuilders(true);
331  }
332 
333  if (vm.count(kExpertCommandOpt)) {
334  m_context->setHidePFBuilders(false);
335  } else {
336  m_context->setHidePFBuilders(true);
337  }
338 
339  setup(m_navigator.get(), m_context.get(), m_metadataManager.get());
340 
341  if (vm.count(kZeroWinOffsets)) {
343  fwLog(fwlog::kInfo) << "Window offsets reset on user request!\n";
344  }
345 
346  if (vm.count(kAdvancedRenderOpt)) {
347  TEveLine::SetDefaultSmooth(kTRUE);
348  }
349 
350  //figure out where to find macros
351  //tell ROOT where to find our macros
353  // first check if port is not occupied
354  if (vm.count(kPortCommandOpt)) {
355  f = boost::bind(&CmsShowMain::setupSocket, this, vm[kPortCommandOpt].as<unsigned int>());
356  startupTasks()->addTask(f);
357  }
358  if (!geometryFilename().empty()) {
359  f = boost::bind(&CmsShowMainBase::loadGeometry, this);
360  startupTasks()->addTask(f);
361  }
362  f = boost::bind(&CmsShowMainBase::setupViewManagers, this);
363  startupTasks()->addTask(f);
364 
365  if (vm.count(kLiveCommandOpt)) {
366  f = boost::bind(&CmsShowMain::setLiveMode, this);
367  startupTasks()->addTask(f);
368  }
369 
370  if (vm.count(kFieldCommandOpt)) {
371  m_context->getField()->setSource(FWMagField::kUser);
372  m_context->getField()->setUserField(vm[kFieldCommandOpt].as<double>());
373  }
374 
375  f = boost::bind(&CmsShowMain::setupDataHandling, this);
376  startupTasks()->addTask(f);
377 
378  if (vm.count(kLoopOpt))
379  setPlayLoop();
380 
381  if (eveMode) {
382  f = boost::bind(&CmsShowMainBase::setupDebugSupport, this);
383  startupTasks()->addTask(f);
384  }
385  if (vm.count(kChainCommandOpt)) {
386  f = boost::bind(
388  startupTasks()->addTask(f);
389  }
390  if (vm.count(kPlayOpt)) {
391  f = boost::bind(&CmsShowMainBase::setupAutoLoad, this, vm[kPlayOpt].as<float>());
392  startupTasks()->addTask(f);
393  }
394 
395  if (vm.count(kAutoSaveAllViews)) {
396  std::string type = "png";
397  if (vm.count(kAutoSaveType)) {
398  type = vm[kAutoSaveType].as<std::string>();
399  if (type != "png" && type != "jpg") {
400  fwLog(fwlog::kError) << "Specified auto-save type not supported. Quitting.\n";
401  exit(1);
402  }
403  }
404  std::string fmt = vm[kAutoSaveAllViews].as<std::string>();
405  fmt += "%u_%u_%llu_%s.";
406  fmt += type;
408  }
409  if (vm.count(kAutoSaveHeight)) {
411  }
412  if (vm.count(kSyncAllViews)) {
414  }
415  if (vm.count(kNoVersionCheck)) {
416  m_noVersionCheck = true;
417  }
418  if (vm.count(kEnableFPE)) {
419  gSystem->SetFPEMask();
420  }
421 
422  if (vm.count(kPortCommandOpt)) {
423  f = boost::bind(&CmsShowMain::connectSocket, this);
424  startupTasks()->addTask(f);
425  }
426 
428 }

References CmsShowTaskExecutor::addTask(), python.cmstools::all(), dir2webdir::argc, cmsBatch::argv, CmsShowMainBase::configFilename(), CmsShowMainBase::configurationManager(), connectSocket(), gather_cfg::cout, MillePedeFileConverter_cfg::e, CmsShowMainBase::eiManager(), relativeConstraints::empty, FWLiteEnabler::enable(), FWColorPopup::EnableFreePalette(), cppFunctionSkipper::exception, beamvalidation::exit(), f, fwLog, CmsShowMainBase::geometryFilename(), CmsShowMainBase::guiManager(), kAdvancedRenderCommandOpt, kAdvancedRenderOpt, kAutoSaveAllViews, kAutoSaveHeight, kAutoSaveType, kChainCommandOpt, kConfigFileCommandOpt, kConfigFileOpt, kEnableFPE, fwlog::kError, kEveCommandOpt, kEveOpt, kExpertCommandOpt, kFieldCommandOpt, kFreePaletteCommandOpt, kGeomFileCommandOpt, kGeomFileOpt, kHelpCommandOpt, kHelpOpt, fwlog::kInfo, kInputFilesCommandOpt, kInputFilesOpt, kLiveCommandOpt, kLogLevelCommandOpt, kLogTreeCacheOpt, kLoopCommandOpt, kLoopOpt, kNoConfigFileCommandOpt, kNoConfigFileOpt, kNoVersionCheck, kPlainRootCommandOpt, kPlayCommandOpt, kPlayOpt, kPortCommandOpt, kPrefetchTreeCacheOpt, kRootInteractiveCommandOpt, kSimGeomFileCommandOpt, kSimGeomFileOpt, kSizeTreeCacheOpt, kSoftCommandOpt, kSyncAllViews, kTGeoNameCommandOpt, kTGeoNameOpt, FWMagField::kUser, kZeroWinOffsets, personalPlayback::level, CmsShowMainBase::loadGeometry(), FWTTreeCache::LoggingOn(), m_context, m_globalTagCheck, m_inputFiles, m_metadataManager, m_navigator, m_noVersionCheck, AlcaSiPixelAliHarvester0T_cff::options, AlCaHLTBitMon_ParallelJobs::p, FWTTreeCache::PrefetchingOn(), FWGUIManager::resetWMOffsets(), writedatasetfile::run, CmsShowMainBase::setAutoSaveAllViewsFormat(), CmsShowMainBase::setAutoSaveAllViewsHeight(), CmsShowMainBase::setConfigFilename(), FWEventItemsManager::setContext(), FWTTreeCache::SetDefaultCacheSize(), CmsShowMainBase::setGeometryFilename(), FWConfigurationManager::setIgnore(), setLiveMode(), CmsShowNavigator::setMaxNumberOfFilesToChain(), CmsShowMainBase::setPlayLoop(), fwlog::setPresentLogLevel(), CmsShowMainBase::setSimGeometryFilename(), CmsShowMainBase::setup(), CmsShowMainBase::setupAutoLoad(), setupDataHandling(), CmsShowMainBase::setupDebugSupport(), setupSocket(), CmsShowMainBase::setupViewManagers(), CmsShowTaskExecutor::startDoingTasks(), CmsShowMainBase::startupTasks(), AlCaHLTBitMon_QueryRunRegistry::string, FWEveViewManager::syncAllViews(), and w.

◆ ~CmsShowMain()

CmsShowMain::~CmsShowMain ( )
override

Definition at line 434 of file CmsShowMain.cc.

434  {
435  //avoids a seg fault from eve which happens if eve is terminated after the GUI is gone
437 }

References FWSelectionManager::clearSelection(), and CmsShowMainBase::selectionManager().

◆ CmsShowMain() [2/2]

CmsShowMain::CmsShowMain ( const CmsShowMain )
private

Member Function Documentation

◆ appendData()

void CmsShowMain::appendData ( )

Definition at line 539 of file CmsShowMain.cc.

539  {
540  const char* kRootType[] = {"ROOT files", "*.root", nullptr, nullptr};
541  TGFileInfo fi;
542  fi.fFileTypes = kRootType;
543  /* this is how things used to be done:
544  fi.fIniDir = ".";
545  this is bad because the destructor calls delete[] on fIniDir.
546  */
547  fi.fIniDir = new char[128];
548  strncpy(fi.fIniDir, ".", 127);
549  guiManager()->updateStatus("waiting for data file ...");
550  new TGFileDialog(gClient->GetDefaultRoot(), guiManager()->getMainFrame(), kFDOpen, &fi);
551  guiManager()->updateStatus("loading file ...");
552  if (fi.fFilename) {
553  m_navigator->appendFile(fi.fFilename, false, false);
555  checkPosition();
556  draw();
557  guiManager()->titleChanged(m_navigator->frameTitle());
558  }
559  guiManager()->clearStatus();
560 }

References checkPosition(), FWGUIManager::clearStatus(), CmsShowMainBase::draw(), FWGUIManager::getMainFrame(), CmsShowMainBase::guiManager(), m_navigator, setLoadedAnyInputFileAfterStartup(), FWGUIManager::titleChanged(), and FWGUIManager::updateStatus().

Referenced by setupDataHandling().

◆ autoLoadNewEvent()

void CmsShowMain::autoLoadNewEvent ( )
overrideprivatevirtual

Implements CmsShowMainBase.

Definition at line 588 of file CmsShowMain.cc.

588  {
590 
591  // case when start with no input file
592  if (!m_loadedAnyInputFile) {
593  if (m_monitor.get())
595  return;
596  }
597 
598  bool reachedEnd = (forward() && m_navigator->isLastEvent()) || (!forward() && m_navigator->isFirstEvent());
599 
600  if (loop() && reachedEnd) {
601  forward() ? m_navigator->firstEvent() : m_navigator->lastEvent();
602  draw();
603  } else if (!reachedEnd) {
604  forward() ? m_navigator->nextEvent() : m_navigator->previousEvent();
605  draw();
606  }
607 
608  // stop loop in case no loop or monitor mode
609  if (reachedEnd && (loop() || m_monitor.get()) == kFALSE) {
610  if (forward() && m_navigator->isLastEvent()) {
612  checkPosition();
613  }
614 
615  if ((!forward()) && m_navigator->isFirstEvent()) {
617  checkPosition();
618  }
619  } else
621 }

References checkPosition(), CmsShowMainBase::draw(), FWGUIManager::enableActions(), CmsShowMainBase::forward(), CmsShowMainBase::guiManager(), CmsShowMainBase::loop(), m_loadedAnyInputFile, m_monitor, m_navigator, reachedEnd(), CmsShowMainBase::startAutoLoadTimer(), and CmsShowMainBase::stopAutoLoadTimer().

◆ checkKeyBindingsOnPLayEventsStateChanged()

void CmsShowMain::checkKeyBindingsOnPLayEventsStateChanged ( )
overrideprivatevirtual

Reimplemented from CmsShowMainBase.

Definition at line 785 of file CmsShowMain.cc.

785  {
786  if (m_live) {
787  Int_t keycode = gVirtualX->KeysymToKeycode((int)kKey_Space);
788  Window_t id = FWGUIManager::getGUIManager()->getMainFrame()->GetId();
789  gVirtualX->GrabKey(id, keycode, 0, isPlaying());
790  }
791 }

References FWGUIManager::getGUIManager(), FWGUIManager::getMainFrame(), CmsShowMainBase::isPlaying(), and m_live.

◆ checkLiveMode()

void CmsShowMain::checkLiveMode ( )
private

Definition at line 848 of file CmsShowMain.cc.

848  {
849  m_liveTimer->TurnOff();
850 
851 #if defined(R__LINUX)
852  TGX11* x11 = dynamic_cast<TGX11*>(gVirtualX);
853  if (x11) {
854  XAnyEvent* ev = (XAnyEvent*)x11->GetNativeEvent();
855  // printf("serial %d \n",(int)ev->serial );
856 
857  if (!isPlaying() && m_lastXEventSerial == ev->serial)
859  m_lastXEventSerial = ev->serial;
860  }
861 #endif
862  m_liveTimer->SetTime((Long_t)(m_liveTimeout));
863  m_liveTimer->Reset();
864  m_liveTimer->TurnOn();
865 }

References ev, CmsShowMainBase::guiManager(), CmsShowMainBase::isPlaying(), m_lastXEventSerial, m_liveTimeout, m_liveTimer, FWGUIManager::playEventsAction(), and CSGContinuousAction::switchMode().

Referenced by setLiveMode().

◆ checkPosition()

void CmsShowMain::checkPosition ( )
overrideprivatevirtual

◆ connectSocket()

void CmsShowMain::connectSocket ( )
private

Definition at line 725 of file CmsShowMain.cc.

725 { m_monitor->Connect("Ready(TSocket*)", "CmsShowMain", this, "notified(TSocket*)"); }

References m_monitor.

Referenced by CmsShowMain().

◆ context()

const fireworks::Context* CmsShowMain::context ( ) const
inline

Definition at line 77 of file CmsShowMain.h.

77 { return m_context.get(); };

References m_context.

Referenced by fileChangedSlot(), CmsShowNavigator::getProcessList(), and CmsShowNavigator::updateFileFilters().

◆ doExit()

void CmsShowMain::doExit ( )

Definition at line 456 of file CmsShowMain.cc.

456  {
457  // pre terminate eve
458  m_context->deleteEveElements();
460 
461  // sleep at least 150 ms
462  // windows in ROOT GUI are destroyed in 150 ms timeout after
463  gSystem->Sleep(151);
464  gSystem->ProcessEvents();
465  gSystem->ExitLoop();
466 }

References FWGUIManager::evePreTerminate(), CmsShowMainBase::guiManager(), and m_context.

Referenced by DieTimer::Notify().

◆ eventChangedImp()

void CmsShowMain::eventChangedImp ( )
overrideprotectedvirtual

◆ fileChangedSlot()

void CmsShowMain::fileChangedSlot ( const TFile *  file)

◆ filterButtonClicked()

void CmsShowMain::filterButtonClicked ( )
private

Definition at line 810 of file CmsShowMain.cc.

810  {
811  if (m_navigator->getFilterState() == CmsShowNavigator::kWithdrawn)
813  else
814  m_navigator->toggleFilterEnable();
815 }

References CmsShowMainBase::guiManager(), CmsShowNavigator::kWithdrawn, m_navigator, and FWGUIManager::showEventFilterGUI().

Referenced by setupDataHandling().

◆ getCurrentEvent()

const fwlite::Event * CmsShowMain::getCurrentEvent ( ) const

Definition at line 484 of file CmsShowMain.cc.

484  {
485  if (m_navigator.get())
486  return static_cast<const fwlite::Event*>(m_navigator->getCurrentEvent());
487  return nullptr;
488 }

References m_navigator.

Referenced by eventChangedImp(), and fileChangedSlot().

◆ getGlobalTagCheck()

bool CmsShowMain::getGlobalTagCheck ( ) const
inline

Definition at line 79 of file CmsShowMain.h.

79 { return m_globalTagCheck; }

References m_globalTagCheck.

Referenced by CmsShowNavigator::appendFile(), and CmsShowNavigator::openFile().

◆ getVersionCheck()

bool CmsShowMain::getVersionCheck ( ) const
inline

Definition at line 78 of file CmsShowMain.h.

78 { return !m_noVersionCheck; }

References m_noVersionCheck.

Referenced by CmsShowNavigator::appendFile(), and CmsShowNavigator::openFile().

◆ loadGeometry()

void CmsShowMain::loadGeometry ( )
private

◆ navigatorChangedFilterState()

void CmsShowMain::navigatorChangedFilterState ( int  state)
private

Definition at line 802 of file CmsShowMain.cc.

802  {
804  if (m_navigator->filesNeedUpdate() == false) {
805  guiManager()->setFilterButtonText(m_navigator->filterStatusMessage());
806  checkPosition();
807  }
808 }

References checkPosition(), CmsShowMainBase::guiManager(), m_navigator, FWGUIManager::setFilterButtonIcon(), and FWGUIManager::setFilterButtonText().

Referenced by setupDataHandling().

◆ notified()

void CmsShowMain::notified ( TSocket *  iSocket)

Definition at line 727 of file CmsShowMain.cc.

727  {
728  TServerSocket* server = dynamic_cast<TServerSocket*>(iSocket);
729  if (server) {
730  TSocket* connection = server->Accept();
731  if (connection) {
732  m_monitor->Add(connection);
733  std::stringstream s;
734  s << "received connection from " << iSocket->GetInetAddress().GetHostName();
735  guiManager()->updateStatus(s.str().c_str());
736  }
737  } else {
738  char buffer[4096];
739  memset(buffer, 0, sizeof(buffer));
740  if (iSocket->RecvRaw(buffer, sizeof(buffer)) <= 0) {
741  m_monitor->Remove(iSocket);
742  //std::stringstream s;
743  //s << "closing connection to "<<iSocket->GetInetAddress().GetHostName();
744  //m_guiManager->updateStatus(s.str().c_str());
745  delete iSocket;
746  return;
747  }
749  std::string::size_type lastNonSpace = fileName.find_last_not_of(" \n\t");
750  if (lastNonSpace != std::string::npos) {
751  fileName.erase(lastNonSpace + 1);
752  }
753 
754  std::stringstream s;
755  s << "New file notified '" << fileName << "'";
756  guiManager()->updateStatus(s.str().c_str());
757 
758  bool appended = m_navigator->appendFile(fileName, true, m_live);
759 
760  if (appended) {
761  if (m_live && isPlaying() && forward())
762  m_navigator->activateNewFileOnNextEvent();
763  else if (!isPlaying())
764  checkPosition();
765 
766  // bootstrap case: --port and no input file
767  if (!m_loadedAnyInputFile) {
768  m_loadedAnyInputFile = true;
769  m_navigator->firstEvent();
770  if (!isPlaying())
771  draw();
772  }
773 
774  std::stringstream sr;
775  sr << "New file registered '" << fileName << "'";
776  guiManager()->updateStatus(sr.str().c_str());
777  } else {
778  std::stringstream sr;
779  sr << "New file NOT registered '" << fileName << "'";
780  guiManager()->updateStatus(sr.str().c_str());
781  }
782  }
783 }

References edmScanValgrind::buffer, checkPosition(), CmsShowMainBase::draw(), MillePedeFileConverter_cfg::fileName, CmsShowMainBase::forward(), CmsShowMainBase::guiManager(), CmsShowMainBase::isPlaying(), m_live, m_loadedAnyInputFile, m_monitor, m_navigator, alignCSCRings::s, contentValuesFiles::server, AlCaHLTBitMon_QueryRunRegistry::string, and FWGUIManager::updateStatus().

◆ openData()

void CmsShowMain::openData ( )

Definition at line 515 of file CmsShowMain.cc.

515  {
516  const char* kRootType[] = {"ROOT files", "*.root", nullptr, nullptr};
517  TGFileInfo fi;
518  fi.fFileTypes = kRootType;
519  /* this is how things used to be done:
520  fi.fIniDir = ".";
521  this is bad because the destructor calls delete[] on fIniDir.
522  */
523  fi.fIniDir = new char[128];
524  strncpy(fi.fIniDir, ".", 127);
525  guiManager()->updateStatus("waiting for data file ...");
526  new TGFileDialog(gClient->GetDefaultRoot(), guiManager()->getMainFrame(), kFDOpen, &fi);
527  guiManager()->updateStatus("loading file ...");
528  if (fi.fFilename) {
529  m_navigator->openFile(fi.fFilename);
530 
532  m_navigator->firstEvent();
533  checkPosition();
534  draw();
535  }
536  guiManager()->clearStatus();
537 }

References checkPosition(), FWGUIManager::clearStatus(), CmsShowMainBase::draw(), FWGUIManager::getMainFrame(), CmsShowMainBase::guiManager(), m_navigator, setLoadedAnyInputFileAfterStartup(), and FWGUIManager::updateStatus().

Referenced by setupDataHandling().

◆ openDataViaURL()

void CmsShowMain::openDataViaURL ( )

Definition at line 562 of file CmsShowMain.cc.

562  {
563  if (m_searchFiles.get() == nullptr) {
564  m_searchFiles = std::unique_ptr<CmsShowSearchFiles>(
565  new CmsShowSearchFiles("", "Open Remote Data Files", guiManager()->getMainFrame(), 500, 400));
566  m_searchFiles->CenterOnParent(kTRUE, TGTransientFrame::kBottomRight);
567  }
568  std::string chosenFile = m_searchFiles->chooseFileFromURL();
569  if (!chosenFile.empty()) {
570  guiManager()->updateStatus("loading file ...");
571  if (m_navigator->openFile(chosenFile)) {
573  m_navigator->firstEvent();
574  checkPosition();
575  draw();
576  guiManager()->clearStatus();
577  } else {
578  guiManager()->updateStatus("failed to load data file");
579  }
580  }
581 }

References checkPosition(), FWGUIManager::clearStatus(), CmsShowMainBase::draw(), CmsShowMainBase::guiManager(), m_navigator, m_searchFiles, setLoadedAnyInputFileAfterStartup(), AlCaHLTBitMon_QueryRunRegistry::string, and FWGUIManager::updateStatus().

Referenced by setupDataHandling().

◆ operator=()

const CmsShowMain& CmsShowMain::operator= ( const CmsShowMain )
private

◆ postFiltering()

void CmsShowMain::postFiltering ( bool  doDraw)
private

Definition at line 822 of file CmsShowMain.cc.

822  {
823  // called only filter is changed
824  guiManager()->clearStatus();
825  if (doDraw)
826  draw();
827  checkPosition();
828  guiManager()->setFilterButtonText(m_navigator->filterStatusMessage());
829 }

References checkPosition(), FWGUIManager::clearStatus(), CmsShowMainBase::draw(), CmsShowMainBase::guiManager(), m_navigator, and FWGUIManager::setFilterButtonText().

Referenced by setupDataHandling().

◆ preFiltering()

void CmsShowMain::preFiltering ( )
private

Definition at line 817 of file CmsShowMain.cc.

817  {
818  // called only if filter has changed
819  guiManager()->updateStatus("Filtering events");
820 }

References CmsShowMainBase::guiManager(), and FWGUIManager::updateStatus().

◆ quit()

void CmsShowMain::quit ( )
overridevirtual

Implements CmsShowMainBase.

Definition at line 454 of file CmsShowMain.cc.

454 { new DieTimer(this); }

◆ reachedBeginning()

void CmsShowMain::reachedBeginning ( )
private

◆ reachedEnd()

void CmsShowMain::reachedEnd ( )
private

Referenced by autoLoadNewEvent().

◆ resetInitialization()

void CmsShowMain::resetInitialization ( )

Definition at line 511 of file CmsShowMain.cc.

511  {
512  //printf("Need to reset\n");
513 }

◆ setLiveMode()

void CmsShowMain::setLiveMode ( )
private

Definition at line 833 of file CmsShowMain.cc.

833  {
834  m_live = true;
835  m_liveTimer.reset(new SignalTimer());
836  m_liveTimer->timeout_.connect(boost::bind(&CmsShowMain::checkLiveMode, this));
837 
838  Window_t rootw, childw;
839  Int_t root_x, root_y, win_x, win_y;
840  UInt_t mask;
841  gVirtualX->QueryPointer(gClient->GetDefaultRoot()->GetId(), rootw, childw, root_x, root_y, win_x, win_y, mask);
842 
843  m_liveTimer->SetTime(m_liveTimeout);
844  m_liveTimer->Reset();
845  m_liveTimer->TurnOn();
846 }

References checkLiveMode(), m_live, m_liveTimeout, and m_liveTimer.

Referenced by CmsShowMain().

◆ setLoadedAnyInputFileAfterStartup()

void CmsShowMain::setLoadedAnyInputFileAfterStartup ( )
private

Definition at line 707 of file CmsShowMain.cc.

707  {
708  if (m_loadedAnyInputFile == false) {
709  m_loadedAnyInputFile = true;
710  if ((configFilename()[0] == '\0') && (configurationManager()->getIgnore() == false))
712  }
713 }

References CmsShowMainBase::configFilename(), CmsShowMainBase::configurationManager(), m_loadedAnyInputFile, and CmsShowMainBase::setupConfiguration().

Referenced by appendData(), openData(), and openDataViaURL().

◆ setupDataHandling()

void CmsShowMain::setupDataHandling ( )
private

Definition at line 643 of file CmsShowMain.cc.

643  {
644  guiManager()->updateStatus("Setting up data handling...");
645 
646  // navigator filtering ->
647  m_navigator->fileChanged_.connect(boost::bind(&CmsShowMain::fileChangedSlot, this, _1));
648  m_navigator->editFiltersExternally_.connect(boost::bind(&FWGUIManager::updateEventFilterEnable, guiManager(), _1));
649  m_navigator->filterStateChanged_.connect(boost::bind(&CmsShowMain::navigatorChangedFilterState, this, _1));
650  m_navigator->postFiltering_.connect(boost::bind(&CmsShowMain::postFiltering, this, _1));
651 
652  // navigator fitlering <-
654  guiManager()->filterButtonClicked_.connect(boost::bind(&CmsShowMain::filterButtonClicked, this));
655 
656  // Data handling. File related and therefore not in the base class.
657  if (guiManager()->getAction(cmsshow::sOpenData) != nullptr)
658  guiManager()->getAction(cmsshow::sOpenData)->activated.connect(sigc::mem_fun(*this, &CmsShowMain::openData));
659  if (guiManager()->getAction(cmsshow::sAppendData) != nullptr)
660  guiManager()->getAction(cmsshow::sAppendData)->activated.connect(sigc::mem_fun(*this, &CmsShowMain::appendData));
661  if (guiManager()->getAction(cmsshow::sSearchFiles) != nullptr)
662  guiManager()
664  ->activated.connect(sigc::mem_fun(*this, &CmsShowMain::openDataViaURL));
665 
666  setupActions();
667  // init data from CmsShowNavigator configuration, can do this with signals since there were not connected yet
668  guiManager()->setFilterButtonIcon(m_navigator->getFilterState());
669 
670  for (unsigned int ii = 0; ii < m_inputFiles.size(); ++ii) {
671  const std::string& fname = m_inputFiles[ii];
672  if (fname.empty())
673  continue;
674  guiManager()->updateStatus("loading data file ...");
675  if (!m_navigator->appendFile(fname, false, false)) {
676  guiManager()->updateStatus("failed to load data file");
677  } else {
678  m_loadedAnyInputFile = true;
679  }
680  }
681 
682  if (m_loadedAnyInputFile) {
683  m_navigator->firstEvent();
684  checkPosition();
685  if (configurationManager()->getIgnore())
686  guiManager()->initEmpty();
687  else
689  } else {
690  if (configFilename()[0] == '\0') {
691  guiManager()->initEmpty();
692  } else {
694  }
695 
696  bool geoBrowser = (configFilename()[0] != '\0') && (eiManager()->begin() == eiManager()->end());
697 
698  if (m_monitor.get() == nullptr && (configurationManager()->getIgnore() == false) && (!geoBrowser)) {
699  if (m_inputFiles.empty())
700  openDataViaURL();
701  else
702  openData();
703  }
704  }
705 }

References CSGAction::activated, appendData(), FWEventItemsManager::begin(), checkPosition(), CmsShowMainBase::configFilename(), CmsShowMainBase::configurationManager(), CmsShowMainBase::eiManager(), FWEventItemsManager::end(), fileChangedSlot(), filterButtonClicked(), FWGUIManager::filterButtonClicked_, alignmentValidation::fname, FWGUIManager::getAction(), FWConfigurationManager::getIgnore(), CmsShowMainBase::guiManager(), cuy::ii, FWGUIManager::initEmpty(), m_inputFiles, m_loadedAnyInputFile, m_monitor, m_navigator, navigatorChangedFilterState(), openData(), openDataViaURL(), postFiltering(), cmsshow::sAppendData, FWGUIManager::setFilterButtonIcon(), CmsShowMainBase::setupActions(), CmsShowMainBase::setupConfiguration(), CmsShowNavigator::showEventFilterGUI(), FWGUIManager::showEventFilterGUI_, cmsshow::sOpenData, cmsshow::sSearchFiles, AlCaHLTBitMon_QueryRunRegistry::string, FWGUIManager::updateEventFilterEnable(), and FWGUIManager::updateStatus().

Referenced by CmsShowMain().

◆ setupSocket()

void CmsShowMain::setupSocket ( unsigned int  iSocket)
private

Definition at line 715 of file CmsShowMain.cc.

715  {
716  m_monitor = std::unique_ptr<TMonitor>(new TMonitor);
717  TServerSocket* server = new TServerSocket(iSocket, kTRUE);
718  if (server->GetErrorCode()) {
719  fwLog(fwlog::kError) << "CmsShowMain::setupSocket, can't create socket on port " << iSocket << "." << std::endl;
720  exit(0);
721  }
722  m_monitor->Add(server);
723 }

References beamvalidation::exit(), fwLog, fwlog::kError, m_monitor, and contentValuesFiles::server.

Referenced by CmsShowMain().

◆ stopPlaying()

void CmsShowMain::stopPlaying ( )
overrideprivatevirtual

Member Data Documentation

◆ m_context

std::unique_ptr<fireworks::Context> CmsShowMain::m_context
private

Definition at line 116 of file CmsShowMain.h.

Referenced by CmsShowMain(), context(), and doExit().

◆ m_globalTagCheck

bool CmsShowMain::m_globalTagCheck
private

Definition at line 131 of file CmsShowMain.h.

Referenced by CmsShowMain(), and getGlobalTagCheck().

◆ m_inputFiles

std::vector<std::string> CmsShowMain::m_inputFiles
private

Definition at line 118 of file CmsShowMain.h.

Referenced by CmsShowMain(), and setupDataHandling().

◆ m_lastXEventSerial

UInt_t CmsShowMain::m_lastXEventSerial
private

Definition at line 128 of file CmsShowMain.h.

Referenced by checkLiveMode().

◆ m_live

bool CmsShowMain::m_live
private

◆ m_liveTimeout

int CmsShowMain::m_liveTimeout
private

Definition at line 127 of file CmsShowMain.h.

Referenced by checkLiveMode(), and setLiveMode().

◆ m_liveTimer

std::unique_ptr<SignalTimer> CmsShowMain::m_liveTimer
private

Definition at line 126 of file CmsShowMain.h.

Referenced by checkLiveMode(), and setLiveMode().

◆ m_loadedAnyInputFile

bool CmsShowMain::m_loadedAnyInputFile
private

◆ m_metadataManager

std::unique_ptr<FWLiteJobMetadataManager> CmsShowMain::m_metadataManager
private

Definition at line 115 of file CmsShowMain.h.

Referenced by CmsShowMain(), eventChangedImp(), and fileChangedSlot().

◆ m_monitor

std::unique_ptr<TMonitor> CmsShowMain::m_monitor
private

◆ m_navigator

std::unique_ptr<CmsShowNavigator> CmsShowMain::m_navigator
private

◆ m_noVersionCheck

bool CmsShowMain::m_noVersionCheck
private

Definition at line 130 of file CmsShowMain.h.

Referenced by CmsShowMain(), and getVersionCheck().

◆ m_openFile

const TFile* CmsShowMain::m_openFile
private

Definition at line 120 of file CmsShowMain.h.

Referenced by eventChangedImp(), and fileChangedSlot().

◆ m_searchFiles

std::unique_ptr<CmsShowSearchFiles> CmsShowMain::m_searchFiles
private

Definition at line 122 of file CmsShowMain.h.

Referenced by openDataViaURL().

CmsShowMainBase::configFilename
const char * configFilename() const
Definition: CmsShowMainBase.h:75
personalPlayback.level
level
Definition: personalPlayback.py:22
kEnableFPE
static const char *const kEnableFPE
Definition: CmsShowMain.cc:118
kLogLevelCommandOpt
static const char *const kLogLevelCommandOpt
Definition: CmsShowMain.cc:95
cmsshow::sSearchFiles
const std::string sSearchFiles
Definition: ActionsList.cc:14
cmsBatch.argv
argv
Definition: cmsBatch.py:279
fwLog
#define fwLog(_level_)
Definition: fwLog.h:45
CmsShowMainBase::configurationManager
FWConfigurationManager * configurationManager()
Definition: CmsShowMainBase.h:56
FWGUIManager::filterButtonClicked_
sigc::signal< void > filterButtonClicked_
Definition: FWGUIManager.h:202
CmsShowMain::m_liveTimeout
int m_liveTimeout
Definition: CmsShowMain.h:127
fireworks::Context
Definition: Context.h:41
CmsShowMainBase::changeManager
FWModelChangeManager * changeManager()
Definition: CmsShowMainBase.h:54
CmsShowMainBase::setupConfiguration
void setupConfiguration()
Definition: CmsShowMainBase.cc:315
CmsShowMainBase::eventChangedImp
virtual void eventChangedImp()
Definition: CmsShowMainBase.cc:142
FWTTreeCache::SetDefaultCacheSize
static void SetDefaultCacheSize(int def_size)
Definition: FWTTreeCache.cc:29
FWGUIManager::enableActions
void enableActions(bool enable=true)
Definition: FWGUIManager.cc:316
kEveCommandOpt
static const char *const kEveCommandOpt
Definition: CmsShowMain.cc:100
CmsShowMainBase::loadGeometry
void loadGeometry()
Definition: CmsShowMainBase.cc:388
FWGUIManager::setFilterButtonIcon
void setFilterButtonIcon(int)
Definition: FWGUIManager.cc:1271
kSoftCommandOpt
static const char *const kSoftCommandOpt
Definition: CmsShowMain.cc:105
FWMagField::kNone
Definition: FWMagField.h:18
CmsShowMainBase::guiManager
FWGUIManager * guiManager()
Definition: CmsShowMainBase.h:61
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
kNoConfigFileCommandOpt
static const char *const kNoConfigFileCommandOpt
Definition: CmsShowMain.cc:90
dir2webdir.argc
argc
Definition: dir2webdir.py:39
CmsShowMainFrame::enableNavigatorControls
void enableNavigatorControls()
Definition: CmsShowMainFrame.cc:567
FWGUIManager::playEventsAction
CSGContinuousAction * playEventsAction()
Definition: FWGUIManager.cc:350
FWGUIManager::evePreTerminate
void evePreTerminate()
Definition: FWGUIManager.cc:241
kLiveCommandOpt
static const char *const kLiveCommandOpt
Definition: CmsShowMain.cc:111
CmsShowMainBase::loop
bool loop() const
Definition: CmsShowMainBase.h:107
kInputFilesCommandOpt
static const char *const kInputFilesCommandOpt
Definition: CmsShowMain.cc:80
kInputFilesOpt
static const char *const kInputFilesOpt
Definition: CmsShowMain.cc:79
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
kHelpCommandOpt
static const char *const kHelpCommandOpt
Definition: CmsShowMain.cc:104
FWConfigurationManager::setIgnore
void setIgnore()
Definition: FWConfigurationManager.h:50
gather_cfg.cout
cout
Definition: gather_cfg.py:144
FWGUIManager::resetWMOffsets
void resetWMOffsets()
Definition: FWGUIManager.cc:1319
CmsShowMain::setupDataHandling
void setupDataHandling()
Definition: CmsShowMain.cc:643
kPrefetchTreeCacheOpt
static const char *const kPrefetchTreeCacheOpt
Definition: CmsShowMain.cc:98
kPlainRootCommandOpt
static const char *const kPlainRootCommandOpt
Definition: CmsShowMain.cc:108
FWGeometry::applyGlobalTag
void applyGlobalTag(const std::string &gt)
Definition: FWGeometry.cc:56
CmsShowMainBase::setSimGeometryFilename
void setSimGeometryFilename(const std::string &filename, const std::string &geoname)
Definition: CmsShowMainBase.h:94
CmsShowMain::setLoadedAnyInputFileAfterStartup
void setLoadedAnyInputFileAfterStartup()
Definition: CmsShowMain.cc:707
kRootInteractiveCommandOpt
static const char *const kRootInteractiveCommandOpt
Definition: CmsShowMain.cc:109
kAutoSaveType
static const char *const kAutoSaveType
Definition: CmsShowMain.cc:115
CmsShowMainBase::setup
void setup(FWNavigatorBase *navigator, fireworks::Context *context, FWJobMetadataManager *metadataManager)
Definition: CmsShowMainBase.cc:196
CmsShowMain::m_navigator
std::unique_ptr< CmsShowNavigator > m_navigator
Definition: CmsShowMain.h:114
kAdvancedRenderCommandOpt
static const char *const kAdvancedRenderCommandOpt
Definition: CmsShowMain.cc:102
MillePedeFileConverter_cfg.fileName
fileName
Definition: MillePedeFileConverter_cfg.py:32
CmsShowMain::navigatorChangedFilterState
void navigatorChangedFilterState(int)
Definition: CmsShowMain.cc:802
FWLiteJobMetadataUpdateRequest
Definition: FWLiteJobMetadataUpdateRequest.h:12
CmsShowMainBase::setAutoSaveAllViewsHeight
void setAutoSaveAllViewsHeight(int x)
Definition: CmsShowMainBase.h:128
FWGUIManager::showEventFilterGUI_
sigc::signal< void, const TGWindow * > showEventFilterGUI_
Definition: FWGUIManager.h:203
FWSelectionManager::clearSelection
void clearSelection()
Definition: FWSelectionManager.cc:63
CmsShowMain::m_context
std::unique_ptr< fireworks::Context > m_context
Definition: CmsShowMain.h:116
FWGUIManager::titleChanged
void titleChanged(const char *title)
Definition: FWGUIManager.cc:318
CmsShowMainBase::setConfigFilename
void setConfigFilename(const std::string &f)
Definition: CmsShowMainBase.h:74
python.cmstools.all
def all(container)
workaround iterator generators for ROOT classes
Definition: cmstools.py:26
CmsShowMain::checkPosition
void checkPosition() override
Definition: CmsShowMain.cc:625
CmsShowMain::setupSocket
void setupSocket(unsigned int)
Definition: CmsShowMain.cc:715
CmsShowMain::m_loadedAnyInputFile
bool m_loadedAnyInputFile
Definition: CmsShowMain.h:119
CmsShowNavigator
Definition: CmsShowNavigator.h:36
CmsShowMain::m_metadataManager
std::unique_ptr< FWLiteJobMetadataManager > m_metadataManager
Definition: CmsShowMain.h:115
FWGUIManager::getMainFrame
CmsShowMainFrame * getMainFrame() const
Definition: FWGUIManager.h:196
edmScanValgrind.buffer
buffer
Definition: edmScanValgrind.py:171
cmsshow::sOpenData
const std::string sOpenData
Definition: ActionsList.cc:12
FWGUIManager::getAction
CSGAction * getAction(const std::string name)
Definition: FWGUIManager.cc:348
CmsShowSearchFiles
Definition: CmsShowSearchFiles.h:35
FWGUIManager::updateStatus
void updateStatus(const char *status)
Definition: FWGUIManager.cc:367
alignCSCRings.s
s
Definition: alignCSCRings.py:92
fwlog::LogLevel
LogLevel
Definition: fwLog.h:35
trigger::size_type
uint16_t size_type
Definition: TriggerTypeDefs.h:18
CmsShowMainBase::setupActions
void setupActions()
Definition: CmsShowMainBase.cc:73
CmsShowMain::setLiveMode
void setLiveMode()
Definition: CmsShowMain.cc:833
FWTTreeCache::LoggingOn
static void LoggingOn()
Definition: FWTTreeCache.cc:21
kLoopCommandOpt
static const char *const kLoopCommandOpt
Definition: CmsShowMain.cc:94
kAutoSaveHeight
static const char *const kAutoSaveHeight
Definition: CmsShowMain.cc:116
CmsShowMainBase::setAutoSaveAllViewsFormat
void setAutoSaveAllViewsFormat(const std::string &fmt)
Definition: CmsShowMainBase.h:127
CmsShowMainBase::CmsShowMainBase
CmsShowMainBase()
Definition: CmsShowMainBase.cc:49
w
const double w
Definition: UKUtility.cc:23
FWColorPopup::EnableFreePalette
static void EnableFreePalette()
Definition: FWColorSelect.cc:129
FWLiteJobMetadataManager
Definition: FWLiteJobMetadataManager.h:12
FWMagField::getSource
ESource getSource() const
Definition: FWMagField.h:31
kSimGeomFileCommandOpt
static const char *const kSimGeomFileCommandOpt
Definition: CmsShowMain.cc:86
kSizeTreeCacheOpt
static const char *const kSizeTreeCacheOpt
Definition: CmsShowMain.cc:97
CmsShowMainBase::colorManager
FWColorManager * colorManager()
Definition: CmsShowMainBase.h:55
CSGAction::activated
sigc::signal< void > activated
Definition: CSGAction.h:100
kPlayCommandOpt
static const char *const kPlayCommandOpt
Definition: CmsShowMain.cc:92
kHelpOpt
static const char *const kHelpOpt
Definition: CmsShowMain.cc:103
CmsShowMainBase::setupAutoLoad
void setupAutoLoad(float x)
Definition: CmsShowMainBase.cc:294
kGeomFileCommandOpt
static const char *const kGeomFileCommandOpt
Definition: CmsShowMain.cc:84
CmsShowMainBase::isPlaying
bool isPlaying() const
Definition: CmsShowMainBase.h:118
CmsShowMainBase::draw
void draw()
Definition: CmsShowMainBase.cc:173
CmsShowMainBase::startupTasks
CmsShowTaskExecutor * startupTasks()
Definition: CmsShowMainBase.h:66
CmsShowMainBase::stopPlaying
virtual void stopPlaying()
Definition: CmsShowMainBase.cc:367
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
kChainCommandOpt
static const char *const kChainCommandOpt
Definition: CmsShowMain.cc:110
CmsShowMainBase::setupDebugSupport
void setupDebugSupport()
Definition: CmsShowMainBase.cc:342
cppFunctionSkipper.exception
exception
Definition: cppFunctionSkipper.py:10
FWMagField::resetFieldEstimate
void resetFieldEstimate() const
Definition: FWMagField.cc:135
CmsShowMainBase::startAutoLoadTimer
void startAutoLoadTimer()
Definition: CmsShowMainBase.cc:303
FWLiteEnabler::enable
static void enable()
enable automatic library loading
Definition: FWLiteEnabler.cc:46
FWGUIManager::initEmpty
void initEmpty()
Definition: FWGUIManager.cc:1321
CmsShowNavigator::kWithdrawn
Definition: CmsShowNavigator.h:38
FWEveViewManager::syncAllViews
static void syncAllViews()
Definition: FWEveViewManager.h:76
CmsShowNavigator::setMaxNumberOfFilesToChain
void setMaxNumberOfFilesToChain(unsigned int i)
Definition: CmsShowNavigator.h:99
CmsShowMain::m_openFile
const TFile * m_openFile
Definition: CmsShowMain.h:120
kNoVersionCheck
static const char *const kNoVersionCheck
Definition: CmsShowMain.cc:120
kZeroWinOffsets
static const char *const kZeroWinOffsets
Definition: CmsShowMain.cc:119
CmsShowMainBase::geometryFilename
const std::string & geometryFilename(void)
Definition: CmsShowMainBase.h:91
FWGUIManager::disablePrevious
void disablePrevious()
Definition: FWGUIManager.cc:358
contentValuesFiles.server
server
Definition: contentValuesFiles.py:37
FWTTreeCache::PrefetchingOn
static void PrefetchingOn()
Definition: FWTTreeCache.cc:25
FWEventItemsManager::end
const_iterator end() const
Definition: FWEventItemsManager.cc:300
kSyncAllViews
static const char *const kSyncAllViews
Definition: CmsShowMain.cc:117
fireworks::Context::getGeom
FWGeometry * getGeom() const
Definition: Context.h:72
CmsShowNavigator::showEventFilterGUI
void showEventFilterGUI(const TGWindow *p)
Definition: CmsShowNavigator.cc:650
cmsshow::sAppendData
const std::string sAppendData
Definition: ActionsList.cc:13
CmsShowMain::m_noVersionCheck
bool m_noVersionCheck
Definition: CmsShowMain.h:130
kAutoSaveAllViews
static const char *const kAutoSaveAllViews
Definition: CmsShowMain.cc:114
CmsShowMainBase::setupViewManagers
void setupViewManagers()
Definition: CmsShowMainBase.cc:107
CmsShowTaskExecutor::TaskFunctor
boost::function0< void > TaskFunctor
Definition: CmsShowTaskExecutor.h:35
FWGUIManager::disableNext
void disableNext()
Definition: FWGUIManager.cc:360
FrontierConditions_GlobalTag_cff.file
file
Definition: FrontierConditions_GlobalTag_cff.py:13
CmsShowMain::getCurrentEvent
const fwlite::Event * getCurrentEvent() const
Definition: CmsShowMain.cc:484
kFieldCommandOpt
static const char *const kFieldCommandOpt
Definition: CmsShowMain.cc:112
CmsShowMain::m_live
bool m_live
Definition: CmsShowMain.h:125
CmsShowMainBase::setGeometryFilename
void setGeometryFilename(const std::string &filename)
Definition: CmsShowMainBase.h:90
CmsShowMainBase::stopAutoLoadTimer
void stopAutoLoadTimer()
Definition: CmsShowMainBase.cc:310
kLogTreeCacheOpt
static const char *const kLogTreeCacheOpt
Definition: CmsShowMain.cc:96
CmsShowMain::m_lastXEventSerial
UInt_t m_lastXEventSerial
Definition: CmsShowMain.h:128
CmsShowMain::filterButtonClicked
void filterButtonClicked()
Definition: CmsShowMain.cc:810
FWGUIManager::setFilterButtonText
void setFilterButtonText(const char *txt)
Definition: FWGUIManager.cc:1269
CmsShowMainBase::selectionManager
FWSelectionManager * selectionManager()
Definition: CmsShowMainBase.h:59
CmsShowMainBase::forward
bool forward() const
Definition: CmsShowMainBase.h:106
kSimGeomFileOpt
static const char *const kSimGeomFileOpt
Definition: CmsShowMain.cc:85
fwlog::setPresentLogLevel
void setPresentLogLevel(LogLevel)
Definition: fwLog.cc:47
CmsShowMain::openDataViaURL
void openDataViaURL()
Definition: CmsShowMain.cc:562
FWGUIManager::getGUIManager
static FWGUIManager * getGUIManager()
Definition: FWGUIManager.cc:685
DieTimer
Definition: CmsShowMain.cc:439
FWConfigurationManager::getIgnore
bool getIgnore() const
Definition: FWConfigurationManager.h:51
CmsShowMain::m_monitor
std::unique_ptr< TMonitor > m_monitor
Definition: CmsShowMain.h:133
CmsShowMain::connectSocket
void connectSocket()
Definition: CmsShowMain.cc:725
CmsShowTaskExecutor::startDoingTasks
void startDoingTasks() override
Definition: CmsShowTaskExecutor.cc:55
fireworks::Context::getField
FWMagField * getField() const
Definition: Context.h:66
alignmentValidation.fname
string fname
main script
Definition: alignmentValidation.py:959
CmsShowMain::reachedEnd
void reachedEnd()
fwlog::kInfo
Definition: fwLog.h:35
FWEventItemsManager::begin
const_iterator begin() const
NOTE: iterator is allowed to return a null object for items that have been removed.
Definition: FWEventItemsManager.cc:299
type
type
Definition: HCALResponse.h:21
CmsShowMain::m_inputFiles
std::vector< std::string > m_inputFiles
Definition: CmsShowMain.h:118
writedatasetfile.run
run
Definition: writedatasetfile.py:27
CmsShowMain::m_liveTimer
std::unique_ptr< SignalTimer > m_liveTimer
Definition: CmsShowMain.h:126
FWGUIManager::showEventFilterGUI
void showEventFilterGUI()
Definition: FWGUIManager.cc:1265
kTGeoNameCommandOpt
static const char *const kTGeoNameCommandOpt
Definition: CmsShowMain.cc:88
FWEventItemsManager::setContext
void setContext(fireworks::Context *)
Definition: FWEventItemsManager.cc:294
kNoConfigFileOpt
static const char *const kNoConfigFileOpt
Definition: CmsShowMain.cc:89
CSGAction::isEnabled
virtual Bool_t isEnabled() const
Definition: CSGAction.cc:289
relativeConstraints.empty
bool empty
Definition: relativeConstraints.py:46
CmsShowMain::context
const fireworks::Context * context() const
Definition: CmsShowMain.h:77
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
kAdvancedRenderOpt
static const char *const kAdvancedRenderOpt
Definition: CmsShowMain.cc:101
CmsShowMain::fileChangedSlot
void fileChangedSlot(const TFile *file)
Definition: CmsShowMain.cc:490
kGeomFileOpt
static const char *const kGeomFileOpt
Definition: CmsShowMain.cc:83
CmsShowTaskExecutor::addTask
void addTask(const TaskFunctor &iTask)
Definition: CmsShowTaskExecutor.cc:53
AlcaSiPixelAliHarvester0T_cff.options
options
Definition: AlcaSiPixelAliHarvester0T_cff.py:42
kTGeoNameOpt
static const char *const kTGeoNameOpt
Definition: CmsShowMain.cc:87
CmsShowMain::openData
void openData()
Definition: CmsShowMain.cc:515
fireworks::Context::getInstance
static Context * getInstance()
Definition: Context.cc:193
kPortCommandOpt
static const char *const kPortCommandOpt
Definition: CmsShowMain.cc:107
CmsShowMain::postFiltering
void postFiltering(bool)
Definition: CmsShowMain.cc:822
fwlog::kError
Definition: fwLog.h:35
kConfigFileCommandOpt
static const char *const kConfigFileCommandOpt
Definition: CmsShowMain.cc:82
CmsShowMainBase::setPlayLoop
void setPlayLoop()
Definition: CmsShowMainBase.cc:347
FWMagField::kUser
Definition: FWMagField.h:18
beamvalidation.exit
def exit(msg="")
Definition: beamvalidation.py:53
CmsShowMainBase::eiManager
FWEventItemsManager * eiManager()
Definition: CmsShowMainBase.h:57
kExpertCommandOpt
static const char *const kExpertCommandOpt
Definition: CmsShowMain.cc:106
CSGAction::enable
void enable()
Definition: CSGAction.cc:269
CSGContinuousAction::switchMode
void switchMode()
Definition: CSGContinuousAction.cc:62
kEveOpt
static const char *const kEveOpt
Definition: CmsShowMain.cc:99
kPlayOpt
static const char *const kPlayOpt
Definition: CmsShowMain.cc:91
CmsShowMain::m_globalTagCheck
bool m_globalTagCheck
Definition: CmsShowMain.h:131
FWGUIManager::updateEventFilterEnable
void updateEventFilterEnable(bool)
Definition: FWGUIManager.cc:1278
cuy.ii
ii
Definition: cuy.py:590
CmsShowMain::appendData
void appendData()
Definition: CmsShowMain.cc:539
FWGUIManager::clearStatus
void clearStatus()
Definition: FWGUIManager.cc:369
kLoopOpt
static const char *const kLoopOpt
Definition: CmsShowMain.cc:93
kFreePaletteCommandOpt
static const char *const kFreePaletteCommandOpt
Definition: CmsShowMain.cc:113
kConfigFileOpt
static const char *const kConfigFileOpt
Definition: CmsShowMain.cc:81
CmsShowMain::m_searchFiles
std::unique_ptr< CmsShowSearchFiles > m_searchFiles
Definition: CmsShowMain.h:122
CmsShowMain::checkLiveMode
void checkLiveMode()
Definition: CmsShowMain.cc:848
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37