Mercurial > hg > octave-nkf
changeset 1424:8b1837bc1eac
[project @ 1995-09-19 03:32:04 by jwe]
Initial revision
author | jwe |
---|---|
date | Tue, 19 Sep 1995 03:32:04 +0000 |
parents | 2d88758ed94b |
children | c194fa377970 |
files | src/file-info.cc src/file-info.h |
diffstat | 2 files changed, 178 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/src/file-info.cc @@ -0,0 +1,109 @@ +// file-info.cc -*- C++ -*- +/* + +Copyright (C) 1993, 1994, 1995 John W. Eaton + +This file is part of Octave. + +Octave is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2, or (at your option) any +later version. + +Octave 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with Octave; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +*/ + +// Written by John C. Campbell <jcc@che.utexas.edu>. +// +// Thomas Baier <baier@ci.tuwien.ac.at> added the following functions: +// +// popen pclose execute sync_system async_system +// waitpid mkfifo unlink + + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include <cstdio> + +#include "file-info.h" +// #include "utils.h" + +file_info::file_info (void) +{ + file_number = -1; + file_fptr = 0; +} + +file_info::file_info (int n, const char *nm, FILE *t, const char *md) +{ + file_number = n; + file_name = nm; + file_fptr = t; + file_mode = md; +} + +file_info::file_info (const file_info& f) +{ + file_number = f.file_number; + file_name = f.file_name; + file_fptr = f.file_fptr; + file_mode = f.file_mode; +} + +file_info& +file_info::operator = (const file_info& f) +{ + if (this != & f) + { + file_number = f.file_number; + file_name = f.file_name; + file_fptr = f.file_fptr; + file_mode = f.file_mode; + } + return *this; +} + +file_info::~file_info (void) +{ +} + +int +file_info::number (void) const +{ + return file_number; +} + +string +file_info::name (void) const +{ + return file_name; +} + +FILE * +file_info::fptr (void) const +{ + return file_fptr; +} + +string +file_info::mode (void) const +{ + return file_mode; +} + +/* +;;; Local Variables: *** +;;; mode: C++ *** +;;; page-delimiter: "^/\\*" *** +;;; End: *** +*/
new file mode 100644 --- /dev/null +++ b/src/file-info.h @@ -0,0 +1,69 @@ +// file-info.h -*- C++ -*- +/* + +Copyright (C) 1993, 1994, 1995 John W. Eaton + +This file is part of Octave. + +Octave is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2, or (at your option) any +later version. + +Octave 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 General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with Octave; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +*/ + +// Written by John C. Campbell <jcc@che.utexas.edu>. + +#if !defined (octave_file_info_h) +#define octave_file_info_h 1 + +#include <string> + +#include <Pix.h> + +#include "oct-obj.h" + +class +file_info +{ +public: + file_info (void); + file_info (int num, const char *nm, FILE *t, const char *md); + file_info (const file_info& f); + + file_info& operator = (const file_info& f); + + ~file_info (void); + + int number (void) const; + string name (void) const; + FILE *fptr (void) const; + string mode (void) const; + + int eof (void) const; + int error (void) const; + +private: + int file_number; + string file_name; + FILE *file_fptr; + string file_mode; +}; + +#endif + +/* +;;; Local Variables: *** +;;; mode: C++ *** +;;; page-delimiter: "^/\\*" *** +;;; End: *** +*/