File indexing completed on 2025-05-11 08:24:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051 #ifndef _TR_MTX_SURRENDER_H
0052 #define _TR_MTX_SURRENDER_H
0053
0054 #include "tx-thread-queue.h"
0055
0056 #ifdef __cplusplus
0057 extern "C" {
0058 #endif
0059
0060
0061
0062
0063
0064
0065
0066 typedef enum {
0067 ScoreMtxReqSurrender_Pre_Protocol_None,
0068 ScoreMtxReqSurrender_Pre_Protocol_Inherit,
0069 ScoreMtxReqSurrender_Pre_Protocol_Ceiling,
0070 ScoreMtxReqSurrender_Pre_Protocol_MrsP,
0071 ScoreMtxReqSurrender_Pre_Protocol_NA
0072 } ScoreMtxReqSurrender_Pre_Protocol;
0073
0074 typedef enum {
0075 ScoreMtxReqSurrender_Pre_Discipline_FIFO,
0076 ScoreMtxReqSurrender_Pre_Discipline_Priority,
0077 ScoreMtxReqSurrender_Pre_Discipline_NA
0078 } ScoreMtxReqSurrender_Pre_Discipline;
0079
0080 typedef enum {
0081 ScoreMtxReqSurrender_Pre_Recursive_Allowed,
0082 ScoreMtxReqSurrender_Pre_Recursive_NotAllowed,
0083 ScoreMtxReqSurrender_Pre_Recursive_NA
0084 } ScoreMtxReqSurrender_Pre_Recursive;
0085
0086 typedef enum {
0087 ScoreMtxReqSurrender_Pre_OwnerCheck_Yes,
0088 ScoreMtxReqSurrender_Pre_OwnerCheck_No,
0089 ScoreMtxReqSurrender_Pre_OwnerCheck_NA
0090 } ScoreMtxReqSurrender_Pre_OwnerCheck;
0091
0092 typedef enum {
0093 ScoreMtxReqSurrender_Pre_Owner_None,
0094 ScoreMtxReqSurrender_Pre_Owner_Caller,
0095 ScoreMtxReqSurrender_Pre_Owner_Other,
0096 ScoreMtxReqSurrender_Pre_Owner_NA
0097 } ScoreMtxReqSurrender_Pre_Owner;
0098
0099 typedef enum {
0100 ScoreMtxReqSurrender_Pre_Nested_Yes,
0101 ScoreMtxReqSurrender_Pre_Nested_No,
0102 ScoreMtxReqSurrender_Pre_Nested_NA
0103 } ScoreMtxReqSurrender_Pre_Nested;
0104
0105 typedef enum {
0106 ScoreMtxReqSurrender_Pre_Blocked_Yes,
0107 ScoreMtxReqSurrender_Pre_Blocked_No,
0108 ScoreMtxReqSurrender_Pre_Blocked_NA
0109 } ScoreMtxReqSurrender_Pre_Blocked;
0110
0111 typedef enum {
0112 ScoreMtxReqSurrender_Pre_Priority_High,
0113 ScoreMtxReqSurrender_Pre_Priority_Equal,
0114 ScoreMtxReqSurrender_Pre_Priority_Low,
0115 ScoreMtxReqSurrender_Pre_Priority_NA
0116 } ScoreMtxReqSurrender_Pre_Priority;
0117
0118 typedef enum {
0119 ScoreMtxReqSurrender_Post_Status_Ok,
0120 ScoreMtxReqSurrender_Post_Status_NotOwner,
0121 ScoreMtxReqSurrender_Post_Status_NA
0122 } ScoreMtxReqSurrender_Post_Status;
0123
0124 typedef enum {
0125 ScoreMtxReqSurrender_Post_Owner_None,
0126 ScoreMtxReqSurrender_Post_Owner_Caller,
0127 ScoreMtxReqSurrender_Post_Owner_Other,
0128 ScoreMtxReqSurrender_Post_Owner_First,
0129 ScoreMtxReqSurrender_Post_Owner_NA
0130 } ScoreMtxReqSurrender_Post_Owner;
0131
0132 typedef enum {
0133 ScoreMtxReqSurrender_Post_Surrender_Nop,
0134 ScoreMtxReqSurrender_Post_Surrender_FIFO,
0135 ScoreMtxReqSurrender_Post_Surrender_Priority,
0136 ScoreMtxReqSurrender_Post_Surrender_PriorityInherit,
0137 ScoreMtxReqSurrender_Post_Surrender_MrsP,
0138 ScoreMtxReqSurrender_Post_Surrender_NA
0139 } ScoreMtxReqSurrender_Post_Surrender;
0140
0141 typedef enum {
0142 ScoreMtxReqSurrender_Post_Priority_Nop,
0143 ScoreMtxReqSurrender_Post_Priority_Low,
0144 ScoreMtxReqSurrender_Post_Priority_NA
0145 } ScoreMtxReqSurrender_Post_Priority;
0146
0147
0148
0149
0150
0151
0152 void ScoreMtxReqSurrender_Run( TQMtxContext *tq_ctx );
0153
0154
0155
0156 #ifdef __cplusplus
0157 }
0158 #endif
0159
0160 #endif