127 std::map<T *, std::set<int>> pre_aux_dependencies;
128 std::map<T *, std::set<int>> post_aux_dependencies;
134 std::map<T *, bool> is_pre_ic;
136 for (
const auto obj : objs)
137 is_pre_ic[obj] =
false;
142 for (
const auto obj : objs)
144 if (depend_objects_aux.count(obj->name()) > 0)
146 pre_aux_dependencies[obj].insert(flag);
148 is_pre_ic.at(obj) =
true;
154 post_aux_dependencies[obj].insert(flag);
158 for (
const auto obj : objs)
160 if (ic_deps.count(obj->name()) > 0 ||
161 (obj->isParamValid(
"force_preic") && obj->template getParam<bool>(
"force_preic")))
164 is_pre_ic.at(obj) =
true;
167 if ((obj->isParamValid(
"force_preaux") && obj->template getParam<bool>(
"force_preaux")))
169 post_aux_dependencies[obj].clear();
171 pre_aux_dependencies[obj].insert(flag);
173 else if (obj->isParamValid(
"force_postaux") && obj->template getParam<bool>(
"force_postaux"))
175 pre_aux_dependencies[obj].clear();
177 post_aux_dependencies[obj].insert(flag);
186 if (!is_pre_ic.at(obj))
191 for (
auto & item : pre_aux_dependencies)
194 for (
auto & item : post_aux_dependencies)
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
const std::set< ExecFlagType > & items() const
Reference the all the available items.
std::set< std::string > getDependObjects(ExecFlagType type)
Get a list of dependent UserObjects for this exec type.
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
void update(MooseObject *obj)
update updates the metadata/attribute-info stored for the given object obj that must already exists i...
Class for containing MooseEnum item information.
ExecFlagEnum execute_flags
Storage for the registered execute flags.
const ExecFlagType EXEC_INITIAL