Skip to content

Commit

Permalink
Make interface methods that are overridden virtual
Browse files Browse the repository at this point in the history
  • Loading branch information
loganharbour committed Apr 7, 2021
1 parent f58217c commit 635dc61
Show file tree
Hide file tree
Showing 7 changed files with 21 additions and 22 deletions.
9 changes: 5 additions & 4 deletions framework/include/auxkernels/AuxKernel.h
Original file line number Diff line number Diff line change
Expand Up @@ -123,12 +123,13 @@ class AuxKernelTempl : public MooseObject,
template <typename T>
const T & getUserObjectByName(const UserObjectName & object_name) const;

const UserObject & getUserObjectBase(const std::string & param_name) const;
const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const;
const UserObject & getUserObjectBase(const std::string & param_name) const override;
const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const override;

const PostprocessorValue & getPostprocessorValue(const std::string & name,
unsigned int index = 0) const;
const PostprocessorValue & getPostprocessorValueByName(const PostprocessorName & name) const;
unsigned int index = 0) const override;
const PostprocessorValue &
getPostprocessorValueByName(const PostprocessorName & name) const override;

const VectorPostprocessorValue &
getVectorPostprocessorValue(const std::string & name,
Expand Down
11 changes: 4 additions & 7 deletions framework/include/ics/InitialConditionBase.h
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ class InitialConditionBase : public MooseObject,
/**
* reimplements the getUserObjectBase method from UserObjectInterface
*/
const UserObject & getUserObjectBase(const std::string & name);
const UserObject & getUserObjectBase(const std::string & name) const override;

protected:
/// The system object
Expand All @@ -118,15 +118,12 @@ class InitialConditionBase : public MooseObject,
std::set<std::string> _supplied_vars;

/// Depend UserObjects
std::set<std::string> _depend_uo;

/// If set, UOs retrieved by this IC will not be executed before this IC
const bool _ignore_uo_dependency;
mutable std::set<std::string> _depend_uo;
};

template <typename T>
const T &
InitialConditionBase::getUserObject(const std::string & name)
InitialConditionBase::getUserObject(const std::string & name) const
{
if (!_ignore_uo_dependency)
_depend_uo.insert(_pars.get<UserObjectName>(name));
Expand All @@ -135,7 +132,7 @@ InitialConditionBase::getUserObject(const std::string & name)

template <typename T>
const T &
InitialConditionBase::getUserObjectByName(const UserObjectName & name)
InitialConditionBase::getUserObjectByName(const UserObjectName & name) const
{
if (!_ignore_uo_dependency)
_depend_uo.insert(name);
Expand Down
7 changes: 4 additions & 3 deletions framework/include/interfaces/PostprocessorInterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ class PostprocessorInterface
*
* see getPostprocessorValueByName getPostprocessorValueOldByName getPostprocessorValueOlderByName
*/
const PostprocessorValue & getPostprocessorValue(const std::string & param_name,
const unsigned int index = 0) const;
virtual const PostprocessorValue & getPostprocessorValue(const std::string & param_name,
const unsigned int index = 0) const;
const PostprocessorValue & getPostprocessorValueOld(const std::string & param_name,
const unsigned int index = 0) const;
const PostprocessorValue & getPostprocessorValueOlder(const std::string & param_name,
Expand All @@ -74,7 +74,8 @@ class PostprocessorInterface
*
* see getPostprocessorValue getPostprocessorValueOld getPostprocessorValueOlder
*/
const PostprocessorValue & getPostprocessorValueByName(const PostprocessorName & name) const;
virtual const PostprocessorValue &
getPostprocessorValueByName(const PostprocessorName & name) const;
const PostprocessorValue & getPostprocessorValueOldByName(const PostprocessorName & name) const;
const PostprocessorValue & getPostprocessorValueOlderByName(const PostprocessorName & name) const;
///@}
Expand Down
8 changes: 4 additions & 4 deletions framework/include/userobject/UserObject.h
Original file line number Diff line number Diff line change
Expand Up @@ -161,13 +161,13 @@ class UserObject : public MooseObject,
template <typename T>
const T & getUserObjectByName(const UserObjectName & object_name) const;

const UserObject & getUserObjectBase(const UserObjectName & param_name) const;
const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const;
const UserObject & getUserObjectBase(const std::string & param_name) const override;
const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const override;

virtual const PostprocessorValue & getPostprocessorValue(const std::string & name,
unsigned int index = 0) const;
unsigned int index = 0) const override;
virtual const PostprocessorValue &
getPostprocessorValueByName(const PostprocessorName & name) const;
getPostprocessorValueByName(const PostprocessorName & name) const override;

virtual const VectorPostprocessorValue &
getVectorPostprocessorValue(const std::string & name,
Expand Down
4 changes: 2 additions & 2 deletions framework/include/userobject/UserObjectInterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,14 +65,14 @@ class UserObjectInterface
* @param param_name The name of the parameter key of the user object to retrieve
* @return The user object with name associated with the parameter \p param_name
*/
const UserObject & getUserObjectBase(const std::string & param_name) const;
virtual const UserObject & getUserObjectBase(const std::string & param_name) const;

/**
* Get an user object with the name \p object_name
* @param object_name The name of the user object to retrieve
* @return The user object with the name \p object_name
*/
const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const;
virtual const UserObject & getUserObjectBaseByName(const UserObjectName & object_name) const;

private:
/**
Expand Down
2 changes: 1 addition & 1 deletion framework/src/ics/InitialConditionBase.C
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ InitialConditionBase::getSuppliedItems()
}

const UserObject &
InitialConditionBase::getUserObjectBase(const std::string & name)
InitialConditionBase::getUserObjectBase(const std::string & name) const
{
if (!_ignore_uo_dependency)
_depend_uo.insert(_pars.get<UserObjectName>(name));
Expand Down
2 changes: 1 addition & 1 deletion framework/src/userobject/UserObject.C
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ UserObject::getDependObjects() const
}

const UserObject &
UserObject::getUserObjectBase(const UserObjectName & param_name) const
UserObject::getUserObjectBase(const std::string & param_name) const
{
const auto & uo = UserObjectInterface::getUserObjectBase(param_name);
_depend_uo.insert(uo.name());
Expand Down

0 comments on commit 635dc61

Please sign in to comment.