1 /** 2 * UGENE - Integrated Bioinformatics Tools. 3 * Copyright (C) 2008-2021 UniPro <ugene@unipro.ru> 4 * http://ugene.net 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 2 9 * of the License, or (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU General Public License for more details. 15 * 16 * You should have received a copy of the GNU General Public License 17 * along with this program; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 * MA 02110-1301, USA. 20 */ 21 22 #ifndef _U2_APPCONTEXT_IMPL_ 23 #define _U2_APPCONTEXT_IMPL_ 24 25 #include <U2Core/AppContext.h> 26 #include <U2Core/global.h> 27 28 namespace U2 { 29 30 class U2PRIVATE_EXPORT AppContextImpl : public AppContext { 31 Q_OBJECT 32 public: AppContextImpl()33 AppContextImpl() { 34 instance = this; 35 36 aaSupport = nullptr; 37 alignmentAlgorithmsRegistry = nullptr; 38 appFileStorage = nullptr; 39 as = nullptr; 40 asg = nullptr; 41 asr = nullptr; 42 assemblyConsensusAlgoRegistry = nullptr; 43 cdsfr = nullptr; 44 cfr = nullptr; 45 cgr = nullptr; 46 cmdLineRegistry = nullptr; 47 credentialsAsker = nullptr; 48 dal = nullptr; 49 dashboardInfoRegistry = nullptr; 50 dataBaseRegistry = nullptr; 51 dbiRegistry = nullptr; 52 dbxr = nullptr; 53 dfr = nullptr; 54 dnaAssemblyAlgRegistry = nullptr; 55 dpr = nullptr; 56 dtr = nullptr; 57 externalToolRegistry = nullptr; 58 genomeAssemblyAlgRegistry = nullptr; 59 gs = nullptr; 60 io = nullptr; 61 mcsr = nullptr; 62 mhsr = nullptr; 63 msaConsensusAlgoRegistry = nullptr; 64 msaDistanceAlgoRegistry = nullptr; 65 msfr = nullptr; 66 mw = nullptr; 67 oclgr = nullptr; 68 opCommonWidgetFactoryRegistry = nullptr; 69 opWidgetFactoryRegistry = nullptr; 70 ovfr = nullptr; 71 passwordStorage = nullptr; 72 pf = nullptr; 73 pl = nullptr; 74 plv = nullptr; 75 prj = nullptr; 76 projectFilterTaskRegistry = nullptr; 77 protocolInfoRegistry = nullptr; 78 prs = nullptr; 79 ps = nullptr; 80 pv = nullptr; 81 pwmConversionAlgoRegistry = nullptr; 82 qdafr = nullptr; 83 rdc = nullptr; 84 remoteMachineMonitor = nullptr; 85 rfr = nullptr; 86 rt = nullptr; 87 saar = nullptr; 88 secStructPredictRegistry = nullptr; 89 smr = nullptr; 90 splicedAlignmentTaskRegistry = nullptr; 91 sr = nullptr; 92 ss = nullptr; 93 str = nullptr; 94 swar = nullptr; 95 swmarntr = nullptr; 96 swrfr = nullptr; 97 tf = nullptr; 98 treeGeneratorRegistry = nullptr; 99 ts = nullptr; 100 udrSchemaRegistry = nullptr; 101 virtualFileSystemRegistry = nullptr; 102 welcomePageActionRegistry = nullptr; 103 workflowScriptRegistry = nullptr; 104 105 guiMode = false; 106 activeWindow = ""; 107 workingDirectoryPath = ""; 108 } 109 110 ~AppContextImpl(); 111 setPluginSupport(PluginSupport * _ps)112 void setPluginSupport(PluginSupport *_ps) { 113 assert(ps == nullptr || _ps == nullptr); 114 ps = _ps; 115 } 116 setServiceRegistry(ServiceRegistry * _sr)117 void setServiceRegistry(ServiceRegistry *_sr) { 118 assert(sr == nullptr || _sr == nullptr); 119 sr = _sr; 120 } 121 setProjectLoader(ProjectLoader * _pl)122 void setProjectLoader(ProjectLoader *_pl) { 123 assert(pl == nullptr || _pl == nullptr); 124 pl = _pl; 125 } 126 setProject(Project * _prj)127 void setProject(Project *_prj) { 128 assert(prj == nullptr || _prj == nullptr); 129 prj = _prj; 130 } 131 setProjectService(ProjectService * _prs)132 void setProjectService(ProjectService *_prs) { 133 assert(prs == nullptr || _prs == nullptr); 134 prs = _prs; 135 } 136 setMainWindow(MainWindow * _mw)137 void setMainWindow(MainWindow *_mw) { 138 assert(mw == nullptr || _mw == nullptr); 139 mw = _mw; 140 } 141 setProjectView(ProjectView * _pv)142 void setProjectView(ProjectView *_pv) { 143 assert(pv == nullptr || _pv == nullptr); 144 pv = _pv; 145 } 146 setPluginViewer(PluginViewer * _plv)147 void setPluginViewer(PluginViewer *_plv) { 148 assert(plv == nullptr || _plv == nullptr); 149 plv = _plv; 150 } 151 setSettings(Settings * _ss)152 void setSettings(Settings *_ss) { 153 assert(ss == nullptr || _ss == nullptr); 154 ss = _ss; 155 } 156 setGlobalSettings(Settings * _gs)157 void setGlobalSettings(Settings *_gs) { 158 assert(gs == nullptr || _gs == nullptr); 159 gs = _gs; 160 } 161 setAppSettings(AppSettings * _as)162 void setAppSettings(AppSettings *_as) { 163 assert(as || _as); 164 as = _as; 165 } 166 setAppSettingsGUI(AppSettingsGUI * _asg)167 void setAppSettingsGUI(AppSettingsGUI *_asg) { 168 assert(asg == nullptr || _asg == nullptr); 169 asg = _asg; 170 } 171 setDocumentFormatRegistry(DocumentFormatRegistry * _dfr)172 void setDocumentFormatRegistry(DocumentFormatRegistry *_dfr) { 173 assert(dfr == nullptr || _dfr == nullptr); 174 dfr = _dfr; 175 } 176 setIOAdapterRegistry(IOAdapterRegistry * _io)177 void setIOAdapterRegistry(IOAdapterRegistry *_io) { 178 assert(io == nullptr || _io == nullptr); 179 io = _io; 180 } 181 setDNATranslationRegistry(DNATranslationRegistry * _dtr)182 void setDNATranslationRegistry(DNATranslationRegistry *_dtr) { 183 assert(dtr == nullptr || _dtr == nullptr); 184 dtr = _dtr; 185 } 186 setDNAAlphabetRegistry(DNAAlphabetRegistry * _dal)187 void setDNAAlphabetRegistry(DNAAlphabetRegistry *_dal) { 188 assert(dal == nullptr || _dal == nullptr); 189 dal = _dal; 190 } 191 setObjectViewFactoryRegistry(GObjectViewFactoryRegistry * _ovfr)192 void setObjectViewFactoryRegistry(GObjectViewFactoryRegistry *_ovfr) { 193 assert(ovfr == nullptr || _ovfr == nullptr); 194 ovfr = _ovfr; 195 } 196 setTaskScheduler(TaskScheduler * _ts)197 void setTaskScheduler(TaskScheduler *_ts) { 198 assert(ts == nullptr || _ts == nullptr); 199 ts = _ts; 200 } 201 setResourceTracker(ResourceTracker * _rt)202 void setResourceTracker(ResourceTracker *_rt) { 203 assert(rt == nullptr || _rt == nullptr); 204 rt = _rt; 205 } 206 setAnnotationSettingsRegistry(AnnotationSettingsRegistry * _asr)207 void setAnnotationSettingsRegistry(AnnotationSettingsRegistry *_asr) { 208 assert(asr == nullptr || _asr == nullptr); 209 asr = _asr; 210 } 211 setTestFramework(TestFramework * _tf)212 void setTestFramework(TestFramework *_tf) { 213 assert(tf || _tf); 214 tf = _tf; 215 } 216 setDBXRefRegistry(DBXRefRegistry * _dbxr)217 void setDBXRefRegistry(DBXRefRegistry *_dbxr) { 218 assert(dbxr == nullptr || _dbxr == nullptr); 219 dbxr = _dbxr; 220 } 221 setSubstMatrixRegistry(SubstMatrixRegistry * _smr)222 void setSubstMatrixRegistry(SubstMatrixRegistry *_smr) { 223 assert(smr == nullptr || _smr == nullptr); 224 smr = _smr; 225 } 226 setSmithWatermanTaskFactoryRegistry(SmithWatermanTaskFactoryRegistry * _swar)227 void setSmithWatermanTaskFactoryRegistry(SmithWatermanTaskFactoryRegistry *_swar) { 228 assert(swar == nullptr || _swar == nullptr); 229 swar = _swar; 230 } 231 setMolecularSurfaceFactoryRegistry(MolecularSurfaceFactoryRegistry * _msfr)232 void setMolecularSurfaceFactoryRegistry(MolecularSurfaceFactoryRegistry *_msfr) { 233 assert(msfr == nullptr || _msfr == nullptr); 234 msfr = _msfr; 235 } 236 setSWResultFilterRegistry(SWResultFilterRegistry * _swrfr)237 void setSWResultFilterRegistry(SWResultFilterRegistry *_swrfr) { 238 assert(swrfr == nullptr || _swrfr == nullptr); 239 swrfr = _swrfr; 240 } 241 setSWMulAlignResultNamesTagsRegistry(SWMulAlignResultNamesTagsRegistry * _swmarntr)242 void setSWMulAlignResultNamesTagsRegistry(SWMulAlignResultNamesTagsRegistry *_swmarntr) { 243 assert(swmarntr == nullptr || _swmarntr == nullptr); 244 swmarntr = _swmarntr; 245 } 246 setMsaColorSchemeRegistry(MsaColorSchemeRegistry * _mcsr)247 void setMsaColorSchemeRegistry(MsaColorSchemeRegistry *_mcsr) { 248 assert(mcsr == nullptr || _mcsr == nullptr); 249 mcsr = _mcsr; 250 } 251 setMsaHighlightingSchemeRegistry(MsaHighlightingSchemeRegistry * _mhsr)252 void setMsaHighlightingSchemeRegistry(MsaHighlightingSchemeRegistry *_mhsr) { 253 assert(mhsr == nullptr || _mhsr == nullptr); 254 mhsr = _mhsr; 255 } 256 setSecStructPedictAlgRegistry(SecStructPredictAlgRegistry * _sspar)257 void setSecStructPedictAlgRegistry(SecStructPredictAlgRegistry *_sspar) { 258 assert(secStructPredictRegistry == nullptr || _sspar == nullptr); 259 secStructPredictRegistry = _sspar; 260 } 261 setCudaGpuRegistry(CudaGpuRegistry * _cgr)262 void setCudaGpuRegistry(CudaGpuRegistry *_cgr) { 263 assert(cgr == nullptr || _cgr == nullptr); 264 cgr = _cgr; 265 } 266 setOpenCLGpuRegistry(OpenCLGpuRegistry * _oclgr)267 void setOpenCLGpuRegistry(OpenCLGpuRegistry *_oclgr) { 268 assert(oclgr == nullptr || _oclgr == nullptr); 269 oclgr = _oclgr; 270 } 271 setRecentlyDownloadedCache(RecentlyDownloadedCache * _rdc)272 void setRecentlyDownloadedCache(RecentlyDownloadedCache *_rdc) { 273 assert(rdc == nullptr || _rdc == nullptr); 274 rdc = _rdc; 275 } 276 setDataPathRegistry(U2DataPathRegistry * _dpr)277 void setDataPathRegistry(U2DataPathRegistry *_dpr) { 278 assert(dpr == nullptr || _dpr == nullptr); 279 dpr = _dpr; 280 } 281 setScriptingToolRegistry(ScriptingToolRegistry * _str)282 void setScriptingToolRegistry(ScriptingToolRegistry *_str) { 283 assert(str == nullptr || _str == nullptr); 284 str = _str; 285 } 286 setPasteFactory(PasteFactory * _pf)287 void setPasteFactory(PasteFactory *_pf) { 288 assert(pf == nullptr || _pf == nullptr); 289 pf = _pf; 290 } 291 setDashboardInfoRegistry(DashboardInfoRegistry * _dashboardInfoRegistry)292 void setDashboardInfoRegistry(DashboardInfoRegistry *_dashboardInfoRegistry) { 293 assert(dashboardInfoRegistry == nullptr || _dashboardInfoRegistry == nullptr); 294 dashboardInfoRegistry = _dashboardInfoRegistry; 295 } 296 setProtocolInfoRegistry(ProtocolInfoRegistry * pr)297 void setProtocolInfoRegistry(ProtocolInfoRegistry *pr) { 298 assert(nullptr == protocolInfoRegistry || nullptr == pr); 299 protocolInfoRegistry = pr; 300 } 301 setRemoteMachineMonitor(RemoteMachineMonitor * rm)302 void setRemoteMachineMonitor(RemoteMachineMonitor *rm) { 303 assert(nullptr == remoteMachineMonitor || nullptr == rm); 304 remoteMachineMonitor = rm; 305 } 306 setPhyTreeGeneratorRegistry(PhyTreeGeneratorRegistry * genRegistry)307 void setPhyTreeGeneratorRegistry(PhyTreeGeneratorRegistry *genRegistry) { 308 assert(nullptr == treeGeneratorRegistry || nullptr == genRegistry); 309 treeGeneratorRegistry = genRegistry; 310 } 311 setMSAConsensusAlgorithmRegistry(MSAConsensusAlgorithmRegistry * reg)312 void setMSAConsensusAlgorithmRegistry(MSAConsensusAlgorithmRegistry *reg) { 313 assert(reg == nullptr || msaConsensusAlgoRegistry == nullptr); 314 msaConsensusAlgoRegistry = reg; 315 } 316 setMSADistanceAlgorithmRegistry(MSADistanceAlgorithmRegistry * reg)317 void setMSADistanceAlgorithmRegistry(MSADistanceAlgorithmRegistry *reg) { 318 assert(reg == nullptr || msaDistanceAlgoRegistry == nullptr); 319 msaDistanceAlgoRegistry = reg; 320 } 321 setAssemblyConsensusAlgorithmRegistry(AssemblyConsensusAlgorithmRegistry * reg)322 void setAssemblyConsensusAlgorithmRegistry(AssemblyConsensusAlgorithmRegistry *reg) { 323 assert(reg == nullptr || assemblyConsensusAlgoRegistry == nullptr); 324 assemblyConsensusAlgoRegistry = reg; 325 } 326 setPWMConversionAlgorithmRegistry(PWMConversionAlgorithmRegistry * reg)327 void setPWMConversionAlgorithmRegistry(PWMConversionAlgorithmRegistry *reg) { 328 assert(reg == nullptr || pwmConversionAlgoRegistry == nullptr); 329 pwmConversionAlgoRegistry = reg; 330 } 331 setCMDLineRegistry(CMDLineRegistry * r)332 void setCMDLineRegistry(CMDLineRegistry *r) { 333 assert(cmdLineRegistry == nullptr || r == nullptr); 334 cmdLineRegistry = r; 335 } 336 setVirtualFileSystemRegistry(VirtualFileSystemRegistry * r)337 void setVirtualFileSystemRegistry(VirtualFileSystemRegistry *r) { 338 assert(virtualFileSystemRegistry == nullptr || r == nullptr); 339 virtualFileSystemRegistry = r; 340 } 341 setDnaAssemblyAlgRegistry(DnaAssemblyAlgRegistry * r)342 void setDnaAssemblyAlgRegistry(DnaAssemblyAlgRegistry *r) { 343 assert(dnaAssemblyAlgRegistry == nullptr || r == nullptr); 344 dnaAssemblyAlgRegistry = r; 345 } 346 setGenomeAssemblyAlgRegistry(GenomeAssemblyAlgRegistry * r)347 void setGenomeAssemblyAlgRegistry(GenomeAssemblyAlgRegistry *r) { 348 assert(genomeAssemblyAlgRegistry == nullptr || r == nullptr); 349 genomeAssemblyAlgRegistry = r; 350 } 351 setDataBaseRegistry(DataBaseRegistry * dbr)352 void setDataBaseRegistry(DataBaseRegistry *dbr) { 353 assert(dataBaseRegistry == nullptr || dbr == nullptr); 354 dataBaseRegistry = dbr; 355 } 356 setExternalToolRegistry(ExternalToolRegistry * _etr)357 void setExternalToolRegistry(ExternalToolRegistry *_etr) { 358 assert(externalToolRegistry == nullptr || _etr == nullptr); 359 externalToolRegistry = _etr; 360 } 361 setRepeatFinderTaskFactoryRegistry(RepeatFinderTaskFactoryRegistry * _rfr)362 void setRepeatFinderTaskFactoryRegistry(RepeatFinderTaskFactoryRegistry *_rfr) { 363 assert(rfr == nullptr || _rfr == nullptr); 364 rfr = _rfr; 365 } 366 setQDActorFactoryRegistry(QDActorPrototypeRegistry * _queryfactoryRegistry)367 void setQDActorFactoryRegistry(QDActorPrototypeRegistry *_queryfactoryRegistry) { 368 assert(qdafr == nullptr || _queryfactoryRegistry == nullptr); 369 qdafr = _queryfactoryRegistry; 370 } 371 setAutoAnnotationsSupport(AutoAnnotationsSupport * _aaSupport)372 void setAutoAnnotationsSupport(AutoAnnotationsSupport *_aaSupport) { 373 assert(aaSupport == nullptr || _aaSupport == nullptr); 374 aaSupport = _aaSupport; 375 } 376 setDbiRegistry(U2DbiRegistry * _dbiRegistry)377 void setDbiRegistry(U2DbiRegistry *_dbiRegistry) { 378 assert((nullptr == dbiRegistry) || (nullptr == _dbiRegistry)); 379 dbiRegistry = _dbiRegistry; 380 } 381 setUdrSchemaRegistry(UdrSchemaRegistry * _udrSchemaRegistry)382 void setUdrSchemaRegistry(UdrSchemaRegistry *_udrSchemaRegistry) { 383 assert((nullptr == udrSchemaRegistry) || (nullptr == _udrSchemaRegistry)); 384 udrSchemaRegistry = _udrSchemaRegistry; 385 } 386 setCDSearchFactoryRegistry(CDSearchFactoryRegistry * _cdsfr)387 void setCDSearchFactoryRegistry(CDSearchFactoryRegistry *_cdsfr) { 388 assert((nullptr == cdsfr) || (nullptr == _cdsfr)); 389 cdsfr = _cdsfr; 390 } 391 setSplicedAlignmentTaskRegistry(SplicedAlignmentTaskRegistry * tr)392 void setSplicedAlignmentTaskRegistry(SplicedAlignmentTaskRegistry *tr) { 393 assert((nullptr == splicedAlignmentTaskRegistry) || (nullptr == tr)); 394 splicedAlignmentTaskRegistry = tr; 395 } 396 setOPCommonWidgetFactoryRegistry(OPCommonWidgetFactoryRegistry * _opCommonWidgetFactoryRegistry)397 void setOPCommonWidgetFactoryRegistry(OPCommonWidgetFactoryRegistry *_opCommonWidgetFactoryRegistry) { 398 assert((nullptr == opCommonWidgetFactoryRegistry) || (nullptr == _opCommonWidgetFactoryRegistry)); 399 opCommonWidgetFactoryRegistry = _opCommonWidgetFactoryRegistry; 400 } 401 setOPWidgetFactoryRegistry(OPWidgetFactoryRegistry * _opWidgetFactoryRegistry)402 void setOPWidgetFactoryRegistry(OPWidgetFactoryRegistry *_opWidgetFactoryRegistry) { 403 assert((nullptr == opWidgetFactoryRegistry) || (nullptr == _opWidgetFactoryRegistry)); 404 opWidgetFactoryRegistry = _opWidgetFactoryRegistry; 405 } 406 setStructuralAlignmentAlgorithmRegistry(StructuralAlignmentAlgorithmRegistry * _saar)407 void setStructuralAlignmentAlgorithmRegistry(StructuralAlignmentAlgorithmRegistry *_saar) { 408 assert(saar == nullptr || _saar == nullptr); 409 saar = _saar; 410 } 411 setWorkflowScriptRegistry(WorkflowScriptRegistry * _wsr)412 void setWorkflowScriptRegistry(WorkflowScriptRegistry *_wsr) { 413 assert(workflowScriptRegistry == nullptr || _wsr == nullptr); 414 workflowScriptRegistry = _wsr; 415 } 416 setCredentialsAsker(CredentialsAsker * _credentialsAsker)417 void setCredentialsAsker(CredentialsAsker *_credentialsAsker) { 418 assert(credentialsAsker == nullptr || _credentialsAsker == nullptr); 419 credentialsAsker = _credentialsAsker; 420 } 421 setPasswordStorage(PasswordStorage * _passwordStorage)422 void setPasswordStorage(PasswordStorage *_passwordStorage) { 423 assert(passwordStorage == nullptr || _passwordStorage == nullptr); 424 passwordStorage = _passwordStorage; 425 } 426 setAppFileStorage(AppFileStorage * afs)427 void setAppFileStorage(AppFileStorage *afs) { 428 assert(appFileStorage == nullptr || afs == nullptr); 429 appFileStorage = afs; 430 } 431 setAlignmentAlgorithmsRegistry(AlignmentAlgorithmsRegistry * _alignmentAlgorithmsRegistry)432 void setAlignmentAlgorithmsRegistry(AlignmentAlgorithmsRegistry *_alignmentAlgorithmsRegistry) { 433 assert(alignmentAlgorithmsRegistry == nullptr || _alignmentAlgorithmsRegistry == nullptr); 434 alignmentAlgorithmsRegistry = _alignmentAlgorithmsRegistry; 435 } 436 setConvertFactoryRegistry(ConvertFactoryRegistry * _cfr)437 void setConvertFactoryRegistry(ConvertFactoryRegistry *_cfr) { 438 assert(cfr == nullptr || _cfr == nullptr); 439 cfr = _cfr; 440 } 441 setWelcomePageActionRegistry(IdRegistry<WelcomePageAction> * value)442 void setWelcomePageActionRegistry(IdRegistry<WelcomePageAction> *value) { 443 assert(welcomePageActionRegistry == nullptr || value == nullptr); 444 welcomePageActionRegistry = value; 445 } 446 setProjectFilterTaskRegistry(ProjectFilterTaskRegistry * value)447 void setProjectFilterTaskRegistry(ProjectFilterTaskRegistry *value) { 448 assert(projectFilterTaskRegistry == nullptr || value == nullptr); 449 projectFilterTaskRegistry = value; 450 } 451 setGUIMode(bool v)452 void setGUIMode(bool v) { 453 guiMode = v; 454 } 455 _setActiveWindowName(const QString & name)456 void _setActiveWindowName(const QString &name) { 457 activeWindow = name; 458 } 459 setWorkingDirectoryPath(const QString & path)460 void setWorkingDirectoryPath(const QString &path) { 461 assert(!path.isEmpty()); 462 workingDirectoryPath = path; 463 } 464 465 static AppContextImpl *getApplicationContext(); 466 467 protected: _getPluginSupport()468 virtual PluginSupport *_getPluginSupport() const { 469 return ps; 470 } _getServiceRegistry()471 virtual ServiceRegistry *_getServiceRegistry() const { 472 return sr; 473 } _getProjectLoader()474 virtual ProjectLoader *_getProjectLoader() const { 475 return pl; 476 } _getProject()477 virtual Project *_getProject() const { 478 return prj; 479 } _getProjectService()480 virtual ProjectService *_getProjectService() const { 481 return prs; 482 } _getMainWindow()483 virtual MainWindow *_getMainWindow() const { 484 return mw; 485 } _getProjectView()486 virtual ProjectView *_getProjectView() const { 487 return pv; 488 } _getPluginViewer()489 virtual PluginViewer *_getPluginViewer() const { 490 return plv; 491 } _getSettings()492 virtual Settings *_getSettings() const { 493 return ss; 494 } _getGlobalSettings()495 virtual Settings *_getGlobalSettings() const { 496 return gs; 497 } _getAppSettings()498 virtual AppSettings *_getAppSettings() const { 499 return as; 500 } _getAppSettingsGUI()501 virtual AppSettingsGUI *_getAppSettingsGUI() const { 502 return asg; 503 } 504 _getDocumentFormatRegistry()505 virtual DocumentFormatRegistry *_getDocumentFormatRegistry() const { 506 return dfr; 507 } _getIOAdapterRegistry()508 virtual IOAdapterRegistry *_getIOAdapterRegistry() const { 509 return io; 510 } _getDNATranslationRegistry()511 virtual DNATranslationRegistry *_getDNATranslationRegistry() const { 512 return dtr; 513 } _getDNAAlphabetRegistry()514 virtual DNAAlphabetRegistry *_getDNAAlphabetRegistry() const { 515 return dal; 516 } _getObjectViewFactoryRegistry()517 virtual GObjectViewFactoryRegistry *_getObjectViewFactoryRegistry() const { 518 return ovfr; 519 } _getTaskScheduler()520 virtual TaskScheduler *_getTaskScheduler() const { 521 return ts; 522 } _getResourceTracker()523 virtual ResourceTracker *_getResourceTracker() const { 524 return rt; 525 } _getAnnotationsSettingsRegistry()526 virtual AnnotationSettingsRegistry *_getAnnotationsSettingsRegistry() const { 527 return asr; 528 } _getTestFramework()529 virtual TestFramework *_getTestFramework() const { 530 return tf; 531 } _getDBXRefRegistry()532 virtual DBXRefRegistry *_getDBXRefRegistry() const { 533 return dbxr; 534 } _getSubstMatrixRegistry()535 virtual SubstMatrixRegistry *_getSubstMatrixRegistry() const { 536 return smr; 537 } _getSmithWatermanTaskFactoryRegistry()538 virtual SmithWatermanTaskFactoryRegistry *_getSmithWatermanTaskFactoryRegistry() const { 539 return swar; 540 } _getPhyTreeGeneratorRegistry()541 virtual PhyTreeGeneratorRegistry *_getPhyTreeGeneratorRegistry() const { 542 return treeGeneratorRegistry; 543 } 544 _getMolecularSurfaceFactoryRegistry()545 virtual MolecularSurfaceFactoryRegistry *_getMolecularSurfaceFactoryRegistry() const { 546 return msfr; 547 } _getSWResultFilterRegistry()548 virtual SWResultFilterRegistry *_getSWResultFilterRegistry() const { 549 return swrfr; 550 } _getSWMulAlignResultNamesTagsRegistry()551 virtual SWMulAlignResultNamesTagsRegistry *_getSWMulAlignResultNamesTagsRegistry() const { 552 return swmarntr; 553 } _getMsaColorSchemeRegistry()554 virtual MsaColorSchemeRegistry *_getMsaColorSchemeRegistry() const { 555 return mcsr; 556 } _getMsaHighlightingSchemeRegistry()557 virtual MsaHighlightingSchemeRegistry *_getMsaHighlightingSchemeRegistry() const { 558 return mhsr; 559 } _getSecStructPredictAlgRegistry()560 virtual SecStructPredictAlgRegistry *_getSecStructPredictAlgRegistry() const { 561 return secStructPredictRegistry; 562 } _getCudaGpuRegistry()563 virtual CudaGpuRegistry *_getCudaGpuRegistry() const { 564 return cgr; 565 } _getOpenCLGpuRegistry()566 virtual OpenCLGpuRegistry *_getOpenCLGpuRegistry() const { 567 return oclgr; 568 } _getRecentlyDownloadedCache()569 virtual RecentlyDownloadedCache *_getRecentlyDownloadedCache() const { 570 return rdc; 571 } _getProtocolInfoRegistry()572 virtual ProtocolInfoRegistry *_getProtocolInfoRegistry() const { 573 return protocolInfoRegistry; 574 } _getRemoteMachineMonitor()575 virtual RemoteMachineMonitor *_getRemoteMachineMonitor() const { 576 return remoteMachineMonitor; 577 } _getCMDLineRegistry()578 virtual CMDLineRegistry *_getCMDLineRegistry() const { 579 return cmdLineRegistry; 580 } _getMSAConsensusAlgorithmRegistry()581 virtual MSAConsensusAlgorithmRegistry *_getMSAConsensusAlgorithmRegistry() const { 582 return msaConsensusAlgoRegistry; 583 } _getMSADistanceAlgorithmRegistry()584 virtual MSADistanceAlgorithmRegistry *_getMSADistanceAlgorithmRegistry() const { 585 return msaDistanceAlgoRegistry; 586 } _getAssemblyConsensusAlgorithmRegistry()587 virtual AssemblyConsensusAlgorithmRegistry *_getAssemblyConsensusAlgorithmRegistry() const { 588 return assemblyConsensusAlgoRegistry; 589 } _getPWMConversionAlgorithmRegistry()590 virtual PWMConversionAlgorithmRegistry *_getPWMConversionAlgorithmRegistry() const { 591 return pwmConversionAlgoRegistry; 592 } _getVirtualFileSystemRegistry()593 virtual VirtualFileSystemRegistry *_getVirtualFileSystemRegistry() const { 594 return virtualFileSystemRegistry; 595 } _getDnaAssemblyAlgRegistry()596 virtual DnaAssemblyAlgRegistry *_getDnaAssemblyAlgRegistry() const { 597 return dnaAssemblyAlgRegistry; 598 } _getGenomeAssemblyAlgRegistry()599 virtual GenomeAssemblyAlgRegistry *_getGenomeAssemblyAlgRegistry() const { 600 return genomeAssemblyAlgRegistry; 601 } _getDataBaseRegistry()602 virtual DataBaseRegistry *_getDataBaseRegistry() const { 603 return dataBaseRegistry; 604 } _getExternalToolRegistry()605 virtual ExternalToolRegistry *_getExternalToolRegistry() const { 606 return externalToolRegistry; 607 } _getRepeatFinderTaskFactoryRegistry()608 virtual RepeatFinderTaskFactoryRegistry *_getRepeatFinderTaskFactoryRegistry() const { 609 return rfr; 610 } _getQDActorFactoryRegistry()611 virtual QDActorPrototypeRegistry *_getQDActorFactoryRegistry() const { 612 return qdafr; 613 } _getStructuralAlignmentAlgorithmRegistry()614 virtual StructuralAlignmentAlgorithmRegistry *_getStructuralAlignmentAlgorithmRegistry() const { 615 return saar; 616 } _getAutoAnnotationsSupport()617 virtual AutoAnnotationsSupport *_getAutoAnnotationsSupport() const { 618 return aaSupport; 619 } _getCDSFactoryRegistry()620 virtual CDSearchFactoryRegistry *_getCDSFactoryRegistry() const { 621 return cdsfr; 622 } _getDbiRegistry()623 virtual U2DbiRegistry *_getDbiRegistry() const { 624 return dbiRegistry; 625 } _getUdrSchemaRegistry()626 virtual UdrSchemaRegistry *_getUdrSchemaRegistry() const { 627 return udrSchemaRegistry; 628 } _getSplicedAlignmentTaskRegistry()629 virtual SplicedAlignmentTaskRegistry *_getSplicedAlignmentTaskRegistry() const { 630 return splicedAlignmentTaskRegistry; 631 } _getOPCommonWidgetFactoryRegistry()632 virtual OPCommonWidgetFactoryRegistry *_getOPCommonWidgetFactoryRegistry() const { 633 return opCommonWidgetFactoryRegistry; 634 } _getOPWidgetFactoryRegistry()635 virtual OPWidgetFactoryRegistry *_getOPWidgetFactoryRegistry() const { 636 return opWidgetFactoryRegistry; 637 } _getWorkflowScriptRegistry()638 virtual WorkflowScriptRegistry *_getWorkflowScriptRegistry() const { 639 return workflowScriptRegistry; 640 } _getAppFileStorage()641 virtual AppFileStorage *_getAppFileStorage() const { 642 return appFileStorage; 643 } _getAlignmentAlgorithmsRegistry()644 virtual AlignmentAlgorithmsRegistry *_getAlignmentAlgorithmsRegistry() const { 645 return alignmentAlgorithmsRegistry; 646 } _getDataPathRegistry()647 virtual U2DataPathRegistry *_getDataPathRegistry() const { 648 return dpr; 649 } _getScriptingToolRegistry()650 virtual ScriptingToolRegistry *_getScriptingToolRegistry() const { 651 return str; 652 } _getCredentialsAsker()653 virtual CredentialsAsker *_getCredentialsAsker() const { 654 return credentialsAsker; 655 } _getPasswordStorage()656 virtual PasswordStorage *_getPasswordStorage() const { 657 return passwordStorage; 658 } _getConvertFactoryRegistry()659 virtual ConvertFactoryRegistry *_getConvertFactoryRegistry() const { 660 return cfr; 661 } _getWelcomePageActionRegistry()662 virtual IdRegistry<WelcomePageAction> *_getWelcomePageActionRegistry() const { 663 return welcomePageActionRegistry; 664 } _getProjectFilterTaskRegistry()665 virtual ProjectFilterTaskRegistry *_getProjectFilterTaskRegistry() const { 666 return projectFilterTaskRegistry; 667 } _getPasteFactory()668 virtual PasteFactory *_getPasteFactory() const { 669 return pf; 670 } _getDashboardInfoRegistry()671 virtual DashboardInfoRegistry *_getDashboardInfoRegistry() const { 672 return dashboardInfoRegistry; 673 } 674 675 virtual void _registerGlobalObject(AppGlobalObject *go); 676 virtual void _unregisterGlobalObject(const QString &id); 677 virtual AppGlobalObject *_getGlobalObjectById(const QString &id) const; _isGUIMode()678 virtual bool _isGUIMode() const { 679 return guiMode; 680 } _getActiveWindowName()681 virtual QString _getActiveWindowName() const { 682 return activeWindow; 683 } _getWorkingDirectoryPath()684 virtual QString _getWorkingDirectoryPath() const { 685 return workingDirectoryPath; 686 } 687 688 private: 689 AlignmentAlgorithmsRegistry *alignmentAlgorithmsRegistry; 690 AnnotationSettingsRegistry *asr; 691 AppFileStorage *appFileStorage; 692 AppSettings *as; 693 AppSettingsGUI *asg; 694 AssemblyConsensusAlgorithmRegistry *assemblyConsensusAlgoRegistry; 695 AutoAnnotationsSupport *aaSupport; 696 CDSearchFactoryRegistry *cdsfr; 697 CMDLineRegistry *cmdLineRegistry; 698 ConvertFactoryRegistry *cfr; 699 CredentialsAsker *credentialsAsker; 700 CudaGpuRegistry *cgr; 701 DBXRefRegistry *dbxr; 702 DNAAlphabetRegistry *dal; 703 DNATranslationRegistry *dtr; 704 DashboardInfoRegistry *dashboardInfoRegistry; 705 DataBaseRegistry *dataBaseRegistry; 706 DnaAssemblyAlgRegistry *dnaAssemblyAlgRegistry; 707 DocumentFormatRegistry *dfr; 708 ExternalToolRegistry *externalToolRegistry; 709 GObjectViewFactoryRegistry *ovfr; 710 GenomeAssemblyAlgRegistry *genomeAssemblyAlgRegistry; 711 IOAdapterRegistry *io; 712 IdRegistry<WelcomePageAction> *welcomePageActionRegistry; 713 MSAConsensusAlgorithmRegistry *msaConsensusAlgoRegistry; 714 MSADistanceAlgorithmRegistry *msaDistanceAlgoRegistry; 715 MainWindow *mw; 716 MolecularSurfaceFactoryRegistry *msfr; 717 MsaColorSchemeRegistry *mcsr; 718 MsaHighlightingSchemeRegistry *mhsr; 719 OPCommonWidgetFactoryRegistry *opCommonWidgetFactoryRegistry; 720 OPWidgetFactoryRegistry *opWidgetFactoryRegistry; 721 OpenCLGpuRegistry *oclgr; 722 PWMConversionAlgorithmRegistry *pwmConversionAlgoRegistry; 723 PasswordStorage *passwordStorage; 724 PasteFactory *pf; 725 PhyTreeGeneratorRegistry *treeGeneratorRegistry; 726 PluginSupport *ps; 727 PluginViewer *plv; 728 Project *prj; 729 ProjectFilterTaskRegistry *projectFilterTaskRegistry; 730 ProjectLoader *pl; 731 ProjectService *prs; 732 ProjectView *pv; 733 ProtocolInfoRegistry *protocolInfoRegistry; 734 QDActorPrototypeRegistry *qdafr; 735 RecentlyDownloadedCache *rdc; 736 RemoteMachineMonitor *remoteMachineMonitor; 737 RepeatFinderTaskFactoryRegistry *rfr; 738 ResourceTracker *rt; 739 SWMulAlignResultNamesTagsRegistry *swmarntr; 740 SWResultFilterRegistry *swrfr; 741 ScriptingToolRegistry *str; 742 SecStructPredictAlgRegistry *secStructPredictRegistry; 743 ServiceRegistry *sr; 744 Settings *gs; 745 Settings *ss; 746 SmithWatermanTaskFactoryRegistry *swar; 747 SplicedAlignmentTaskRegistry *splicedAlignmentTaskRegistry; 748 StructuralAlignmentAlgorithmRegistry *saar; 749 SubstMatrixRegistry *smr; 750 TaskScheduler *ts; 751 TestFramework *tf; 752 U2DataPathRegistry *dpr; 753 U2DbiRegistry *dbiRegistry; 754 UdrSchemaRegistry *udrSchemaRegistry; 755 VirtualFileSystemRegistry *virtualFileSystemRegistry; 756 WorkflowScriptRegistry *workflowScriptRegistry; 757 758 bool guiMode; 759 QString activeWindow; 760 QString workingDirectoryPath; 761 762 QList<AppGlobalObject *> appGlobalObjects; 763 }; 764 765 } // namespace U2 766 767 #endif 768