]> git.saurik.com Git - wxWidgets.git/blame - include/wx/fstream.h
Motif updates
[wxWidgets.git] / include / wx / fstream.h
CommitLineData
32fc4afb
GL
1/////////////////////////////////////////////////////////////////////////////
2// Name: fstream.h
3// Purpose: File stream classes
4// Author: Guilhem Lavaux
5// Modified by:
6// Created: 11/07/98
7// RCS-ID: $Id$
8// Copyright: (c) Guilhem Lavaux
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
0c32066b 11
34138703
JS
12#ifndef _WX_WXFSTREAM_H__
13#define _WX_WXFSTREAM_H__
32fc4afb 14
0c32066b
JS
15#ifdef __GNUG__
16#pragma interface "fstream.h"
17#endif
18
32fc4afb
GL
19#include <wx/object.h>
20#include <wx/string.h>
21#include <wx/stream.h>
79c3e0e1 22#include <wx/file.h>
32fc4afb 23
75ed1d15 24class wxFileInputStream: public wxInputStream {
32fc4afb 25 public:
75ed1d15
GL
26 wxFileInputStream(const wxString& ifileName);
27 wxFileInputStream(wxFile& file);
28 wxFileInputStream(int fd);
79c3e0e1 29 virtual ~wxFileInputStream();
32fc4afb 30
1678ad78 31 virtual char Peek();
32fc4afb 32
25c70b07 33 bool Ok() const { return m_file->IsOpened(); }
79c3e0e1
GL
34
35 protected:
25c70b07 36 wxFileInputStream();
79c3e0e1 37
75ed1d15
GL
38 size_t OnSysRead(void *buffer, size_t size);
39 off_t OnSysSeek(off_t pos, wxSeekMode mode);
40 off_t OnSysTell() const;
41
42 protected:
43 wxFile *m_file;
44 bool m_file_destroy;
79c3e0e1
GL
45};
46
75ed1d15 47class wxFileOutputStream: public wxOutputStream {
79c3e0e1
GL
48 public:
49 wxFileOutputStream(const wxString& fileName);
75ed1d15
GL
50 wxFileOutputStream(wxFile& file);
51 wxFileOutputStream(int fd);
79c3e0e1
GL
52 virtual ~wxFileOutputStream();
53
1678ad78
GL
54 // To solve an ambiguity on GCC
55 inline wxOutputStream& Write(const void *buffer, size_t size)
56 { return wxOutputStream::Write(buffer, size); }
32fc4afb
GL
57
58 void Sync();
59
25c70b07 60 bool Ok() const { return m_file->IsOpened(); }
32fc4afb 61
79c3e0e1 62 protected:
25c70b07 63 wxFileOutputStream();
32fc4afb 64
75ed1d15
GL
65 size_t OnSysWrite(const void *buffer, size_t size);
66 off_t OnSysSeek(off_t pos, wxSeekMode mode);
67 off_t OnSysTell() const;
32fc4afb 68
75ed1d15
GL
69 protected:
70 wxFile *m_file;
71 bool m_file_destroy;
32fc4afb
GL
72};
73
74#endif