leveldb
Public Member Functions | Private Attributes | List of all members
leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile Class Reference
Inheritance diagram for leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile:
Inheritance graph
[legend]
Collaboration diagram for leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile:
Collaboration graph
[legend]

Public Member Functions

 PosixRandomAccessFile (const std::string &fname, int fd)
 
virtual ~PosixRandomAccessFile ()
 
virtual Status Read (uint64_t offset, size_t n, Slice *result, char *scratch) const
 
- Public Member Functions inherited from leveldb::RandomAccessFile
 RandomAccessFile ()
 
virtual ~RandomAccessFile ()
 

Private Attributes

std::string filename_
 
int fd_
 

Detailed Description

Definition at line 69 of file env_posix.cc.

Constructor & Destructor Documentation

§ PosixRandomAccessFile()

leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile::PosixRandomAccessFile ( const std::string &  fname,
int  fd 
)
inline

§ ~PosixRandomAccessFile()

virtual leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile::~PosixRandomAccessFile ( )
inlinevirtual

Member Function Documentation

§ Read()

virtual Status leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile::Read ( uint64_t  offset,
size_t  n,
Slice result,
char *  scratch 
) const
inlinevirtual

Implements leveldb::RandomAccessFile.

Definition at line 79 of file env_posix.cc.

80  {
81  Status s;
82  ssize_t r = pread(fd_, scratch, n, static_cast<off_t>(offset));
83  *result = Slice(scratch, (r < 0) ? 0 : r);
84  if (r < 0) {
85  // An error: return a non-ok status
86  s = IOError(filename_, errno);
87  }
88  return s;
89  }
static Status IOError(const std::string &context, int err_number)
Definition: env_posix.cc:31
Here is the call graph for this function:

Member Data Documentation

§ fd_

int leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile::fd_
private

Definition at line 72 of file env_posix.cc.

§ filename_

std::string leveldb::anonymous_namespace{env_posix.cc}::PosixRandomAccessFile::filename_
private

Definition at line 71 of file env_posix.cc.


The documentation for this class was generated from the following file: