Common system-level definitions, types, and functions. More...
Modules | |
PCRCondition | |
Condition variable operations. | |
PCREvent | |
Synchronization event operations. | |
PCRMem | |
Common system-level memory operations including allocation, deallocation, and copy. | |
PCRMutex | |
Mutual exclusion operations. | |
PCRRandom | |
A Pseudo-Random Number Generator implementation. | |
PCRSecureRandom | |
A Cryptographically Secure Random Number Generator implementation. | |
PCRSemaphore | |
Semaphore operations. | |
PCRString | |
Common system-level string operations. | |
PCRSwap | |
Network byte-order conversion, based on machine endianness. | |
PCRThread | |
Common system-level thread operations. | |
PCRTime | |
Common system-level time operations. | |
Standard Types and Definitions | |
Common core basic types and definitions upon which the DOF C-Language Object Access Library is built. | |
Files | |
file | pcr.h |
Header file for the Portable C Runtime functions, defines and data types. | |
Macros | |
#define | PCRTIMEOUT_FOREVER |
Infinite timeout value. | |
#define | PCR_Assert(expr) |
Assert that an expression is always true. | |
#define | PCR_Validate(expr) |
Validate that an expression is true. | |
Enumerations | |
enum | PCRStatus { PCRSTATUS_OK, PCRSTATUS_ERROR, PCRSTATUS_TIMEOUT, PCRSTATUS_DESTROYED } |
Common status/error codes for system functions. More... | |
Functions | |
DOF_PCR_DECLSPEC void | PCR_AssertFail (const char *expression, const char *filename, uint32 line) |
Assertion failure handler. | |
DOF_PCR_DECLSPEC void | PCR_ValidateFail (const char *expression, const char *filename, uint32 line) |
Validation failure handler. | |
DOF_PCR_DECLSPEC void | PCR_Init (void) |
Initialize the Portable C Runtime. | |
DOF_PCR_DECLSPEC void | PCR_Shutdown (void) |
Terminate use of the library and free internal resources. | |
DOF_PCR_DECLSPEC void | PCR_Die (uint32 code) |
Platform-specific abnormal termination / catastrophic failure handler. | |
Common system-level definitions, types, and functions.
Different operating systems and platforms have different abilities or APIs that can be used. Here, the functionality required for the DOF C OAL is defined and encapsulated in this portable abstraction layer. Thus, the C OAL can easily be ported to new platforms and operating systems simply by porting this layer to the new platform.