00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _GUAC_PROTOCOL_TYPES_H
00021 #define _GUAC_PROTOCOL_TYPES_H
00022
00044 typedef enum guac_protocol_status {
00045
00049 GUAC_PROTOCOL_STATUS_SUCCESS = 0x0000,
00050
00054 GUAC_PROTOCOL_STATUS_UNSUPPORTED = 0x0100,
00055
00059 GUAC_PROTOCOL_STATUS_SERVER_ERROR = 0x0200,
00060
00064 GUAC_PROTOCOL_STATUS_SERVER_BUSY = 0x0201,
00065
00070 GUAC_PROTOCOL_STATUS_UPSTREAM_TIMEOUT = 0x0202,
00071
00076 GUAC_PROTOCOL_STATUS_UPSTREAM_ERROR = 0x0203,
00077
00082 GUAC_PROTOCOL_STATUS_RESOURCE_NOT_FOUND = 0x0204,
00083
00088 GUAC_PROTOCOL_STATUS_RESOURCE_CONFLICT = 0x0205,
00089
00094 GUAC_PROTOCOL_STATUS_RESOURCE_CLOSED = 0x0206,
00095
00100 GUAC_PROTOCOL_STATUS_UPSTREAM_NOT_FOUND = 0x0207,
00101
00106 GUAC_PROTOCOL_STATUS_UPSTREAM_UNAVAILABLE = 0x0208,
00107
00112 GUAC_PROTOCOL_STATUS_SESSION_CONFLICT = 0x0209,
00113
00118 GUAC_PROTOCOL_STATUS_SESSION_TIMEOUT = 0x020A,
00119
00123 GUAC_PROTOCOL_STATUS_SESSION_CLOSED = 0x020B,
00124
00129 GUAC_PROTOCOL_STATUS_CLIENT_BAD_REQUEST = 0x300,
00130
00135 GUAC_PROTOCOL_STATUS_CLIENT_UNAUTHORIZED = 0x0301,
00136
00141 GUAC_PROTOCOL_STATUS_CLIENT_FORBIDDEN = 0x0303,
00142
00146 GUAC_PROTOCOL_STATUS_CLIENT_TIMEOUT = 0x308,
00147
00151 GUAC_PROTOCOL_STATUS_CLIENT_OVERRUN = 0x30D,
00152
00156 GUAC_PROTOCOL_STATUS_CLIENT_BAD_TYPE = 0x30F,
00157
00162 GUAC_PROTOCOL_STATUS_CLIENT_TOO_MANY = 0x31D
00163
00164 } guac_protocol_status;
00165
00170 typedef enum guac_composite_mode {
00171
00172
00173
00174
00175
00176
00177
00178
00179
00180
00181 GUAC_COMP_ROUT = 0x2,
00182 GUAC_COMP_ATOP = 0x6,
00183 GUAC_COMP_XOR = 0xA,
00184 GUAC_COMP_ROVER = 0xB,
00185 GUAC_COMP_OVER = 0xE,
00186 GUAC_COMP_PLUS = 0xF,
00187
00188
00189
00190
00191
00192
00193
00194
00195
00196 GUAC_COMP_RIN = 0x1,
00197 GUAC_COMP_IN = 0x4,
00198 GUAC_COMP_OUT = 0x8,
00199 GUAC_COMP_RATOP = 0x9,
00200 GUAC_COMP_SRC = 0xC
00201
00202
00203
00204
00205
00206
00207
00208
00209
00210
00211
00212
00213 } guac_composite_mode;
00214
00219 typedef enum guac_transfer_function {
00220
00221
00222 GUAC_TRANSFER_BINARY_BLACK = 0x0,
00223 GUAC_TRANSFER_BINARY_WHITE = 0xF,
00224
00225
00226 GUAC_TRANSFER_BINARY_SRC = 0x3,
00227 GUAC_TRANSFER_BINARY_DEST = 0x5,
00228 GUAC_TRANSFER_BINARY_NSRC = 0xC,
00229 GUAC_TRANSFER_BINARY_NDEST = 0xA,
00230
00231
00232 GUAC_TRANSFER_BINARY_AND = 0x1,
00233 GUAC_TRANSFER_BINARY_NAND = 0xE,
00234
00235
00236 GUAC_TRANSFER_BINARY_OR = 0x7,
00237 GUAC_TRANSFER_BINARY_NOR = 0x8,
00238
00239
00240 GUAC_TRANSFER_BINARY_XOR = 0x6,
00241 GUAC_TRANSFER_BINARY_XNOR = 0x9,
00242
00243
00244 GUAC_TRANSFER_BINARY_NSRC_AND = 0x4,
00245 GUAC_TRANSFER_BINARY_NSRC_NAND = 0xB,
00246
00247
00248 GUAC_TRANSFER_BINARY_NSRC_OR = 0xD,
00249 GUAC_TRANSFER_BINARY_NSRC_NOR = 0x2,
00250
00251
00252 GUAC_TRANSFER_BINARY_NDEST_AND = 0x2,
00253 GUAC_TRANSFER_BINARY_NDEST_NAND = 0xD,
00254
00255
00256 GUAC_TRANSFER_BINARY_NDEST_OR = 0xB,
00257 GUAC_TRANSFER_BINARY_NDEST_NOR = 0x4
00258
00259 } guac_transfer_function;
00260
00264 typedef enum guac_line_cap_style {
00265 GUAC_LINE_CAP_BUTT = 0x0,
00266 GUAC_LINE_CAP_ROUND = 0x1,
00267 GUAC_LINE_CAP_SQUARE = 0x2
00268 } guac_line_cap_style;
00269
00273 typedef enum guac_line_join_style {
00274 GUAC_LINE_JOIN_BEVEL = 0x0,
00275 GUAC_LINE_JOIN_MITER = 0x1,
00276 GUAC_LINE_JOIN_ROUND = 0x2
00277 } guac_line_join_style;
00278
00279 #endif
00280