20 #include <boost/variant/variant.hpp>
21 #include <boost/variant/get.hpp>
29 void StoredDefinition::setModel(
string name) { _def =
Model(name); }
31 void StoredDefinition::setPackage(
string name) { _def = Package(name); }
33 void StoredDefinition::addFunction(Function& f) { _functions.insert(f.name(), f); }
41 Model& StoredDefinition::model() {
return boost::get<Model>(_def); }
43 Package& StoredDefinition::package() {
return boost::get<Package>(_def); }
45 bool StoredDefinition::isModel() {
return _def.type() ==
typeid(
Model); }
47 bool StoredDefinition::isPackage() {
return _def.type() ==
typeid(Package); }
49 void StoredDefinition::postProcess()
52 model().setEquations();
55 model().setCalledFunctions(_functions);
57 model().setModelConfig();
58 model().computeDependencies();
60 package().setFunctions(_functions);