Merge branch '3660_view_archive'
[midnight-commander.git] / src / background.h
bloba8b03233e040ccb1e211ae0f7c134c9ea224ec8b
1 /** \file background.h
2 * \brief Header: Background support
3 */
5 #ifndef MC__BACKGROUND_H
6 #define MC__BACKGROUND_H
8 #include <sys/types.h> /* pid_t */
9 #include "filemanager/fileopctx.h"
10 /*** typedefs(not structures) and defined constants **********************************************/
12 enum TaskState
14 Task_Running,
15 Task_Stopped
18 typedef struct TaskList
20 int fd;
21 int to_child_fd;
22 pid_t pid;
23 int state;
24 char *info;
25 struct TaskList *next;
26 } TaskList;
28 /*** enums ***************************************************************************************/
30 /*** structures declarations (and typedefs of structures)*****************************************/
32 /*** global variables defined in .c file *********************************************************/
34 extern TaskList *task_list;
36 /*** declarations of public functions ************************************************************/
38 int do_background (file_op_context_t * ctx, char *info);
39 int parent_call (void *routine, file_op_context_t * ctx, int argc, ...);
40 char *parent_call_string (void *routine, int argc, ...);
42 void unregister_task_running (pid_t pid, int fd);
43 void unregister_task_with_pid (pid_t pid);
45 gboolean background_parent_call (const gchar * event_group_name, const gchar * event_name,
46 gpointer init_data, gpointer data);
48 gboolean
49 background_parent_call_string (const gchar * event_group_name, const gchar * event_name,
50 gpointer init_data, gpointer data);
52 /*** inline functions ****************************************************************************/
54 #endif /* MC__BACKGROUND_H */