Pyrogenesis  trunk
Classes | Typedefs | Functions
io Namespace Reference

Classes

class  ControlBlockRingBuffer
 
struct  DefaultCompletedHook
 
struct  DefaultIssueHook
 
struct  FreeAligned
 
struct  Operation
 
struct  Parameters
 

Typedefs

using BufferPtr = std::unique_ptr< u8, FreeAligned >
 

Functions

Status Issue (aiocb &cb, size_t queueDepth)
 
Status WaitUntilComplete (aiocb &cb, size_t queueDepth)
 
static io::BufferPtr Allocate (size_t size, size_t alignment=maxSectorSize)
 
template<class CompletedHook , class IssueHook >
static Status Run (const Operation &op, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook(), const IssueHook &issueHook=IssueHook())
 
template<class CompletedHook >
static Status Run (const Operation &op, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook())
 
static Status Run (const Operation &op, const Parameters &p=Parameters())
 
template<class CompletedHook , class IssueHook >
static Status Store (const OsPath &pathname, const void *data, size_t size, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook(), const IssueHook &issueHook=IssueHook())
 
template<class CompletedHook >
static Status Store (const OsPath &pathname, const void *data, size_t size, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook())
 
static Status Store (const OsPath &pathname, const void *data, size_t size, const Parameters &p=Parameters())
 
template<class CompletedHook , class IssueHook >
static Status Load (const OsPath &pathname, void *buf, size_t size, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook(), const IssueHook &issueHook=IssueHook())
 
template<class CompletedHook >
static Status Load (const OsPath &pathname, void *buf, size_t size, const Parameters &p=Parameters(), const CompletedHook &completedHook=CompletedHook())
 
static Status Load (const OsPath &pathname, void *buf, size_t size, const Parameters &p=Parameters())
 

Typedef Documentation

◆ BufferPtr

using io::BufferPtr = typedef std::unique_ptr<u8, FreeAligned>

Function Documentation

◆ Allocate()

static io::BufferPtr io::Allocate ( size_t  size,
size_t  alignment = maxSectorSize 
)
inlinestatic

◆ Issue()

Status io::Issue ( aiocb cb,
size_t  queueDepth 
)

◆ Load() [1/3]

template<class CompletedHook , class IssueHook >
static Status io::Load ( const OsPath pathname,
void *  buf,
size_t  size,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook(),
const IssueHook &  issueHook = IssueHook() 
)
inlinestatic

◆ Load() [2/3]

template<class CompletedHook >
static Status io::Load ( const OsPath pathname,
void *  buf,
size_t  size,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook() 
)
inlinestatic

◆ Load() [3/3]

static Status io::Load ( const OsPath pathname,
void *  buf,
size_t  size,
const Parameters p = Parameters() 
)
inlinestatic

◆ Run() [1/3]

template<class CompletedHook , class IssueHook >
static Status io::Run ( const Operation op,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook(),
const IssueHook &  issueHook = IssueHook() 
)
inlinestatic

◆ Run() [2/3]

template<class CompletedHook >
static Status io::Run ( const Operation op,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook() 
)
inlinestatic

◆ Run() [3/3]

static Status io::Run ( const Operation op,
const Parameters p = Parameters() 
)
inlinestatic

◆ Store() [1/3]

template<class CompletedHook , class IssueHook >
static Status io::Store ( const OsPath pathname,
const void *  data,
size_t  size,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook(),
const IssueHook &  issueHook = IssueHook() 
)
inlinestatic

◆ Store() [2/3]

template<class CompletedHook >
static Status io::Store ( const OsPath pathname,
const void *  data,
size_t  size,
const Parameters p = Parameters(),
const CompletedHook &  completedHook = CompletedHook() 
)
inlinestatic

◆ Store() [3/3]

static Status io::Store ( const OsPath pathname,
const void *  data,
size_t  size,
const Parameters p = Parameters() 
)
inlinestatic

◆ WaitUntilComplete()

Status io::WaitUntilComplete ( aiocb cb,
size_t  queueDepth 
)