semaphore.c File Reference

#include "wizard/studio.h"
#include "wizard/exception.h"
#include "wizard/exception-private.h"
#include "wizard/memory_.h"
#include "wizard/semaphore.h"
#include "wizard/semaphore-private.h"
#include "wizard/string_.h"
#include "wizard/thread_.h"
#include "wizard/thread-private.h"
Include dependency graph for semaphore.c:

Go to the source code of this file.

Data Structures

struct  SemaphoreInfo

Functions

WizardExport void AcquireSemaphoreInfo (SemaphoreInfo **semaphore_info)
WizardExport SemaphoreInfoAllocateSemaphoreInfo (void)
WizardExport void DestroySemaphoreInfo (SemaphoreInfo **semaphore_info)
WizardExport void LockSemaphoreInfo (SemaphoreInfo *semaphore_info)
WizardExport void RelinquishSemaphoreInfo (SemaphoreInfo *semaphore_info)
WizardExport WizardBooleanType SemaphoreComponentGenesis (void)
WizardExport void SemaphoreComponentTerminus (void)
WizardExport void UnlockSemaphoreInfo (SemaphoreInfo *semaphore_info)

Function Documentation

WizardExport void AcquireSemaphoreInfo ( SemaphoreInfo **  semaphore_info  ) 
WizardExport SemaphoreInfo* AllocateSemaphoreInfo ( void   ) 
WizardExport void DestroySemaphoreInfo ( SemaphoreInfo **  semaphore_info  ) 
WizardExport void LockSemaphoreInfo ( SemaphoreInfo semaphore_info  ) 

Definition at line 250 of file semaphore.c.

References GetWizardThreadId(), SemaphoreInfo::id, IsWizardThreadEqual(), SemaphoreInfo::mutex, SemaphoreInfo::reference_count, ResourceFatalError, SemaphoreInfo::signature, ThrowFatalException, WizardFalse, and WizardSignature.

Referenced by AcquireFileLock(), AcquireUniqueFileResource(), AcquireWizardMemory(), AcquireWizardResource(), AddValueToSplayTree(), AppendValueToLinkedList(), CatchException(), ClearLinkedList(), ClearWizardException(), CloneSplayTree(), CloseWizardLog(), ConfigureComponentTerminus(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyBlob(), DestroyExceptionInfo(), DestroyFileInfo(), DestroyHashmap(), DestroyLinkedList(), DestroyRandomInfo(), DestroySplayTree(), DestroyWizardMemory(), GenerateEntropicChaos(), GetConfigureInfo(), GetConfigureInfoList(), GetConfigureList(), GetEntropyFromReservoir(), GetLastValueInLinkedList(), GetLogInfo(), GetLogInfoList(), GetLogList(), GetMimeInfo(), GetMimeInfoList(), GetMimeList(), GetNextKeyInHashmap(), GetNextKeyInSplayTree(), GetNextValueInHashmap(), GetNextValueInLinkedList(), GetNextValueInSplayTree(), GetValueFromHashmap(), GetValueFromLinkedList(), GetValueFromSplayTree(), GetWizardResource(), GetWizardResourceLimit(), IncreaseHashmapCapacity(), InheritException(), InitializeConfigureList(), InitializeLogList(), InitializeMimeList(), InsertValueInLinkedList(), InsertValueInSortedLinkedList(), LinkedListToArray(), ListWizardResourceInfo(), LogComponentTerminus(), LogWizardEventList(), MimeComponentTerminus(), PutEntryInHashmap(), RelinquishWizardMemory(), RelinquishWizardResource(), RemoveElementByValueFromLinkedList(), RemoveElementFromLinkedList(), RemoveEntryFromHashmap(), RemoveLastElementFromLinkedList(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetHashmapIterator(), ResetLinkedListIterator(), ResetSplayTree(), ResetSplayTreeIterator(), ResizeWizardMemory(), ResourceComponentTerminus(), SaveEntropyToReservoir(), SetLogEventMask(), SetLogFormat(), SetRandomKey(), and SetWizardResourceLimit().

WizardExport void RelinquishSemaphoreInfo ( SemaphoreInfo semaphore_info  ) 

Definition at line 304 of file semaphore.c.

References SemaphoreInfo::signature, UnlockSemaphoreInfo(), and WizardSignature.

WizardExport WizardBooleanType SemaphoreComponentGenesis ( void   ) 

Definition at line 329 of file semaphore.c.

References LockWizardMutex(), UnlockWizardMutex(), and WizardTrue.

Referenced by WizardsToolkitGenesis().

WizardExport void SemaphoreComponentTerminus ( void   ) 

Definition at line 354 of file semaphore.c.

Referenced by WizardsToolkitTerminus().

WizardExport void UnlockSemaphoreInfo ( SemaphoreInfo semaphore_info  ) 

Definition at line 380 of file semaphore.c.

References SemaphoreInfo::id, IsWizardThreadEqual(), SemaphoreInfo::mutex, SemaphoreInfo::reference_count, ResourceFatalError, SemaphoreInfo::signature, ThrowFatalException, WizardFalse, and WizardSignature.

Referenced by AcquireFileLock(), AcquireUniqueFileResource(), AcquireWizardMemory(), AcquireWizardResource(), AddValueToSplayTree(), AppendValueToLinkedList(), CatchException(), ClearLinkedList(), ClearWizardException(), CloneSplayTree(), CloseWizardLog(), ConfigureComponentTerminus(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyBlob(), DestroyExceptionInfo(), DestroyFileInfo(), DestroyHashmap(), DestroyLinkedList(), DestroyRandomInfo(), DestroySplayTree(), DestroyWizardMemory(), GenerateEntropicChaos(), GetConfigureInfo(), GetConfigureInfoList(), GetConfigureList(), GetEntropyFromReservoir(), GetLastValueInLinkedList(), GetLogInfo(), GetLogInfoList(), GetLogList(), GetMimeInfo(), GetMimeInfoList(), GetMimeList(), GetNextKeyInHashmap(), GetNextKeyInSplayTree(), GetNextValueInHashmap(), GetNextValueInLinkedList(), GetNextValueInSplayTree(), GetValueFromHashmap(), GetValueFromLinkedList(), GetValueFromSplayTree(), GetWizardResource(), GetWizardResourceLimit(), IncreaseHashmapCapacity(), InheritException(), InitializeConfigureList(), InitializeLogList(), InitializeMimeList(), InsertValueInLinkedList(), InsertValueInSortedLinkedList(), LinkedListToArray(), ListWizardResourceInfo(), LogComponentTerminus(), LogWizardEventList(), MimeComponentTerminus(), PutEntryInHashmap(), RelinquishSemaphoreInfo(), RelinquishWizardMemory(), RelinquishWizardResource(), RemoveElementByValueFromLinkedList(), RemoveElementFromLinkedList(), RemoveEntryFromHashmap(), RemoveLastElementFromLinkedList(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetHashmapIterator(), ResetLinkedListIterator(), ResetSplayTree(), ResetSplayTreeIterator(), ResizeWizardMemory(), ResourceComponentTerminus(), SaveEntropyToReservoir(), SetLogEventMask(), SetLogFormat(), SetRandomKey(), and SetWizardResourceLimit().

Generated by  doxygen 1.6.2-20100208