You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-12-18 13:54:11 +03:00
36 lines
979 B
C++
36 lines
979 B
C++
|
|
#ifndef IOCOORDINATOR_H_
|
|
#define IOCOORDINATOR_H_
|
|
|
|
#include <sys/types.h>
|
|
#include <stdint.h>
|
|
#include <sys/stat.h>
|
|
#include <vector>
|
|
#include <string>
|
|
#include <boost/utility.hpp>
|
|
|
|
namespace storagemanager
|
|
{
|
|
|
|
class IOCoordinator : public boost::noncopyable
|
|
{
|
|
public:
|
|
IOCoordinator();
|
|
virtual ~IOCoordinator();
|
|
|
|
void willRead(const char *filename, off_t offset, size_t length);
|
|
int read(const char *filename, uint8_t *data, off_t offset, size_t length);
|
|
int write(const char *filename, const uint8_t *data, off_t offset, size_t length);
|
|
int append(const char *filename, const uint8_t *data, size_t length);
|
|
int open(const char *filename, int openmode, struct stat *out);
|
|
int listDirectory(const char *filename, std::vector<std::string> *listing);
|
|
int stat(const char *path, struct stat *out);
|
|
int truncate(const char *path, size_t newsize);
|
|
int unlink(const char *path);
|
|
};
|
|
|
|
}
|
|
|
|
|
|
#endif
|