diff options
Diffstat (limited to 'src/background.h')
-rw-r--r-- | src/background.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/background.h b/src/background.h new file mode 100644 index 0000000..a8b0323 --- /dev/null +++ b/src/background.h @@ -0,0 +1,54 @@ +/** \file background.h + * \brief Header: Background support + */ + +#ifndef MC__BACKGROUND_H +#define MC__BACKGROUND_H + +#include <sys/types.h> /* pid_t */ +#include "filemanager/fileopctx.h" +/*** typedefs(not structures) and defined constants **********************************************/ + +enum TaskState +{ + Task_Running, + Task_Stopped +}; + +typedef struct TaskList +{ + int fd; + int to_child_fd; + pid_t pid; + int state; + char *info; + struct TaskList *next; +} TaskList; + +/*** enums ***************************************************************************************/ + +/*** structures declarations (and typedefs of structures)*****************************************/ + +/*** global variables defined in .c file *********************************************************/ + +extern TaskList *task_list; + +/*** declarations of public functions ************************************************************/ + +int do_background (file_op_context_t * ctx, char *info); +int parent_call (void *routine, file_op_context_t * ctx, int argc, ...); +char *parent_call_string (void *routine, int argc, ...); + +void unregister_task_running (pid_t pid, int fd); +void unregister_task_with_pid (pid_t pid); + +gboolean background_parent_call (const gchar * event_group_name, const gchar * event_name, + gpointer init_data, gpointer data); + +gboolean +background_parent_call_string (const gchar * event_group_name, const gchar * event_name, + gpointer init_data, gpointer data); + +/*** inline functions ****************************************************************************/ + +#endif /* MC__BACKGROUND_H */ |