/// <summary> /// </summary> /// <param name="fsDriver"> /// the IO Driver; can be null; /// </param> public DatabaseDriver(IFileSystemDriver fsDriver) { this.fsDriver = fsDriver; ISerializer standardSerializer = new SerializerVersion0(); ISerializer objectTypeSerializer = new SerializerVersion1(); standardVectorSerializer = new VectorDataSerializer(fsDriver, standardSerializer); IVectorDataSerializer objectTypeVectorSerializer = new VectorDataSerializer(fsDriver, objectTypeSerializer); IVectorDataSerializer versionedVectorSerializer = new VersionManager(objectTypeVectorSerializer, standardVectorSerializer); gridDatabaseDriver = new GridDatabaseDriver(versionedVectorSerializer, fsDriver); sessionsDatabaseDriver = new SessionDatabaseDriver(standardSerializer, fsDriver); timestepDatabaseDriver = new TimeStepDatabaseDriver(standardVectorSerializer, fsDriver); }
/// <summary> /// Retrieves the directory where the files for the selected /// <paramref name="session"/> are stored. /// </summary> /// <param name="session"> /// The selected session. /// </param> /// <remarks> /// Should work on any System. /// </remarks> public static string GetSessionDirectory(ISessionInfo session) { return(SessionDatabaseDriver.GetSessionDirectory(session)); }