## EntangleScriptSimple

EntangleScriptSimple

## Functions

void | entangle_script_simple_return_task_error ()
GObject * | entangle_script_simple_init_task_data ()
GObject * | entangle_script_simple_get_task_data ()

## Types and Values

#define | ENTANGLE_TYPE_SCRIPT_SIMPLE
struct | EntangleScriptSimpleClass
| EntangleScriptSimple

## Object Hierarchy

        GObject
        ╰── EntangleScript
            ╰── EntangleScriptSimple

## Description

## Functions

### entangle_script_simple_return_task_error ()

    void
    entangle_script_simple_return_task_error
                                   (EntangleScriptSimple *script,
                                    GTask *result,
                                    const gchar *message);

### entangle_script_simple_init_task_data ()

    GObject *
    entangle_script_simple_init_task_data (EntangleScriptSimple *script);

#### Parameters

script | the script object |

#### Returns

the data.

[transfer full]

### entangle_script_simple_get_task_data ()

    GObject *
    entangle_script_simple_get_task_data (EntangleScriptSimple *script,
                                          GTask *result);

#### Parameters

script | a script object |
result | the task object |

#### Returns

the data.

[transfer full]

## Types and Values

### ENTANGLE_TYPE_SCRIPT_SIMPLE

    #define ENTANGLE_TYPE_SCRIPT_SIMPLE (entangle_script_simple_get_type())

### struct EntangleScriptSimpleClass

    struct EntangleScriptSimpleClass {
        void (*execute)(EntangleScriptSimple *script,
                        EntangleCameraAutomata *automata,
                        GCancellable *cancel,
                        GTask *result);

        GObject *(*init_task_data)(EntangleScriptSimple *script);
    };

The EntangleScriptSimpleClass abstract class is a simplification of the EntangleScriptClass to workaround limitations of the Python GObject introspection bindings propagating GErrors to/from the C layer, and dealing with async ready callbacks.

#### Members

`execute` () | Runs the logic for the script. The implementation should use the `automata` object to perform capture/preview operations on the camera. `cancel` will indicate whether the script should be aborted early. `result` should be set when the script completes or aborts. |
`init_task_data` () | create a data object that will be associated with the GTask passed to the `execute` method. |

### EntangleScriptSimple

    typedef struct _EntangleScriptSimple EntangleScriptSimple;