annotate src/file-info.cc @ 1511:74f9e88a2c12

[project @ 1995-10-03 10:49:31 by jwe]
author jwe
date Tue, 03 Oct 1995 10:50:19 +0000
parents 8fc8679401bf
children a02f140ed897
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1424
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
1 // file-info.cc -*- C++ -*-
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
2 /*
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
3
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
4 Copyright (C) 1993, 1994, 1995 John W. Eaton
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
5
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
6 This file is part of Octave.
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
7
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
8 Octave is free software; you can redistribute it and/or modify it
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
9 under the terms of the GNU General Public License as published by the
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
10 Free Software Foundation; either version 2, or (at your option) any
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
11 later version.
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
12
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
13 Octave is distributed in the hope that it will be useful, but WITHOUT
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
16 for more details.
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
17
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
18 You should have received a copy of the GNU General Public License
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
19 along with Octave; see the file COPYING. If not, write to the Free
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
20 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
21
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
22 */
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
23
1453
8fc8679401bf [project @ 1995-09-20 04:32:11 by jwe]
jwe
parents: 1424
diff changeset
24 // Written by John C. Campbell <jcc@bevo.che.wisc.edu>
1424
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
25 //
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
26 // Thomas Baier <baier@ci.tuwien.ac.at> added the following functions:
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
27 //
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
28 // popen pclose execute sync_system async_system
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
29 // waitpid mkfifo unlink
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
30
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
31
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
32 #ifdef HAVE_CONFIG_H
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
33 #include <config.h>
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
34 #endif
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
35
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
36 #include <cstdio>
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
37
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
38 #include "file-info.h"
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
39 // #include "utils.h"
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
40
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
41 file_info::file_info (void)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
42 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
43 file_number = -1;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
44 file_fptr = 0;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
45 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
46
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
47 file_info::file_info (int n, const char *nm, FILE *t, const char *md)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
48 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
49 file_number = n;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
50 file_name = nm;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
51 file_fptr = t;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
52 file_mode = md;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
53 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
54
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
55 file_info::file_info (const file_info& f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
56 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
57 file_number = f.file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
58 file_name = f.file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
59 file_fptr = f.file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
60 file_mode = f.file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
61 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
62
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
63 file_info&
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
64 file_info::operator = (const file_info& f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
65 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
66 if (this != & f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
67 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
68 file_number = f.file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
69 file_name = f.file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
70 file_fptr = f.file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
71 file_mode = f.file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
72 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
73 return *this;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
74 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
75
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
76 file_info::~file_info (void)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
77 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
78 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
79
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
80 int
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
81 file_info::number (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
82 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
83 return file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
84 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
85
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
86 string
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
87 file_info::name (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
88 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
89 return file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
90 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
91
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
92 FILE *
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
93 file_info::fptr (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
94 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
95 return file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
96 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
97
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
98 string
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
99 file_info::mode (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
100 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
101 return file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
102 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
103
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
104 /*
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
105 ;;; Local Variables: ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
106 ;;; mode: C++ ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
107 ;;; page-delimiter: "^/\\*" ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
108 ;;; End: ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
109 */