acme
Foundational cross-platform layer of the ca2 framework
Toggle main menu visibility
Loading...
Searching...
No Matches
buffered_file.h
1
#pragma once
2
3
4
#include "acme/prototype/prototype/memory.h"
5
#include "file.h"
6
7
8
namespace
file
9
{
10
11
12
class
CLASS_DECL_ACME buffered_file :
13
virtual
public
::file::file
14
{
15
public
:
16
17
18
file_pointer m_pfile;
19
20
memsize m_uiBufferSize;
21
filesize m_uiPosition;
22
filesize m_uiBufLPos;
23
filesize m_uiBufUPos;
24
bool
m_bDirty;
25
filesize m_uiWriteLPos;
26
filesize m_uiWriteUPos;
27
memory
m_storage;
28
29
30
buffered_file(file_pointer pfile, memsize iBufferSize = 1024 * 128);
31
~buffered_file()
override
;
32
33
34
bool
is_valid()
const override
;
35
void
translate(filesize offset, ::enum_seek eseek)
override
;
36
filesize get_position()
const override
;
37
filesize size()
const override
;
38
39
40
using
::file::file::read;
41
memsize read(
void
* p, ::memsize s)
override
;
42
43
44
using
::file::file::write;
45
void
write(
const
void
* p, ::memsize s)
override
;
46
47
48
void
put_byte_back(::u8 uch)
override
;
49
50
void
flush
()
override
;
51
bool
buffer(memsize uiGrow = 0);
52
void
set_size(filesize dwNewLen)
override
;
53
54
virtual
memsize get_buffer_size();
55
56
57
};
58
59
60
}
// namespace file
61
62
file::buffered_file::flush
void flush() override
Definition
buffered_buffer.cpp:346
memory
Definition
memory.h:33
file
Definition
filesystem.h:16
filesystem
file
buffered_file.h
Generated by
1.17.0