|
Zero
0.1.0
|
Go to the source code of this file.
Macros | |
| #define | T true |
| #define | F false |
Functions | |
| const okvl_mode | ALL_N_GAP_N (okvl_mode::N, okvl_mode::N) |
| Pre-defines frequently used lock modes as const objects. More... | |
| const okvl_mode | ALL_S_GAP_N (okvl_mode::S, okvl_mode::N) |
| const okvl_mode | ALL_X_GAP_N (okvl_mode::X, okvl_mode::N) |
| const okvl_mode | ALL_N_GAP_S (okvl_mode::N, okvl_mode::S) |
| const okvl_mode | ALL_S_GAP_S (okvl_mode::S, okvl_mode::S) |
| const okvl_mode | ALL_X_GAP_S (okvl_mode::X, okvl_mode::S) |
| const okvl_mode | ALL_N_GAP_X (okvl_mode::N, okvl_mode::X) |
| const okvl_mode | ALL_S_GAP_X (okvl_mode::S, okvl_mode::X) |
| const okvl_mode | ALL_X_GAP_X (okvl_mode::X, okvl_mode::X) |
| std::ostream & | operator<< (std::ostream &o, const okvl_mode &v) |
Variables | |
| const char *const | element_mode_names [] |
| const bool | compatibility_table [okvl_mode::COUNT][okvl_mode::COUNT] |
| const bool | implication_table [okvl_mode::COUNT][okvl_mode::COUNT] |
| const okvl_mode::element_lock_mode | parent_lock_mode [] |
| const okvl_mode::element_lock_mode | combined_lock_modes [okvl_mode::COUNT][okvl_mode::COUNT] |
This file contains the inline functions declared in w_okvl.h.
| #define F false |
| #define T true |
| const okvl_mode ALL_N_GAP_N | ( | okvl_mode::N | , |
| okvl_mode::N | |||
| ) |
Pre-defines frequently used lock modes as const objects.
This is for both convenience and performance. In many cases (most likely as a func param), we can just use these const static objects. These constants could be named like XX, SS, .. for short, but this lengthy name is more clear, so in long run it will help us.
| const okvl_mode ALL_N_GAP_S | ( | okvl_mode::N | , |
| okvl_mode::S | |||
| ) |
| const okvl_mode ALL_N_GAP_X | ( | okvl_mode::N | , |
| okvl_mode::X | |||
| ) |
| const okvl_mode ALL_S_GAP_N | ( | okvl_mode::S | , |
| okvl_mode::N | |||
| ) |
| const okvl_mode ALL_S_GAP_S | ( | okvl_mode::S | , |
| okvl_mode::S | |||
| ) |
| const okvl_mode ALL_S_GAP_X | ( | okvl_mode::S | , |
| okvl_mode::X | |||
| ) |
| const okvl_mode ALL_X_GAP_N | ( | okvl_mode::X | , |
| okvl_mode::N | |||
| ) |
| const okvl_mode ALL_X_GAP_S | ( | okvl_mode::X | , |
| okvl_mode::S | |||
| ) |
| const okvl_mode ALL_X_GAP_X | ( | okvl_mode::X | , |
| okvl_mode::X | |||
| ) |
|
inline |
| const okvl_mode::element_lock_mode combined_lock_modes[okvl_mode::COUNT][okvl_mode::COUNT] |
combined_lock_mode[requested mode][granted mode] returns the lock mode after combining the two lock modes. e.g., X + S = X, S + IX = SIX, etc.
| const bool compatibility_table[okvl_mode::COUNT][okvl_mode::COUNT] |
compatibility_table[requested mode][granted mode] means whether the requested lock mode is allowed given the already existing lock in granted mode.
| const char* const element_mode_names[] |
Pretty name for each lock mode.
| const bool implication_table[okvl_mode::COUNT][okvl_mode::COUNT] |
implication_table[left][right] means whether the left lock mode is implied by the right lock mode.
| const okvl_mode::element_lock_mode parent_lock_mode[] |
parent_lock_modes[i] is the lock mode of parent of i e.g. g_parent_lock_mode[X] is IX.
1.8.12