ReactOS Fundraising Campaign 2012
€ 4,410 / € 30,000
Information
|
Donate
Home
|
Info
|
Community
|
Development
|
myReactOS
|
Contact Us
Navigation
Home
Community
Development
myReactOS
Fundraiser 2012
Doxygen
Main Page
Alphabetical List
Data Structures
Directories
File List
Data Fields
Globals
Related Pages
Search
ReactOS Development
> Doxygen
ntoskrnl
include
internal
Defines
|
Functions
cm_x.h File Reference
Go to the source code of this file.
Defines
#
define
GET_HASH_KEY
(ConvKey) ((
CMP_HASH_IRRATIONAL
* (ConvKey)) %
CMP_HASH_PRIME
)
#
define
GET_HASH_INDEX
(ConvKey)
GET_HASH_KEY
(ConvKey) %
CmpHashTableSize
#
define
GET_HASH_ENTRY
(
Table
, ConvKey) (
Table
[
GET_HASH_INDEX
(ConvKey)])
#
define
ASSERT_VALID_HASH
(
h
)
ASSERT_KCB_VALID
(
CONTAINING_RECORD
((
h
),
CM_KEY_CONTROL_BLOCK
,
KeyHash
))
#
define
CMP_IS_CELL_CACHED
(
c
) (((
c
) &
HCELL_CACHED
) && ((
c
) !=
HCELL_NIL
))
#
define
CMP_GET_CACHED_CELL
(
c
) (
ULONG_PTR
)((
c
) & ~
HCELL_CACHED
)
#
define
CMP_GET_CACHED_DATA
(
c
) (&(((PCM_CACHED_VALUE_INDEX)(
CMP_GET_CACHED_CELL
(
c
)))->Data.CellData))
#
define
CMP_GET_CACHED_INDEX
(
c
) (&(((PCM_CACHED_ENTRY)(
CMP_GET_CACHED_CELL
(
c
)))->CellIndex))
#
define
CMP_GET_CACHED_VALUE
(
c
) (&(((PCM_CACHED_VALUE)(
CMP_GET_CACHED_CELL
(
c
)))->KeyValue))
#
define
CMP_ASSERT_REGISTRY_LOCK
()
#
define
CMP_ASSERT_REGISTRY_LOCK_OR_LOADING
(
h
)
#
define
CMP_ASSERT_EXCLUSIVE_REGISTRY_LOCK
()
#
define
CMP_ASSERT_EXCLUSIVE_REGISTRY_LOCK_OR_LOADING
(
h
)
#
define
ASSERT_KCB_VALID
(
k
)
ASSERT
((
k
)->
Signature
==
CM_KCB_SIGNATURE
)
#
define
CmpIsKcbLockedExclusive
(
k
)
#
define
CmpAcquireKcbLockExclusive
(
k
)
#
define
CmpAcquireKcbLockExclusiveByIndex
(i)
#
define
CmpAcquireKcbLockExclusiveByKey
(
k
)
#
define
CmpAcquireKcbLockShared
(
k
)
#
define
CmpAcquireKcbLockSharedByIndex
(i)
#
define
CmpReleaseKcbLock
(
k
)
#
define
CmpReleaseKcbLockByIndex
(i)
#
define
CmpReleaseKcbLockByKey
(
k
)
#
define
CmpAcquireNcbLockExclusive
(
n
)
#
define
CmpAcquireNcbLockExclusiveByKey
(
k
)
#
define
CmpReleaseNcbLock
(
k
)
#
define
CmpReleaseNcbLockByKey
(
k
)
#
define
CMP_ASSERT_HASH_ENTRY_LOCK
(
k
)
#
define
CMP_ASSERT_KCB_LOCK
(
k
)
#
define
CmpGetAllocPageFromKcb
(
k
) (PCM_ALLOC_PAGE)(((
ULONG_PTR
)(
k
)) & ~(
PAGE_SIZE
- 1))
#
define
CmpGetAllocPageFromDelayAlloc
(
a
) (PCM_ALLOC_PAGE)(((
ULONG_PTR
)(
a
)) & ~(
PAGE_SIZE
- 1))
#
define
CMP_ASSERT_FLUSH_LOCK
(
h
)
#
define
CMP_ASSERT_HASH_ENTRY_LOCK
(
k
)
#
define
CmpGetAllocPageFromKcb
(
k
) (PCM_ALLOC_PAGE)(((
ULONG_PTR
)(
k
)) & ~(
PAGE_SIZE
- 1))
#
define
CmpGetAllocPageFromDelayAlloc
(
a
) (PCM_ALLOC_PAGE)(((
ULONG_PTR
)(
a
)) & ~(
PAGE_SIZE
- 1))
Functions
FORCEINLINE
BOOLEAN
CmpIsKeyValueSmall
(
OUT
PULONG
RealLength,
IN
ULONG
Length
)
FORCEINLINE
BOOLEAN
CmpIsKeyValueBig
(
IN
PHHIVE Hive,
IN
ULONG
Length
)
FORCEINLINE
BOOLEAN
CmpTryToConvertKcbSharedToExclusive
(
IN
PCM_KEY_CONTROL_BLOCK
k
)
FORCEINLINE
VOID
CmpConvertKcbSharedToExclusive
(
IN
PCM_KEY_CONTROL_BLOCK
k
)
Generated on Sun May 27 2012 06:06:54 for ReactOS by
1.7.6.1
ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.