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

#include <concat.h>

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

Public Member Functions

virtual Result< uint64_t > PRead (void *buf, uint64_t count, uint64_t offset) const
 
- Public Member Functions inherited from cuttlefish::ReaderFakeSeeker
 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
 

Static Public Member Functions

static Result< ConcatReaderSeekerCreate (std::vector< std::unique_ptr< ReaderSeeker > >)
 

Private Member Functions

 ConcatReaderSeeker (std::map< uint64_t, std::unique_ptr< ReaderSeeker > > off_to_reader, uint64_t length)
 

Private Attributes

std::map< uint64_t, std::unique_ptr< ReaderSeeker > > off_to_reader_
 

Detailed Description

A ReaderSeeker implementation that concatenates a set of readers.

The readers are assumed to have no holes when reading and are assumed to not change in size.

Constructor & Destructor Documentation

◆ ConcatReaderSeeker()

cuttlefish::ConcatReaderSeeker::ConcatReaderSeeker ( std::map< uint64_t, std::unique_ptr< ReaderSeeker > >  off_to_reader,
uint64_t  length 
)
explicitprivate

Member Function Documentation

◆ Create()

Result< ConcatReaderSeeker > cuttlefish::ConcatReaderSeeker::Create ( std::vector< std::unique_ptr< ReaderSeeker > >  readers)
static

◆ PRead()

Result< uint64_t > cuttlefish::ConcatReaderSeeker::PRead ( void *  buf,
uint64_t  count,
uint64_t  offset 
) const
virtual

Member Data Documentation

◆ off_to_reader_

std::map<uint64_t, std::unique_ptr<ReaderSeeker> > cuttlefish::ConcatReaderSeeker::off_to_reader_
private

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