Line data Source code
1 : //* This file is part of SALAMANDER: Software for Advanced Large-scale Analysis of MAgnetic confinement for Numerical Design, Engineering & Research, 2 : //* A multiphysics application for modeling plasma facing components 3 : //* https://github.com/idaholab/salamander 4 : //* https://mooseframework.inl.gov/salamander 5 : //* 6 : //* SALAMANDER is powered by the MOOSE Framework 7 : //* https://www.mooseframework.inl.gov 8 : //* 9 : //* Licensed under LGPL 2.1, please see LICENSE for details 10 : //* https://www.gnu.org/licenses/lgpl-2.1.html 11 : //* 12 : //* Copyright 2025, Battelle Energy Alliance, LLC 13 : //* ALL RIGHTS RESERVED 14 : //* 15 : 16 : #include "SalamanderApp.h" 17 : #include "Moose.h" 18 : #include "AppFactory.h" 19 : #include "ModulesApp.h" 20 : #include "MooseSyntax.h" 21 : 22 : // contribs 23 : #ifdef ENABLE_TMAP8 24 : #include "TMAP8App.h" 25 : #endif 26 : 27 : #ifdef ENABLE_CARDINAL 28 : #include "CardinalApp.h" 29 : #endif 30 : 31 : InputParameters 32 759 : SalamanderApp::validParams() 33 : { 34 759 : InputParameters params = MooseApp::validParams(); 35 759 : params.set<bool>("use_legacy_material_output") = false; 36 759 : params.set<bool>("use_legacy_initial_residual_evaluation_behavior") = false; 37 759 : return params; 38 0 : } 39 : 40 0 : SalamanderApp::SalamanderApp(const InputParameters & parameters) : MooseApp(parameters) 41 : { 42 0 : SalamanderApp::registerAll(_factory, _action_factory, _syntax); 43 0 : } 44 : 45 0 : SalamanderApp::~SalamanderApp() {} 46 : 47 : void 48 759 : SalamanderApp::registerAll(Factory & f, ActionFactory & af, Syntax & s) 49 : { 50 759 : ModulesApp::registerAllObjects<SalamanderApp>(f, af, s); 51 2277 : Registry::registerObjectsTo(f, {"SalamanderApp"}); 52 2277 : Registry::registerActionsTo(af, {"SalamanderApp"}); 53 : 54 : #ifdef ENABLE_TMAP8 55 759 : TMAP8App::registerAll(f, af, s); 56 : #endif 57 : 58 : #ifdef ENABLE_CARDINAL 59 759 : CardinalApp::registerAll(f, af, s); 60 : #endif 61 : 62 : /* register custom execute flags, action syntax, etc. here */ 63 3036 : } 64 : 65 : void 66 759 : SalamanderApp::registerApps() 67 : { 68 759 : registerApp(SalamanderApp); 69 759 : ModulesApp::registerApps(); 70 : 71 : #ifdef ENABLE_TMAP8 72 759 : TMAP8App::registerApps(); 73 : #endif 74 : 75 : #ifdef ENABLE_CARDINAL 76 759 : CardinalApp::registerApps(); 77 : #endif 78 759 : } 79 : 80 : /*************************************************************************************************** 81 : *********************** Dynamic Library Entry Points - DO NOT MODIFY ****************************** 82 : **************************************************************************************************/ 83 : extern "C" void 84 0 : SalamanderApp__registerAll(Factory & f, ActionFactory & af, Syntax & s) 85 : { 86 0 : SalamanderApp::registerAll(f, af, s); 87 0 : } 88 : extern "C" void 89 0 : SalamanderApp__registerApps() 90 : { 91 0 : SalamanderApp::registerApps(); 92 0 : }