General Purpose library for Freestanding C++ and POSIX systems
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 

29 行
601 B

#pragma once
#include <cstddef>
#include <atomic>
namespace gp {
namespace system {
class system;
}
template<typename> class buffer;
class file_description {
std::atomic_int64_t ref_counter;
public:
virtual void read() = 0;
virtual void write() = 0;
virtual void set_attr() = 0;
virtual void get_attr() = 0;
virtual void seek() = 0;
virtual void close() = 0;
static file_description* open(system::system&, gp::buffer<std::byte>);
static file_description* create(system::system&, gp::buffer<std::byte>);
static file_description* remove(system::system&, gp::buffer<std::byte>);
};
}