Open Files is designed as a highly portable subsystem. As such, it is necessary to define all types we use consistently throughout the product. Any platform generic code should use only types defined within this group. APIs to all Open Files components will use types either defined in this group, or in some other facility dependent on this group.
When porting Open Files to a new platform, some attention should be paid to the definition of these types. In most cases, no modification to any of these definitions is necessary.
| Type | Description |
|---|---|
| OFC_SIZET | Represents a size |
| OFC_INT | Represents a generic integer |
| OFC_UINT | Represents a generic unsigned integer |
| OFC_INT32 | Represents a 32 bit integer |
| OFC_INT16 | Represents a 16 bit integer |
| OFC_INT8 | Represents an 8 bit integer |
| OFC_CHAR | Represents a normal character |
| OFC_BYTE | Represents a byte |
| OFC_LPBYTE | Pointer to a byte string |
| OFC_UCHAR | Represents an unsigned character |
| OFC_VOID | Represents a null type |
| OFC_LONG | Represents a generic long integer |
| OFC_PLONG | Pointer to a generic long integer |
| OFC_SHORT | Pointer to a generic short integer |
| OFC_UINT32 | Represents a 32 bit unsigned |
| OFC_UINT16 | Represents a 16 bit unsigned |
| OFC_UINT8 | Represents a 8 bit unsigned |
| OFC_UINT64 | Represents a 64 bit unsigned |
| OFC_INT64 | Represents a 64 bit signed |
| OFC_LARGE_INTEGER | Represents a generic large (i.e. 64 bit) Integer |
| OFC_LARGE_INTEGER_HIGH | Returns high 32 bits of Large Integer |
| OFC_LARGE_INTEGER_LOW | Returns Low 32 bits of Large Integer |
| OFC_LARGE_INTEGER_ASSIGN | Assign low and high portions of Large Integer |
| OFC_LARGE_INTEGER_SET | Set a large integer |
| OFC_LARGE_INTEGER_EQUAL | Compare large integers |
| OFC_LARGE_INTEGER_INCR | Increment a large integer |
| OFC_LARGE_INTEGER_AND | Binary AND of Large Integers |
| OFC_LARGE_INTEGER_INIT | Initialize a large integer |
| OFC_OFFT | Represents a file offset |
| OFC_ULONG | Represents a generic unsigned |
| OFC_ULONG_MAX | Maximum Unsigned Long |
| OFC_LONG_MAX | Maximum Signed |
| OFC_LONG_MIN | Minimum Long |
| OFC_LPULONG | Pointer to a ULONG |
| OFC_ULONG_PTR | Pointer to a ULONG |
| OFC_CVOID | Untyped constant value |
| OFC_LPWSTR | Pointer to wide character string |
| OFC_LMSTR | Pointer to wide character string |
| OFC_CWCHAR | Represents a constant wide character |
| OFC_LPCWSTR | Pointer to constant wide character string |
| OFC_CCHAR | Constant character |
| OFC_LPSTR | Pointer to a character string |
| OFC_LPCSTR | Pointer to a constant character string |
| OFC_WORD | Represents a Generic Word |
| OFC_DWORD | Represents a Generic Double Word |
| OFC_DWORD_MASK | Mask for a double word |
| OFC_LPDWORD | Pointer to a DWORD |
| OFC_DWORD_PTR | Pointer to a DWORD |
| OFC_LPVOID | Pointer to a void type |
| OFC_PVOID | Pointer to a void type |
| OFC_LPCVOID | Pointer to a constant void type |
| OFC_TCHAR | A wide character |
| OFC_CTCHAR | A constant wide character |
| OFC_TACHAR | Default character (wide or normal) |
| OFC_CTACHAR | Default constant character (wide or normal) |
| OFC_LPTSTR | Pointer to wide character string |
| OFC_LPTASTR | Pointer to default character string (wide or normal) |
| OFC_LPCTSTR | Pointer to const wide character string |
| OFC_LPCTASTR | Pointer to default const character string (wide or normal) |
| OFC_MSTIME | Millisecond Time |
| TCHAR_BACKSLASH | Wide backslash |
| TCHAR_SLASH | Wide Forward Slash |
| TCHAR_COLON | Wide colon |
| TCHAR_EOS | Wide end of string |
| TCHAR_AMP | Wide apersand |
| TSTR | Form a wide character string |
| TCHAR | Form a wide character |
| TACHAR_BACKSLASH | Default backslash |
| TACHAR_SLASH | Default forward slash |
| TACHAR_COLON | Default colon |
| TACHAR_EOS | Default EOS |
| TACHAR_AMP | Default Ampersand |
| TASTR | Form a default string |
| TACHAR | Form a default char |
| OFC_UUID_LEN | Length of a UUID |
| OFC_UUID | Representation of a UUID |
| OFC_BOOL | Boolean |
| OFC_FALSE | False Value |
| OFC_TRUE | True Value |
| OFC_LOG_LEVEL | Level of Log Message |
| OFC_NULL | Null Pointer |
| OFC_IOVEC | Vectord Buffer |
| container_of | Get offset of member |