annotate src/file-info.cc @ 1980:88aa1d1ed4af

[project @ 1996-02-27 00:58:19 by jwe]
author jwe
date Tue, 27 Feb 1996 00:59:28 +0000
parents e62277bf5fe0
children 003570e69c7b
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
1884
e62277bf5fe0 [project @ 1996-02-05 18:17:59 by jwe]
jwe
parents: 1755
diff changeset
4 Copyright (C) 1996 John W. Eaton
1424
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
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
40 file_info::file_info (void)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
41 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
42 file_number = -1;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
43 file_fptr = 0;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
44 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
45
1755
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1742
diff changeset
46 file_info::file_info (int n, const string& nm, FILE *t, const string& md)
1424
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
47 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
48 file_number = n;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
49 file_name = nm;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
50 file_fptr = t;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
51 file_mode = md;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
52 }
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 file_info::file_info (const file_info& f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
55 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
56 file_number = f.file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
57 file_name = f.file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
58 file_fptr = f.file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
59 file_mode = f.file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
60 }
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 file_info&
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
63 file_info::operator = (const file_info& f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
64 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
65 if (this != & f)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
66 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
67 file_number = f.file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
68 file_name = f.file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
69 file_fptr = f.file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
70 file_mode = f.file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
71 }
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
72 return *this;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
73 }
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 file_info::~file_info (void)
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
76 {
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 int
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
80 file_info::number (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
81 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
82 return file_number;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
83 }
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 string
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
86 file_info::name (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
87 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
88 return file_name;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
89 }
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 FILE *
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
92 file_info::fptr (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
93 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
94 return file_fptr;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
95 }
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 string
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
98 file_info::mode (void) const
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
99 {
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
100 return file_mode;
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
101 }
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 ;;; Local Variables: ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
105 ;;; mode: C++ ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
106 ;;; page-delimiter: "^/\\*" ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
107 ;;; End: ***
8b1837bc1eac [project @ 1995-09-19 03:32:04 by jwe]
jwe
parents:
diff changeset
108 */