XC Open source finite element analysis program
StandardStream.h
1 //----------------------------------------------------------------------------
2 // XC program; finite element analysis code
3 // for structural analysis and design.
4 //
5 // Copyright (C) Luis Claudio Pérez Tato
6 //
7 // This program derives from OpenSees <http://opensees.berkeley.edu>
8 // developed by the «Pacific earthquake engineering research center».
9 //
10 // Except for the restrictions that may arise from the copyright
11 // of the original program (see copyright_opensees.txt)
12 // XC is free software: you can redistribute it and/or modify
13 // it under the terms of the GNU General Public License as published by
14 // the Free Software Foundation, either version 3 of the License, or
15 // (at your option) any later version.
16 //
17 // This software is distributed in the hope that it will be useful, but
18 // WITHOUT ANY WARRANTY; without even the implied warranty of
19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 // GNU General Public License for more details.
21 //
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program.
25 // If not, see <http://www.gnu.org/licenses/>.
26 //----------------------------------------------------------------------------
27 /* ****************************************************************** **
28 ** OpenSees - Open System for Earthquake Engineering Simulation **
29 ** Pacific Earthquake Engineering Research Center **
30 ** **
31 ** **
32 ** (C) Copyright 1999, The Regents of the University of California **
33 ** All Rights Reserved. **
34 ** **
35 ** Commercial use of this program without express permission of the **
36 ** University of California, Berkeley, is strictly prohibited. See **
37 ** file 'COPYRIGHT' in main directory for information on usage and **
38 ** redistribution, and for a DISCLAIMER OF ALL WARRANTIES. **
39 ** **
40 ** Developed by: **
41 ** Frank McKenna (fmckenna@ce.berkeley.edu) **
42 ** Gregory L. Fenves (fenves@ce.berkeley.edu) **
43 ** Filip C. Filippou (filippou@ce.berkeley.edu) **
44 ** **
45 ** ****************************************************************** */
46 
47 // $Revision: 1.2 $
48 // $Date: 2003/02/25 23:33:14 $
49 // $Source: /usr/local/cvs/OpenSees/SRC/handler/StandardStream.h,v $
50 
51 #ifndef _StandardStream
52 #define _StandardStream
53 
54 #include <utility/handler/OPS_Stream.h>
55 
56 #include <fstream>
57 
58 namespace XC {
59 class StandardStream : public OPS_Stream
60 {
61  private:
62  std::ofstream theFile;
63  int fileOpen;
64  public:
66  virtual ~StandardStream();
67 
68  int setFile(const char *fileName, openMode mode = OVERWRITE);
69  int setPrecision(int precision);
70  int setFloatField(floatField);
71  int precision(int precision) {return 0;};
72  int width(int width) {return 0;};
73  std::ofstream &stream(void)
74  { return theFile; }
75 
76  OPS_Stream& write(const char *s, int n);
77  OPS_Stream& write(const unsigned char *s, int n);
78  OPS_Stream& write(const signed char *s, int n);
79  OPS_Stream& write(const void *s, int n);
80  OPS_Stream& operator<<(char c);
81  OPS_Stream& operator<<(unsigned char c);
82  OPS_Stream& operator<<(signed char c);
83  OPS_Stream& operator<<(const char *s);
84  OPS_Stream& operator<<(const unsigned char *s);
85  OPS_Stream& operator<<(const signed char *s);
86  OPS_Stream& operator<<(const void *p);
87  OPS_Stream& operator<<(int n);
88  OPS_Stream& operator<<(unsigned int n);
89  OPS_Stream& operator<<(long n);
90  OPS_Stream& operator<<(unsigned long n);
91  OPS_Stream& operator<<(short n);
92  OPS_Stream& operator<<(unsigned short n);
93  OPS_Stream& operator<<(bool b);
94  OPS_Stream& operator<<(double n);
95  OPS_Stream& operator<<(float n);
96  // OPS_Stream& operator<<(__omanip func);
97  // OPS_Stream& operator<<(__manip func);
98  // OPS_Stream& operator<<(streambuf*);
99  // OPS_Stream& ends(OPS_Stream& outs);
100  // OPS_Stream& flush(OPS_Stream& outs);
101  // OPS_Stream& (OPS_Stream& outs);
102 
103 };
104 } // end of XC namespace
105 
106 #endif
Definition: OPS_Stream.h:60
================================================================================
Definition: ContinuaReprComponent.h:34
Definition: StandardStream.h:59