#include <SemaphoreCommon.hpp>
Inheritance diagram for corelinux::SemaphoreCommon


Static Public Methods | |
| Int | getSemaphoreMaxValue ( SemaphoreGroupPtr, Int ) |
| Returns the maximum value for a semaphore as defined by the original semaphore claimant. More... | |
| void | groupDefined ( SemaphoreGroupPtr ) |
| When a shared semaphore group is created, it is updated in the CSA, either by increasing the count of processes accessing a particular group, or adding to the csa initially. More... | |
| Int | groupUnDefined ( SemaphoreGroupPtr ) |
| When the local process is deleting a semaphore group and it is considered a shared group, we are asked to adjust the map accordingly. More... | |
| Int | setLock ( SemaphoreGroupPtr, Int, Int, Int ) |
| Called by the base semaphore to aquire a lock for a specific semaphore. More... | |
| Int | setUnLock ( SemaphoreGroupPtr, Int, Int, Int ) |
| Called by the base semaphore to relinquish a lock for a specific semaphore. More... | |
| Int | obtainSemaphore ( SemaphoreGroupPtr, Int, IntRef, IntRef, IntRef, Int ) |
| Typically called by a SemaphoreGroup prior to passing out the semaphore type to the caller. More... | |
| Int | relinquishSemaphore (SemaphoreGroupPtr,Int) |
| Called when the semaphore is no longer being referenced. More... | |
| Int | setMaxValue ( SemaphoreGroupPtr, Int, Int ) |
| Called to set the semaphore maximum value. More... | |
Protected Methods | |
| SemaphoreCommon ( void ) | |
| Default constructor used by class. | |
| virtual | ~SemaphoreCommon ( void ) |
| Destructor. | |
| void | registerGroup ( SemaphoreGroupPtr ) |
| Does the work of getting the group registered in the CSA. More... | |
| Int | deregisterGroup ( SemaphoreGroupPtr ) |
| Does the work of reducing the group share count, or marking the group for reclaimation. More... | |
| Int | claimSemaphore ( SemaphoreGroupPtr, Int, IntRef, IntRef, IntRef, Int ) |
| Called when the group is determined to be shared and a semaphore share is to be claimed. More... | |
| Int | reclaimSemaphore (SemaphoreGroupPtr,Int) |
| Called when a group wishes to let the CSA reclaim a semaphore share. More... | |
| CSAGrpHeaderPtr | findGroup ( IntCref , IntCref , CSAGrpHeaderPtr ) |
| Attempt to locate a specific group. | |
| CSAGrpHeaderPtr | findAvailableGroup ( IntCref , IntCref , CSAGrpHeaderPtr ) |
| Find open slot that fits count criteria. | |
| CSAGrpHeaderPtr | subsetGroup ( Int, CSAGrpHeaderPtr ) |
| Utility to clean CSA group tail. | |
| CSAGrpHeaderPtr | combineGroup ( Int, CSAGrpHeaderPtr ) |
| bool | isOriginator ( void ) const |
| Int | getOriginatorId ( void ) const |
| Int | canonicalUndefined ( void ) |
Static Protected Methods | |
| void | createAttachment ( void ) |
| Factory for CSA. | |
| void | exitAttachment ( void ) |
| On the way out from run-time. | |
Friends | |
| class | CoreLinuxGuardPool |
This area is to communicate between address spaces when using one of the CoreLinux++ SemaphoreGroup types in public mode.
|
|
Called when the group is determined to be shared and a semaphore share is to be claimed.
|
|
|
Does the work of reducing the group share count, or marking the group for reclaimation.
|
|
|
Returns the maximum value for a semaphore as defined by the original semaphore claimant.
|
|
|
When a shared semaphore group is created, it is updated in the CSA, either by increasing the count of processes accessing a particular group, or adding to the csa initially.
|
|
|
When the local process is deleting a semaphore group and it is considered a shared group, we are asked to adjust the map accordingly.
|
|
|
Typically called by a SemaphoreGroup prior to passing out the semaphore type to the caller.
|
|
|
Called when a group wishes to let the CSA reclaim a semaphore share.
|
|
|
Does the work of getting the group registered in the CSA.
|
|
|
Called when the semaphore is no longer being referenced. Effectively reducing the share count for shared group semaphores
|
|
|
Called by the base semaphore to aquire a lock for a specific semaphore.
|
|
|
Called to set the semaphore maximum value. For local this is SETVAL, for shared it is ignored
|
|
|
Called by the base semaphore to relinquish a lock for a specific semaphore.
|