/* MOD_V2.0 * Copyright (c) 2012 OpenDA Association * All rights reserved. * * This file is part of OpenDA. * * OpenDA is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation, either version 3 of * the License, or (at your option) any later version. * * OpenDA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with OpenDA. If not, see . */ using OpenMI.Standard2.TimeSpace; namespace OpenDA.DotNet.AdditionalInterfaces { public interface IOpenDaModelProvider { /// /// Initialize the factory that provides the model instances /// /// Directory where the model factory can find its config files /// Initialization arguments, usually being one argument, the config file void Initialize(string workingDirPath, params string[] args); /// /// Returns a model instance (an OpenMI time/space linkable component). /// ITimeSpaceComponent CreateInstance(); /// /// Stores an instance that was adjust by the outer world. /// void SaveInstance(ITimeSpaceComponent timeSpaceComponent); } }