The Pedigree Project  0.1
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
ArmCommonProcessorInformation Class Reference

#include <ProcessorInformation.h>

+ Collaboration diagram for ArmCommonProcessorInformation:

Public Member Functions

VirtualAddressSpacegetVirtualAddressSpace () const
 
void setVirtualAddressSpace (VirtualAddressSpace &virtualAddressSpace)
 
uintptr_t getKernelStack () const
 
void setKernelStack (uintptr_t stack)
 
ThreadgetCurrentThread () const
 
void setCurrentThread (Thread *pThread)
 
PerProcessorSchedulergetScheduler ()
 

Protected Member Functions

 ArmCommonProcessorInformation (ProcessorId processorId, uint8_t apicId=0)
 
virtual ~ArmCommonProcessorInformation ()
 

Private Member Functions

 ArmCommonProcessorInformation ()
 
 ArmCommonProcessorInformation (const ArmCommonProcessorInformation &)
 
ArmCommonProcessorInformationoperator= (const ArmCommonProcessorInformation &)
 

Private Attributes

ProcessorId m_ProcessorId
 
VirtualAddressSpacem_VirtualAddressSpace
 
Threadm_pCurrentThread
 
PerProcessorScheduler m_Scheduler
 

Friends

class Processor
 

Detailed Description

ARMv7 processor information structure

Definition at line 32 of file arm_common/ProcessorInformation.h.

Constructor & Destructor Documentation

ArmCommonProcessorInformation::ArmCommonProcessorInformation ( ProcessorId  processorId,
uint8_t  apicId = 0 
)
inlineprotected

Construct a ArmCommonProcessor object

Parameters
[in]processorIdIdentifier of the processor

Definition at line 74 of file arm_common/ProcessorInformation.h.

virtual ArmCommonProcessorInformation::~ArmCommonProcessorInformation ( )
inlineprotectedvirtual

The destructor does nothing

Definition at line 85 of file arm_common/ProcessorInformation.h.

References ArmCommonProcessorInformation(), and operator=().

ArmCommonProcessorInformation::ArmCommonProcessorInformation ( )
private

Default constructor

Note
NOT implemented

Referenced by ~ArmCommonProcessorInformation().

+ Here is the caller graph for this function:

ArmCommonProcessorInformation::ArmCommonProcessorInformation ( const ArmCommonProcessorInformation )
private

Copy-constructor

Note
NOT implemented

Member Function Documentation

VirtualAddressSpace& ArmCommonProcessorInformation::getVirtualAddressSpace ( ) const
inline

Get the current processor's VirtualAddressSpace

Returns
reference to the current processor's VirtualAddressSpace

Definition at line 39 of file arm_common/ProcessorInformation.h.

References VirtualAddressSpace::getKernelAddressSpace(), and m_VirtualAddressSpace.

ArmCommonProcessorInformation& ArmCommonProcessorInformation::operator= ( const ArmCommonProcessorInformation )
private

Assignment operator

Note
NOT implemented

Referenced by ~ArmCommonProcessorInformation().

+ Here is the caller graph for this function:

void ArmCommonProcessorInformation::setVirtualAddressSpace ( VirtualAddressSpace virtualAddressSpace)
inline

Set the current processor's VirtualAddressSpace

Parameters
[in]virtualAddressSpacereference to the new VirtualAddressSpace

Definition at line 48 of file arm_common/ProcessorInformation.h.

References m_pCurrentThread, m_Scheduler, and m_VirtualAddressSpace.

Member Data Documentation

Thread* ArmCommonProcessorInformation::m_pCurrentThread
private

The current thread

Definition at line 107 of file arm_common/ProcessorInformation.h.

Referenced by setVirtualAddressSpace().

ProcessorId ArmCommonProcessorInformation::m_ProcessorId
private

Identifier of that processor

Definition at line 102 of file arm_common/ProcessorInformation.h.

PerProcessorScheduler ArmCommonProcessorInformation::m_Scheduler
private

The processor's scheduler.

Definition at line 109 of file arm_common/ProcessorInformation.h.

Referenced by setVirtualAddressSpace().

VirtualAddressSpace* ArmCommonProcessorInformation::m_VirtualAddressSpace
private

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