Making your App depend on another App

When you fork stork you get a new application that inherits from MOOSE and all of the physics modules by default, but what if you want to inherit from an existing application? This blog post dives into the details of how you modify you application to do just that!

We highly recommend that you add the application you are branching from as a submodule. This will ensure that update to that application don't surprise you and change the behavior of your tests or simulations without you noticing.

For the purpose of this discussion let's call the application we are branching from "SLUG" and the application that we are creating "ARION" (A specific kind of slug).

Step 1 Adding the dependent app submodule

I'm assuming that you already have your application created (from stork) and cloned locally

$ cd ~/projects/arion
$ git submodule add git@github.com:somename/slug.git

Step 2 Editing the Makefile

Now you need to tell your Makefile about the new application.

# Add these lines to the arion Makefile underneath the existing "modules" area.

# dep apps
SLUG_DIR          ?= $(CURDIR)/slug
include            $(FRAMEWORK_DIR)/app.mk

These lines take advantage of the fact that all MOOSE-based applications look the same and use the same build system. You are telling the Makefile where to find that application and defining a few variables so that the rules in the generic "app.mk" file are adapted specifically for the application you are including.

Step 3 Register the objects in your App and the App itself

Finally you need to update your main "app" file to tell it to use the objects from the dependent application.

# Edit your arion/src/base/ArionApp.C file

#include "SlugApp.h"
#include "SlugSyntax.h"

# in your ArionApp constructor register the app and associate the syntax

SlugApp::associateSyntax(_syntax, _action_factory);

# Finally make sure you register the app itself in registerApps()

That's all there is to it.

Current rating: 5


bragas calvin klein 5 months, 1 week ago

Any kind of help would be bragas calvin klein really appreciated!|

Link | Reply
Currently unrated

JesminLinda 2 months, 2 weeks ago

Any kind of help would be bragas calvin klein really appreciated!|

Link | Reply
Currently unrated

uk.bestessays 2 months, 2 weeks ago

Many developers do not know how to make the appropriate coding for a specific project.When a person follows these steps by steps, they will become successful to make the desired app.Would you please let us know about the whole methods for coding the appropriate ways?

Link | Reply
Currently unrated

New Comment


required (not published)


R&D 100

Recent Posts






RSS / Atom