Exemple #1
0
void Executive::dump(std::ostream& out, const std::string& name) const
{
    vpz::Vpz f;

    f.project().setAuthor(getModelName());
    f.project().model().setModel(coupledmodel().clone());
    f.project().dynamics().add(m_coordinator.dynamics());
    f.project().experiment().addConditions(m_coordinator.conditions());
    f.project().experiment().setName(name);
    f.project().experiment().setBegin(0.0);
    f.project().experiment().setDuration(1.0);

    if (not f.project().dynamics().exist("unknow")) {
        f.project().dynamics().add(vpz::Dynamic("unknow"));
    }

    // std::vector < vpz::AtomicModel* > lst;
    // vpz::BaseModel::getAtomicModelList(f.project().model().model(), lst);

    // for (std::vector < vpz::AtomicModel* >::iterator it = lst.begin();
    //      it != lst.end(); ++it) {
    //     f.project().model().atomicModels().add(
    //         *it, vpz::AtomicModelTemp("", "unknow", ""));
    // }

    f.write(out);

    delete f.project().model().model();
    f.project().model().setModel(0);
}
Exemple #2
0
	virtual void internalTransition(const vle::devs::Time& /*time*/)
	{
		if (mSended == false) {
			// Ajout des connexions mod�le coupl� -> mod�le sum
			const vle::vpz::ConnectionList& inputs = coupledmodel().getInputPortList();
			vle::vpz::ConnectionList::const_iterator it;
			
			/* DEBUG : affiche les connections
			for (it = inputs.begin(); it != inputs.end(); ++it) {
				std::cout << "model: " << getModel().getParentName() << it->first << std::endl;
			}*/
			
			for (it = inputs.begin(); it != inputs.end(); ++it) {
				if (it->first.size() >= 5 and it->first.compare(0, 5, "node-") == 0) {
					addInputPort("Deposition", it->first);
					addConnection(coupledmodelName(), it->first, "Deposition", it->first);
					mPortList.push_back(it->first);
				}
			}

			// Pour les mod�les sans d�pendances
			if (mPortList.empty()){
				createModelFromClass("node-init", "node-init");
				//delModel("Deposition");
				removeConnection("Deposition", "update", "Unit", "in");	
				addConnection("node-init", "update", "Unit", "in");
			}
			mSended = true;
		} else {
			mSended = false;
		}
    }
Exemple #3
0
void Executive::dump(std::ostream &out, const std::string &name) const
{
    vpz::Vpz f;

    f.project().setAuthor(getModelName());
    f.project().model().setGraph(
        std::unique_ptr<vpz::BaseModel>(coupledmodel().clone()));
    f.project().dynamics().add(m_coordinator.dynamics());
    f.project().experiment().addConditions(m_coordinator.conditions());
    f.project().experiment().setName(name);
    f.project().experiment().setBegin(0.0);
    f.project().experiment().setDuration(1.0);

    if (not f.project().dynamics().exist("unknown")) {
        f.project().dynamics().add(vpz::Dynamic("unknown"));
    }

    f.write(out);
}