libguac  1.0.0
user-fntypes.h
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
20 #ifndef _GUAC_USER_FNTYPES_H
21 #define _GUAC_USER_FNTYPES_H
22 
29 #include "object-types.h"
30 #include "protocol-types.h"
31 #include "stream-types.h"
32 #include "timestamp-types.h"
33 #include "user-types.h"
34 
59 typedef void* guac_user_callback(guac_user* user, void* data);
60 
95 typedef int guac_user_mouse_handler(guac_user* user, int x, int y,
96  int button_mask);
97 
116 typedef int guac_user_key_handler(guac_user* user, int keysym, int pressed);
117 
138 typedef int guac_user_audio_handler(guac_user* user, guac_stream* stream,
139  char* mimetype);
140 
162  char* mimetype);
163 
183  int width, int height);
184 
208 typedef int guac_user_file_handler(guac_user* user, guac_stream* stream,
209  char* mimetype, char* filename);
210 
237 typedef int guac_user_pipe_handler(guac_user* user, guac_stream* stream,
238  char* mimetype, char* name);
239 
260 typedef int guac_user_blob_handler(guac_user* user, guac_stream* stream,
261  void* data, int length);
262 
289 typedef int guac_user_ack_handler(guac_user* user, guac_stream* stream,
290  char* error, guac_protocol_status status);
291 
306 typedef int guac_user_end_handler(guac_user* user, guac_stream* stream);
307 
336 typedef int guac_user_join_handler(guac_user* user, int argc, char** argv);
337 
356 
376 typedef int guac_user_sync_handler(guac_user* user, guac_timestamp timestamp);
377 
397 typedef int guac_user_get_handler(guac_user* user, guac_object* object,
398  char* name);
399 
424 typedef int guac_user_put_handler(guac_user* user, guac_object* object,
425  guac_stream* stream, char* mimetype, char* name);
426 
427 #endif
428 
int guac_user_get_handler(guac_user *user, guac_object *object, char *name)
Handler for Guacamole object get requests.
Definition: user-fntypes.h:397
int guac_user_audio_handler(guac_user *user, guac_stream *stream, char *mimetype)
Handler for Guacamole audio streams received from a user.
Definition: user-fntypes.h:138
void * guac_user_callback(guac_user *user, void *data)
Callback which relates to a single guac_user at a time, along with arbitrary data.
Definition: user-fntypes.h:59
int guac_user_sync_handler(guac_user *user, guac_timestamp timestamp)
Handler for Guacamole sync events.
Definition: user-fntypes.h:376
int guac_user_size_handler(guac_user *user, int width, int height)
Handler for Guacamole size events, invoked when a "size" instruction has been received from a user...
Definition: user-fntypes.h:182
Type definitions related to Guacamole protocol streams.
int guac_user_mouse_handler(guac_user *user, int x, int y, int button_mask)
Handler for Guacamole mouse events, invoked when a "mouse" instruction has been received from a user...
Definition: user-fntypes.h:95
Type definitions related to Guacamole protocol objects.
int guac_user_end_handler(guac_user *user, guac_stream *stream)
Handler for Guacamole stream "end" instructions.
Definition: user-fntypes.h:306
Represents a single object within the Guacamole protocol.
Definition: object.h:32
Representation of a physical connection within a larger logical connection which may be shared...
Definition: user.h:94
int guac_user_blob_handler(guac_user *user, guac_stream *stream, void *data, int length)
Handler for Guacamole stream blobs.
Definition: user-fntypes.h:260
int guac_user_key_handler(guac_user *user, int keysym, int pressed)
Handler for Guacamole key events, invoked when a "key" event has been received from a user...
Definition: user-fntypes.h:116
Type definitions related to the Guacamole protocol.
int64_t guac_timestamp
An arbitrary timestamp denoting a relative time value in milliseconds.
Definition: timestamp-types.h:34
int guac_user_file_handler(guac_user *user, guac_stream *stream, char *mimetype, char *filename)
Handler for Guacamole file streams received from a user.
Definition: user-fntypes.h:208
int guac_user_clipboard_handler(guac_user *user, guac_stream *stream, char *mimetype)
Handler for Guacamole clipboard streams received from a user.
Definition: user-fntypes.h:161
int guac_user_ack_handler(guac_user *user, guac_stream *stream, char *error, guac_protocol_status status)
Handler for Guacamole stream "ack" instructions.
Definition: user-fntypes.h:289
int guac_user_pipe_handler(guac_user *user, guac_stream *stream, char *mimetype, char *name)
Handler for Guacamole pipe streams received from a user.
Definition: user-fntypes.h:237
int guac_user_put_handler(guac_user *user, guac_object *object, guac_stream *stream, char *mimetype, char *name)
Handler for Guacamole object put requests.
Definition: user-fntypes.h:424
int guac_user_leave_handler(guac_user *user)
Handler for Guacamole leave events.
Definition: user-fntypes.h:355
guac_protocol_status
Set of all possible status codes returned by protocol operations.
Definition: protocol-types.h:44
Represents a single stream within the Guacamole protocol.
Definition: stream.h:32
int guac_user_join_handler(guac_user *user, int argc, char **argv)
Handler for Guacamole join events.
Definition: user-fntypes.h:336
Type definitions related to Guacamole protocol timestamps.
Type definitions related to the guac_user object.