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


Public Methods | |
| SemaphoreGroup ( Short , Int Rights = OWNER_ALL ) throw (Assertion,SemaphoreException) | |
| Default constructor creates a private group semaphores. More... | |
| SemaphoreGroup ( Short, SemaphoreGroupIdentifierCref, Int , CreateDisposition disp=FAIL_IF_EXISTS ) throw (Assertion,SemaphoreException) | |
| Constructor to open or create a semaphore group with a specific identifier. More... | |
| SemaphoreGroup ( Short, CharCptr, Int , CreateDisposition disp=FAIL_IF_EXISTS ) throw (Assertion,SemaphoreException) | |
| Constructor to open or create a semaphore group by name. More... | |
| virtual | ~SemaphoreGroup ( void ) |
| Virtual destructor. | |
| bool | operator== ( SemaphoreGroupCref ) const |
| Equality operator compares the identifier. More... | |
| Short | getSemaphoreCount ( void ) const |
| Return the number of semaphores in the group. More... | |
| SemaphoreGroupIdentifierCref | getIdentifier ( void ) const |
| Return the SemaphoreGroupIdentifier. More... | |
| virtual AbstractSemaphorePtr | createSemaphore ( void ) = 0 throw ( SemaphoreException ) |
| Create a default semaphore type from group. More... | |
| virtual AbstractSemaphorePtr | createSemaphore ( SemaphoreIdentifierRef aIdentifier, CreateDisposition disp = CREATE_OR_REUSE, bool Recursive=false, bool Balking = false ) = 0 throw ( SemaphoreException ) |
| Create or open (use) a specific semphore in the group. More... | |
| virtual AbstractSemaphorePtr | createSemaphore ( std::string aName, CreateDisposition disp = CREATE_OR_REUSE, bool Recursive=false, bool Balking = false ) = 0 throw ( SemaphoreException ) |
| Create or open (use) a specific semphore in the group. More... | |
| virtual void | destroySemaphore ( AbstractSemaphorePtr ) = 0 throw ( SemaphoreException ) |
| Destroys a created semaphore from this group. More... | |
Protected Methods | |
| SemaphoreGroup ( void ) throw ( Assertion ) | |
| Default constructor not allowed. | |
| SemaphoreGroup ( SemaphoreGroupCref ) throw ( Assertion ) | |
| Copy constructor not allowed. | |
| SemaphoreGroupRef | operator= ( SemaphoreGroupCref ) throw ( Assertion ) |
| Assignment operator not allowed. | |
| void | setGroupType ( IntCref ) const |
| This indirects to CSA for non-private group types. More... | |
| bool | isPrivate ( void ) const |
| Internal check for creation visibility. More... | |
Friends | |
| class | SemaphoreCommon |
This provides a way to logically group semaphores. A SemaphoreGroup acts as a Semaphore factory, creating and destroying Semaphores for the user.
|
|
Default constructor creates a private group semaphores.
|
|
|
Constructor to open or create a semaphore group with a specific identifier.
|
|
|
Constructor to open or create a semaphore group by name.
|
|
|
Create or open (use) a specific semphore in the group.
Reimplemented in corelinux::CoreLinuxGuardGroup, corelinux::GatewaySemaphoreGroup, and corelinux::MutexSemaphoreGroup. |
|
|
Create or open (use) a specific semphore in the group.
Reimplemented in corelinux::CoreLinuxGuardGroup, corelinux::GatewaySemaphoreGroup, and corelinux::MutexSemaphoreGroup. |
|
|
Create a default semaphore type from group.
Reimplemented in corelinux::CoreLinuxGuardGroup, corelinux::GatewaySemaphoreGroup, and corelinux::MutexSemaphoreGroup. |
|
|
Destroys a created semaphore from this group.
Reimplemented in corelinux::CoreLinuxGuardGroup, corelinux::GatewaySemaphoreGroup, and corelinux::MutexSemaphoreGroup. |
|
|
Return the SemaphoreGroupIdentifier.
|
|
|
Return the number of semaphores in the group.
|
|
|
Internal check for creation visibility. This implies that even though the group may be shared, the user has elected to use privately. |
|
|
Equality operator compares the identifier.
|
|
|
This indirects to CSA for non-private group types.
|