Android-cuttlefish cvd tool
Public Member Functions | Private Attributes | List of all members
cuttlefish::ReaderFakeSeeker Class Reference

#include <fake_seek.h>

Inheritance diagram for cuttlefish::ReaderFakeSeeker:
Inheritance graph
[legend]
Collaboration diagram for cuttlefish::ReaderFakeSeeker:
Collaboration graph
[legend]

Public Member Functions

 ReaderFakeSeeker (uint64_t length)
 
Result< uint64_t > Read (void *buf, uint64_t count) final override
 
Result< uint64_t > SeekSet (uint64_t) final override
 
Result< uint64_t > SeekCur (int64_t) final override
 
Result< uint64_t > SeekEnd (int64_t) final override
 
- Public Member Functions inherited from cuttlefish::ReaderSeeker
Result< void > Visit (IoVisitor &) override
 
virtual Result< uint64_t > PRead (void *buf, uint64_t count, uint64_t offset) const =0
 
- Public Member Functions inherited from cuttlefish::Reader
virtual ~Reader ()=default
 
Result< void > Visit (IoVisitor &) override
 
virtual Result< uint64_t > Read (void *buf, uint64_t count)=0
 
- Public Member Functions inherited from cuttlefish::IoVisitable
virtual ~IoVisitable ()=default
 
virtual Result< void > Visit (IoVisitor &)=0
 
- Public Member Functions inherited from cuttlefish::Seeker
virtual ~Seeker ()=default
 
Result< void > Visit (IoVisitor &) override
 
virtual Result< uint64_t > SeekSet (uint64_t offset)=0
 
virtual Result< uint64_t > SeekCur (int64_t offset)=0
 
virtual Result< uint64_t > SeekEnd (int64_t offset)=0
 

Private Attributes

uint64_t seek_pos_ = 0
 
uint64_t length_
 

Detailed Description

Simulates a seek cursor over a data source with no native seeking state.

This makes it possible to satisfy the full ReaderSeeker interface by implementing only PRead. It's useful for data sources that don't correspond to files.

Constructor & Destructor Documentation

◆ ReaderFakeSeeker()

cuttlefish::ReaderFakeSeeker::ReaderFakeSeeker ( uint64_t  length)

Member Function Documentation

◆ Read()

Result< uint64_t > cuttlefish::ReaderFakeSeeker::Read ( void *  buf,
uint64_t  count 
)
finaloverridevirtual

Implements cuttlefish::Reader.

◆ SeekCur()

Result< uint64_t > cuttlefish::ReaderFakeSeeker::SeekCur ( int64_t  off)
finaloverridevirtual

Implements cuttlefish::Seeker.

◆ SeekEnd()

Result< uint64_t > cuttlefish::ReaderFakeSeeker::SeekEnd ( int64_t  off)
finaloverridevirtual

Implements cuttlefish::Seeker.

◆ SeekSet()

Result< uint64_t > cuttlefish::ReaderFakeSeeker::SeekSet ( uint64_t  offset)
finaloverridevirtual

Implements cuttlefish::Seeker.

Member Data Documentation

◆ length_

uint64_t cuttlefish::ReaderFakeSeeker::length_
private

◆ seek_pos_

uint64_t cuttlefish::ReaderFakeSeeker::seek_pos_ = 0
private

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