The Pedigree Project 0.1
Public Member Functions | Private Attributes | List of all members
AtaPagingTransport Class Referencefinal
+ Inheritance diagram for AtaPagingTransport:
+ Collaboration diagram for AtaPagingTransport:

Public Member Functions

 AtaPagingTransport (AtaDisk &disk)
 
PagingStatus prepare ()
 
PagingStatus transfer (PagingOperation operation, uint64_t offset, void *page) override
 
void release () override
 

Private Attributes

AtaDisk & m_Disk
 
ScsiController * m_Controller
 
Mutex m_Lock
 
OperationBarrier::Lease m_ControllerUse
 
RequestQueue::PreallocatedRequest m_Token
 
bool m_Active
 
PagingRequest m_Request
 
uint8_t m_Page [PagingChannel::PageBytes]
 

Detailed Description

Definition at line 16 of file AtaDisk-paging.cc.

Constructor & Destructor Documentation

◆ AtaPagingTransport()

AtaPagingTransport::AtaPagingTransport ( AtaDisk &  disk)
inlineexplicit

Definition at line 18 of file AtaDisk-paging.cc.

Member Function Documentation

◆ prepare()

PagingStatus AtaPagingTransport::prepare ( )
inline

Definition at line 21 of file AtaDisk-paging.cc.

◆ release()

void AtaPagingTransport::release ( )
inlineoverridevirtual

Implements PagingTransport.

Definition at line 62 of file AtaDisk-paging.cc.

◆ transfer()

PagingStatus AtaPagingTransport::transfer ( PagingOperation  operation,
uint64_t  offset,
void *  page 
)
inlineoverridevirtual

Implements PagingTransport.

Definition at line 33 of file AtaDisk-paging.cc.

Member Data Documentation

◆ m_Active

bool AtaPagingTransport::m_Active
private

Definition at line 76 of file AtaDisk-paging.cc.

◆ m_Controller

ScsiController* AtaPagingTransport::m_Controller
private

Definition at line 72 of file AtaDisk-paging.cc.

◆ m_ControllerUse

OperationBarrier::Lease AtaPagingTransport::m_ControllerUse
private

Definition at line 74 of file AtaDisk-paging.cc.

◆ m_Disk

AtaDisk& AtaPagingTransport::m_Disk
private

Definition at line 71 of file AtaDisk-paging.cc.

◆ m_Lock

Mutex AtaPagingTransport::m_Lock
private

Definition at line 73 of file AtaDisk-paging.cc.

◆ m_Page

uint8_t AtaPagingTransport::m_Page[PagingChannel::PageBytes]
private

Definition at line 78 of file AtaDisk-paging.cc.

◆ m_Request

PagingRequest AtaPagingTransport::m_Request
private

Definition at line 77 of file AtaDisk-paging.cc.

◆ m_Token

RequestQueue::PreallocatedRequest AtaPagingTransport::m_Token
private

Definition at line 75 of file AtaDisk-paging.cc.


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