IShSMPUtilities Struct Reference
[Shell Utilities]

SMP Utilities - Utilities for dealing with SMP systems. More...

Inheritance diagram for IShSMPUtilities:

IMCUnknown List of all members.

Public Member Functions

virtual uint32 MCCOMAPI GetNumberOfCPUs ()=0
virtual boolean MCCOMAPI AreSystemCallsSafe ()=0
virtual int32 MCCOMAPI LaunchSMPThread (ISMPThread *thread, uint32 stackSize, IShSMPRemoteLauncher *remoteLauncher, ESmpThreadPriority threadPriority, boolean *abortFlagPtr)=0
virtual void MCCOMAPI CreateCriticalSection (IShCriticalSection **criticalSection)=0
virtual void MCCOMAPI CreateLocalStorage (IShLocalStorage **localStorage)=0
virtual void MCCOMAPI CreateLocalStorageWithRelease (IShLocalStorage **localStorage)=0
virtual void MCCOMAPI CreateAtomicCounter (IShAtomicCounter **atomicCounter)=0
virtual void MCCOMAPI CreateSemaphore (IShSemaphore **semaphore, int32 maxValue, int32 initialValue)=0
virtual void MCCOMAPI CreateRemoteLauncher (IShSMPRemoteLauncher **remoteLauncher, int32 pauseThreadID)=0
virtual void *MCCOMAPI DoRemoteInstructions (ISMPRemoteInstructions *remoteInstructions, boolean forceRemote, boolean returnImmediatly)=0
virtual void MCCOMAPI GetMainLocalStorage (TMainLocalStorageInfos *&mainLocalStorage, TMCArray< uint32 > *&holesIndex)=0
virtual void MCCOMAPI GetAllThreadLocalStorage (TMCPtrArray< TMCLocalStorageDataPtrArray > *&allThreadLocalStorage, TMCCriticalSection *&allThreadLocalStorageCS)=0
virtual void *MCCOMAPI GetPlatformData ()=0

Detailed Description

SMP Utilities - Utilities for dealing with SMP systems.


Member Function Documentation

virtual boolean MCCOMAPI IShSMPUtilities::AreSystemCallsSafe (   )  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::CreateAtomicCounter (  IShAtomicCounter **  atomicCounter  )  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::CreateCriticalSection (  IShCriticalSection **  criticalSection  )  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::CreateLocalStorage (  IShLocalStorage **  localStorage  )  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::CreateLocalStorageWithRelease (  IShLocalStorage **  localStorage  )  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::CreateRemoteLauncher (  IShSMPRemoteLauncher **  remoteLauncher,
int32  pauseThreadID
)  [pure virtual]
 

Creates an IShSMPRemoteLauncher

Parameters:
remoteLauncher Returns a pointer to the launcher created
pauseThreadID If this != 0, it defines the ID of a thread (see IShThreadUtilities.h). This thread will be automatically paused and resumed as needed

virtual void MCCOMAPI IShSMPUtilities::CreateSemaphore (  IShSemaphore **  semaphore,
int32  maxValue,
int32  initialValue
)  [pure virtual]
 

virtual void* MCCOMAPI IShSMPUtilities::DoRemoteInstructions (  ISMPRemoteInstructions *  remoteInstructions,
boolean  forceRemote,
boolean  returnImmediatly
)  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::GetAllThreadLocalStorage (  TMCPtrArray< TMCLocalStorageDataPtrArray > *&  allThreadLocalStorage,
TMCCriticalSection *&  allThreadLocalStorageCS
)  [pure virtual]
 

virtual void MCCOMAPI IShSMPUtilities::GetMainLocalStorage (  TMainLocalStorageInfos *&  mainLocalStorage,
TMCArray< uint32 > *&  holesIndex
)  [pure virtual]
 

virtual uint32 MCCOMAPI IShSMPUtilities::GetNumberOfCPUs (   )  [pure virtual]
 

virtual void* MCCOMAPI IShSMPUtilities::GetPlatformData (   )  [pure virtual]
 

virtual int32 MCCOMAPI IShSMPUtilities::LaunchSMPThread (  ISMPThread *  thread,
uint32  stackSize,
IShSMPRemoteLauncher *  remoteLauncher,
ESmpThreadPriority  threadPriority,
boolean *  abortFlagPtr
)  [pure virtual]
 

Launches a SMP thread

Parameters:
thread The thread to launch
stackSize The memory to allocate for the thread's stack
remoteLauncher the remote launcher to the application (for things that cannot be done in SMP like UI and asserts) If the remoteLauncher is NULL then the default remote launcher is used.
threadPriority The priority of the thread. NULL means kNormalPriority
abortFlagPtr Pointer to abort flag (indicates that the thread should abort)
Returns:
The ID of the launched thread
Note:
TSmpThreadsLauncher is more convenient to use.


The documentation for this struct was generated from the following file:
Generated on Mon Mar 14 12:29:05 2005 for Carrara SDK Doc by  doxygen 1.3.9.1