acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
composite.h
1#pragma once
2
3
4#include "file.h"
5
6
7namespace file
8{
9
10
11 class CLASS_DECL_ACME reference :
12 virtual public ::file::file
13 {
14 public:
15
16
17
18 file_pointer m_pfile;
19
20
21 reference();
22 reference(file * pfile);
23 ~reference() override;
24
25
28
29
30
31 filesize get_position() const override;
32 file_status get_status() const override;
33 ::file::path get_file_path() const override;
34 void set_file_path(const ::file::path & path) override;
35
36
37 void open(const ::file::path & path, ::file::e_open eopen, ::pointer < ::file::exception > * pfileexception) override;
38
39
40 void translate(filesize offset, ::enum_seek eseek) override;
41 void set_size(filesize dwNewLen) override;
42 filesize size() const override;
43
44
45 void lock(filesize dwPos, filesize dwCount) override;
46 void unlock(filesize dwPos, filesize dwCount) override;
47
48
49 void abort() override;
50 void flush() override;
51 void close() override;
52
53
54 using ::file::file::read;
55 memsize read(void * p, ::memsize s) override;
56
57
58 using ::file::file::write;
59 void write(const void * p, ::memsize s) override;
60
61
62 ::string get_location() const override;
63
64 bool is_opened() const override;
65
66
67 };
68
69
70} // namespace file
71
72
Definition path.h:52
void flush() override
Definition composite.cpp:112
Definition filesystem.h:16
Definition status.h:12