The Pedigree Project 0.1
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
UserReturnFrame Class Reference
+ Collaboration diagram for UserReturnFrame:

Public Types

enum class  Origin { Syscall , Interrupt , SignalRestore , NewImage }
 

Public Member Functions

 UserReturnFrame (Thread &owner, const SyscallState &state, Origin origin=Origin::Syscall)
 
 UserReturnFrame (Thread &owner, const InterruptState &state, Origin origin=Origin::Interrupt)
 
 UserReturnFrame (const UserReturnFrame &)=delete
 
UserReturnFrameoperator= (const UserReturnFrame &)=delete
 
 UserReturnFrame (UserReturnFrame &&)=delete
 
UserReturnFrameoperator= (UserReturnFrame &&)=delete
 
Origin origin () const
 
bool snapshot (UserRegisterSnapshot &output) const
 

Private Attributes

Thread *const m_Owner
 
const Origin m_Origin
 
const SyscallState *const m_Syscall
 
const InterruptState *const m_Interrupt
 
bool m_Terminal = false
 

Friends

class Thread
 
class PerProcessorScheduler
 

Detailed Description

Definition at line 31 of file UserReturnFrame.h.

Member Enumeration Documentation

◆ Origin

enum class UserReturnFrame::Origin
strong

Definition at line 36 of file UserReturnFrame.h.

Constructor & Destructor Documentation

◆ UserReturnFrame() [1/2]

UserReturnFrame::UserReturnFrame ( Thread owner,
const SyscallState &  state,
Origin  origin = Origin::Syscall 
)
inline

Definition at line 39 of file UserReturnFrame.h.

◆ UserReturnFrame() [2/2]

UserReturnFrame::UserReturnFrame ( Thread owner,
const InterruptState &  state,
Origin  origin = Origin::Interrupt 
)
inline

Definition at line 41 of file UserReturnFrame.h.

Member Function Documentation

◆ origin()

Origin UserReturnFrame::origin ( ) const
inline

Definition at line 49 of file UserReturnFrame.h.

◆ snapshot()

bool UserReturnFrame::snapshot ( UserRegisterSnapshot output) const

Definition at line 85 of file UserReturnFrame.cc.

Friends And Related Symbol Documentation

◆ PerProcessorScheduler

friend class PerProcessorScheduler
friend

Definition at line 33 of file UserReturnFrame.h.

◆ Thread

friend class Thread
friend

Definition at line 32 of file UserReturnFrame.h.

Member Data Documentation

◆ m_Interrupt

const InterruptState* const UserReturnFrame::m_Interrupt
private

Definition at line 61 of file UserReturnFrame.h.

◆ m_Origin

const Origin UserReturnFrame::m_Origin
private

Definition at line 59 of file UserReturnFrame.h.

◆ m_Owner

Thread* const UserReturnFrame::m_Owner
private

Definition at line 58 of file UserReturnFrame.h.

◆ m_Syscall

const SyscallState* const UserReturnFrame::m_Syscall
private

Definition at line 60 of file UserReturnFrame.h.

◆ m_Terminal

bool UserReturnFrame::m_Terminal = false
private

Definition at line 62 of file UserReturnFrame.h.


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