public static Lib3dsFile lib3ds_file_open(string filename, log_func log_func) { try { FileStream f=File.Open(filename, FileMode.Open, FileAccess.Read); try { return lib3ds_file_open(f, log_func); } finally { f.Close(); } } catch { return null; } }
public static Lib3dsFile lib3ds_file_open(string filename, log_func log_func) { try { FileStream f = File.Open(filename, FileMode.Open, FileAccess.Read); try { Lib3dsIo io = new Lib3dsIo(); io.self = f; io.seek_func = fileio_seek_func; io.tell_func = fileio_tell_func; io.read_func = fileio_read_func; io.write_func = fileio_write_func; io.log_func = log_func; Lib3dsFile file = lib3ds_file_new(); if (file == null) { return(null); } if (!lib3ds_file_read(file, io)) { return(null); } return(file); } finally { f.Close(); } } catch { return(null); } }
public static Lib3dsFile lib3ds_file_open(Stream stream, log_func log_func) { try { Lib3dsIo io=new Lib3dsIo(); io.self=stream; io.seek_func=fileio_seek_func; io.tell_func=fileio_tell_func; io.read_func=fileio_read_func; io.write_func=fileio_write_func; io.log_func=log_func; Lib3dsFile file=lib3ds_file_new(); if(file==null) return null; if(!lib3ds_file_read(file, io)) return null; return file; } catch { return null; } }