#include "wizard/studio.h"#include "wizard/blob.h"#include "wizard/blob-private.h"#include "wizard/exception.h"#include "wizard/exception-private.h"#include "wizard/memory_.h"#include "wizard/semaphore.h"#include "wizard/string_.h"Data Structures | |
| struct | _DataSegmentInfo |
| struct | _MemoryInfo |
| struct | _WizardMemoryMethods |
Defines | |
| #define | BlockFooter(block, size) ((size_t *) ((char *) (block)+(size)-2*sizeof(size_t))) |
| #define | BlockHeader(block) ((size_t *) (block)-1) |
| #define | BlockSize 4096 |
| #define | BlockThreshold 1024 |
| #define | AlignedSize (16*sizeof(void *)) |
| #define | MaxBlockExponent 16 |
| #define | MaxBlocks ((BlockThreshold/(4*sizeof(size_t)))+MaxBlockExponent+1) |
| #define | MaxSegments 1024 |
| #define | MemoryGuard ((0xdeadbeef << 31)+0xdeafdeed) |
| #define | NextBlock(block) ((char *) (block)+SizeOfBlock(block)) |
| #define | NextBlockInList(block) (*(void **) (block)) |
| #define | PreviousBlock(block) ((char *) (block)-(*((size_t *) (block)-2))) |
| #define | PreviousBlockBit 0x01 |
| #define | PreviousBlockInList(block) (*((void **) (block)+1)) |
| #define | SegmentSize (2*1024*1024) |
| #define | SizeMask (~0x01) |
| #define | SizeOfBlock(block) (*BlockHeader(block) & SizeMask) |
Typedefs | |
| typedef struct _DataSegmentInfo | DataSegmentInfo |
| typedef struct _MemoryInfo | MemoryInfo |
| typedef struct _WizardMemoryMethods | WizardMemoryMethods |
Functions | |
| static size_t | WizardMax (const size_t x, const size_t y) |
| WizardExport void * | AcquireAlignedMemory (const size_t count, const size_t quantum) |
| WizardExport void * | AcquireWizardMemory (const size_t size) |
| WizardExport void * | AcquireQuantumMemory (const size_t count, const size_t quantum) |
| WizardExport void * | CopyWizardMemory (void *destination, const void *source, const size_t size) |
| WizardExport void | DestroyWizardMemory (void) |
| WizardExport void | GetWizardMemoryMethods (AcquireMemoryHandler *acquire_memory_handler, ResizeMemoryHandler *resize_memory_handler, DestroyMemoryHandler *destroy_memory_handler) |
| WizardExport void * | RelinquishAlignedMemory (void *memory) |
| WizardExport void * | RelinquishWizardMemory (void *memory) |
| WizardExport void * | ResetWizardMemory (void *memory, int byte, const size_t size) |
| WizardExport void * | ResizeWizardMemory (void *memory, const size_t size) |
| WizardExport void * | ResizeQuantumMemory (void *memory, const size_t count, const size_t quantum) |
| WizardExport void | SetWizardMemoryMethods (AcquireMemoryHandler acquire_memory_handler, ResizeMemoryHandler resize_memory_handler, DestroyMemoryHandler destroy_memory_handler) |
Variables | |
| static WizardMemoryMethods | memory_methods |
| #define AlignedSize (16*sizeof(void *)) |
Referenced by AcquireAlignedMemory().
| #define BlockFooter | ( | block, | ||
| size | ||||
| ) | ((size_t *) ((char *) (block)+(size)-2*sizeof(size_t))) |
Referenced by RelinquishWizardMemory().
| #define BlockHeader | ( | block | ) | ((size_t *) (block)-1) |
Referenced by RelinquishWizardMemory().
| #define BlockSize 4096 |
| #define BlockThreshold 1024 |
| #define MaxBlockExponent 16 |
| #define MaxBlocks ((BlockThreshold/(4*sizeof(size_t)))+MaxBlockExponent+1) |
| #define MaxSegments 1024 |
| #define MemoryGuard ((0xdeadbeef << 31)+0xdeafdeed) |
| #define NextBlock | ( | block | ) | ((char *) (block)+SizeOfBlock(block)) |
Referenced by RelinquishWizardMemory().
| #define NextBlockInList | ( | block | ) | (*(void **) (block)) |
| #define PreviousBlock | ( | block | ) | ((char *) (block)-(*((size_t *) (block)-2))) |
Referenced by RelinquishWizardMemory().
| #define PreviousBlockBit 0x01 |
Referenced by RelinquishWizardMemory().
| #define PreviousBlockInList | ( | block | ) | (*((void **) (block)+1)) |
| #define SegmentSize (2*1024*1024) |
| #define SizeMask (~0x01) |
Referenced by AcquireWizardMemory().
| #define SizeOfBlock | ( | block | ) | (*BlockHeader(block) & SizeMask) |
Referenced by RelinquishWizardMemory().
| typedef struct _DataSegmentInfo DataSegmentInfo |
| typedef struct _MemoryInfo MemoryInfo |
| typedef struct _WizardMemoryMethods WizardMemoryMethods |
| WizardExport void* AcquireAlignedMemory | ( | const size_t | count, | |
| const size_t | quantum | |||
| ) |
References AlignedSize, and WizardMax().
| WizardExport void* AcquireQuantumMemory | ( | const size_t | count, | |
| const size_t | quantum | |||
| ) |
References AcquireWizardMemory().
Referenced by AcquireAESInfo(), AcquireBZIPMemory(), AcquireCRC64Info(), AcquireLZMAMemory(), AcquireMD5Info(), AcquireSHA1Info(), AcquireSHA224Info(), AcquireSHA256Info(), AcquireSHA384Info(), AcquireSHA512Info(), AcquireString(), AcquireStringInfo(), AcquireZIPMemory(), BalanceSplayTree(), Base64Decode(), Base64Encode(), ConfigureFileToStringInfo(), ConstantString(), ConvertLatin1ToUTF8(), ConvertUTF16ToUTF8(), FileToBlob(), GetConfigureInfoList(), GetConfigureList(), GetExecutionPath(), GetHashHexDigest(), GetLogInfoList(), GetLogList(), GetMimeInfoList(), GetMimeList(), GetPathComponents(), GetWizardOptions(), IncreaseHashmapCapacity(), IterateOverSplayTree(), NewHashmap(), NewXMLTree(), ParseEntities(), ParseInternalDoctype(), ParseProcessingInstructions(), SetStringInfoLength(), SetXMLTreeAttribute(), StringInfoToHexString(), StringInfoToString(), and StringToArgv().
| WizardExport void* AcquireWizardMemory | ( | const size_t | size | ) |
References _WizardMemoryMethods::acquire_memory_handler, AcquireSemaphoreInfo(), LockSemaphoreInfo(), memory_methods, ResetWizardMemory(), SizeMask, UnlockSemaphoreInfo(), and WizardFalse.
Referenced by AcquireAESInfo(), AcquireAuthenticateInfo(), AcquireBZIPInfo(), AcquireCipherInfo(), AcquireCRC64Info(), AcquireEntropyInfo(), AcquireExceptionInfo(), AcquireFileInfo(), AcquireHashInfo(), AcquireHMACInfo(), AcquireKeyInfo(), AcquireKeyringInfo(), AcquireLZMAInfo(), AcquireMD5Info(), AcquireQuantumMemory(), AcquireRandomInfo(), AcquireSecretInfo(), AcquireSerpentInfo(), AcquireSHA1Info(), AcquireSHA224Info(), AcquireSHA256Info(), AcquireSHA384Info(), AcquireSHA512Info(), AcquireStringInfo(), AcquireTimerInfo(), AcquireTwofishInfo(), AcquireZIPInfo(), AddChildToXMLTree(), AddValueToSplayTree(), AppendValueToLinkedList(), InsertValueInLinkedList(), InsertValueInSortedLinkedList(), LoadConfigureList(), LoadConfigureLists(), LoadLogList(), LoadLogLists(), LoadMimeList(), NewHashmap(), NewLinkedList(), NewSplayTree(), NewXMLTreeTag(), OpenBlob(), ParseInternalDoctype(), ParseProcessingInstructions(), PutEntryInHashmap(), ResizeWizardMemory(), ThrowException(), and WizardCreateThreadKey().
| WizardExport void* CopyWizardMemory | ( | void * | destination, | |
| const void * | source, | |||
| const size_t | size | |||
| ) |
Referenced by AcquireRandomInfo(), ConvertUTF16ToUTF8(), GetPathComponent(), GetPhrase(), NewXMLTreeTag(), ParseEntities(), ParseInternalDoctype(), SetAESKey(), SetRandomKey(), SetXMLTreeAttribute(), SubstituteString(), UpdateSHA1(), UpdateSHA224(), UpdateSHA256(), UpdateSHA384(), UpdateSHA512(), and UpdateSignature().
| WizardExport void DestroyWizardMemory | ( | void | ) |
| WizardExport void GetWizardMemoryMethods | ( | AcquireMemoryHandler * | acquire_memory_handler, | |
| ResizeMemoryHandler * | resize_memory_handler, | |||
| DestroyMemoryHandler * | destroy_memory_handler | |||
| ) |
| WizardExport void* RelinquishAlignedMemory | ( | void * | memory | ) |
| WizardExport void* RelinquishWizardMemory | ( | void * | memory | ) |
References BlockFooter, BlockHeader, _WizardMemoryMethods::destroy_memory_handler, LockSemaphoreInfo(), memory_methods, NextBlock, PreviousBlock, PreviousBlockBit, SizeOfBlock, and UnlockSemaphoreInfo().
Referenced by AcquireFileInfo(), AddPathToXMLTree(), BalanceSplayTree(), Base64Decode(), CanonicalXMLContent(), ClearLinkedList(), CloneString(), ConfigureFileToStringInfo(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyAESInfo(), DestroyAuthenticateInfo(), DestroyBlob(), DestroyBZIPInfo(), DestroyCipherInfo(), DestroyConfigureElement(), DestroyCRC64Info(), DestroyEntropyInfo(), DestroyExceptionElement(), DestroyExceptionInfo(), DestroyFileInfo(), DestroyHashInfo(), DestroyHashmap(), DestroyHMACInfo(), DestroyKeyInfo(), DestroyKeyringInfo(), DestroyLinkedList(), DestroyLogElement(), DestroyLZMAInfo(), DestroyMD5Info(), DestroyMimeElement(), DestroyRandomInfo(), DestroySecretInfo(), DestroySerpentInfo(), DestroySHA1Info(), DestroySHA224Info(), DestroySHA256Info(), DestroySHA384Info(), DestroySHA512Info(), DestroySplayTree(), DestroyString(), DestroyStringInfo(), DestroyStringList(), DestroyTimerInfo(), DestroyTwofishInfo(), DestroyXMLTree(), DestroyXMLTreeAttributes(), DestroyZIPInfo(), FileToBlob(), GetConfigureOptions(), GetConfigurePaths(), GetExecutionPath(), GetPathTemplate(), GetXMLTreePath(), IncreaseHashmapCapacity(), InsertValueInSortedLinkedList(), IterateOverSplayTree(), ListConfigureInfo(), ListLogInfo(), ListMimeInfo(), LoadConfigureList(), LoadLogList(), LogWizardEventList(), OpenBlob(), ParseInternalDoctype(), PutEntryInHashmap(), RelinquishBZIPMemory(), RelinquishLZMAMemory(), RelinquishZIPMemory(), RemoveElementByValueFromLinkedList(), RemoveElementFromLinkedList(), RemoveEntryFromHashmap(), RemoveLastElementFromLinkedList(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetSplayTree(), ResizeQuantumMemory(), ResizeWizardMemory(), StringToArgv(), WizardDeleteThreadKey(), WizardOpenStream(), and WizardsToolkitGenesis().
| WizardExport void* ResetWizardMemory | ( | void * | memory, | |
| int | byte, | |||
| const size_t | size | |||
| ) |
Referenced by AcquireAESInfo(), AcquireAuthenticateInfo(), AcquireBZIPInfo(), AcquireCipherInfo(), AcquireCRC64Info(), AcquireEntropyInfo(), AcquireExceptionInfo(), AcquireFileInfo(), AcquireHashInfo(), AcquireHMACInfo(), AcquireKeyInfo(), AcquireKeyringInfo(), AcquireLZMAInfo(), AcquireMD5Info(), AcquireRandomInfo(), AcquireSecretInfo(), AcquireSerpentInfo(), AcquireSHA1Info(), AcquireSHA224Info(), AcquireSHA256Info(), AcquireSHA384Info(), AcquireSHA512Info(), AcquireStringInfo(), AcquireTimerInfo(), AcquireTwofishInfo(), AcquireWizardMemory(), AcquireZIPInfo(), AddChildToXMLTree(), AllocateSemaphoreInfo(), DecipherAESBlock(), DecipherCBCMode(), DecipherCFBMode(), DecipherCTRMode(), DecipherOFBMode(), DestroyRandomInfo(), DestroyWizardMemory(), EncipherAESBlock(), EncipherCBCMode(), EncipherCFBMode(), EncipherCTRMode(), EncipherOFBMode(), FinalizeMD5(), FinalizeSHA1(), FinalizeSHA224(), FinalizeSHA256(), FinalizeSHA384(), FinalizeSHA512(), FinalizeSignature(), GetBlobInfo(), GetExceptionInfo(), GetPhrase(), GetSignatureInfo(), HexStringToStringInfo(), IncreaseHashmapCapacity(), IncreaseLZMA(), LoadConfigureList(), LoadConfigureLists(), LoadLogList(), LoadLogLists(), LoadMimeList(), NewHashmap(), NewLinkedList(), NewSplayTree(), NewXMLTreeTag(), OpenBlob(), ParseWizardTime(), PrintKeyringProperties(), ResetStringInfo(), RestoreLZMA(), SetAESKey(), SetStringInfo(), SetTwofishKey(), ThrowException(), TransformSHA1(), TransformSHA224(), TransformSHA256(), TransformSHA384(), TransformSHA512(), and UpdateMD5().
| WizardExport void* ResizeQuantumMemory | ( | void * | memory, | |
| const size_t | count, | |||
| const size_t | quantum | |||
| ) |
References RelinquishWizardMemory(), and ResizeWizardMemory().
Referenced by CanonicalXMLContent(), CloneString(), ConcatenateString(), ConvertUTF16ToUTF8(), EncodePredefinedEntities(), FileToBlob(), NewXMLTree(), ParseEntities(), ParseInternalDoctype(), ParseProcessingInstructions(), SetBlobExtent(), SetStringInfoLength(), SetXMLTreeAttribute(), SubstituteString(), TranslateEvent(), TranslateFilename(), WriteBlob(), XMLTreeInfoToXML(), and XMLTreeTagToXML().
| WizardExport void* ResizeWizardMemory | ( | void * | memory, | |
| const size_t | size | |||
| ) |
| WizardExport void SetWizardMemoryMethods | ( | AcquireMemoryHandler | acquire_memory_handler, | |
| ResizeMemoryHandler | resize_memory_handler, | |||
| DestroyMemoryHandler | destroy_memory_handler | |||
| ) |
| static size_t WizardMax | ( | const size_t | x, | |
| const size_t | y | |||
| ) | [inline, static] |
Referenced by AcquireAlignedMemory().
WizardMemoryMethods memory_methods [static] |
{
(AcquireMemoryHandler) malloc,
(ResizeMemoryHandler) realloc,
(DestroyMemoryHandler) free
}
Referenced by AcquireWizardMemory(), DestroyWizardMemory(), GetWizardMemoryMethods(), RelinquishWizardMemory(), ResizeWizardMemory(), and SetWizardMemoryMethods().
1.7.1