## XviewerJob XviewerJob |

## Functions

#define | XVIEWER_JOB_THUMBNAIL()
#define | XVIEWER_JOB_THUMBNAIL_CLASS()
#define | XVIEWER_IS_JOB_THUMBNAIL()
#define | XVIEWER_JOB_LOAD()
#define | XVIEWER_JOB_LOAD_CLASS()
#define | XVIEWER_IS_JOB_LOAD()
#define | XVIEWER_JOB_MODEL()
#define | XVIEWER_JOB_MODEL_CLASS()
#define | XVIEWER_IS_JOB_MODEL()
#define | XVIEWER_JOB_TRANSFORM()
#define | XVIEWER_JOB_TRANSFORM_CLASS()
#define | XVIEWER_IS_JOB_TRANSFORM()
#define | XVIEWER_JOB_SAVE()
#define | XVIEWER_JOB_SAVE_CLASS()
#define | XVIEWER_IS_JOB_SAVE()
#define | XVIEWER_JOB_SAVE_GET_CLASS()
#define | XVIEWER_JOB_SAVE_AS()
#define | XVIEWER_JOB_SAVE_AS_CLASS()
#define | XVIEWER_IS_JOB_SAVE_AS()
#define | XVIEWER_JOB_COPY()
#define | XVIEWER_JOB_COPY_CLASS()
void | xviewer_job_run ()
void | xviewer_job_set_progress ()
GType | xviewer_job_thumbnail_get_type ()
XviewerJob * | xviewer_job_thumbnail_new ()
GType | xviewer_job_load_get_type ()
XviewerJob * | xviewer_job_load_new ()
GType | xviewer_job_model_get_type ()
XviewerJob * | xviewer_job_model_new ()
GType | xviewer_job_transform_get_type ()
XviewerJob * | xviewer_job_transform_new ()
GType | xviewer_job_save_get_type ()
XviewerJob * | xviewer_job_save_new ()
GType | xviewer_job_save_as_get_type ()
XviewerJob * | xviewer_job_save_as_new ()
GType | xviewer_job_copy_get_type ()
XviewerJob * | xviewer_job_copy_new ()

## Types and Values

#define | XVIEWER_TYPE_JOB_THUMBNAIL
#define | XVIEWER_TYPE_JOB_LOAD
#define | XVIEWER_TYPE_JOB_MODEL
#define | XVIEWER_TYPE_JOB_TRANSFORM
#define | XVIEWER_TYPE_JOB_SAVE
#define | XVIEWER_TYPE_JOB_SAVE_AS
| XviewerJob
struct | XviewerJobThumbnail
struct | XviewerJobLoad
struct | XviewerJobModel
struct | XviewerJobTransform
struct | XviewerJobSave
struct | XviewerJobSaveAs
struct | XviewerJobCopy

## Description

## Functions

### XVIEWER_JOB_THUMBNAIL()

    #define XVIEWER_JOB_THUMBNAIL(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_THUMBNAIL, XviewerJobThumbnail))

### XVIEWER_JOB_THUMBNAIL_CLASS()

    #define XVIEWER_JOB_THUMBNAIL_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_THUMBNAIL, XviewerJobThumbnailClass))

### XVIEWER_IS_JOB_THUMBNAIL()

    #define XVIEWER_IS_JOB_THUMBNAIL(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_THUMBNAIL))

### XVIEWER_JOB_LOAD()

    #define XVIEWER_JOB_LOAD(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_LOAD, XviewerJobLoad))

### XVIEWER_JOB_LOAD_CLASS()

    #define XVIEWER_JOB_LOAD_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_LOAD, XviewerJobLoadClass))

### XVIEWER_IS_JOB_LOAD()

    #define XVIEWER_IS_JOB_LOAD(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_LOAD))

### XVIEWER_JOB_MODEL()

    #define XVIEWER_JOB_MODEL(obj)                (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_MODEL, XviewerJobModel))

### XVIEWER_JOB_MODEL_CLASS()

    #define XVIEWER_JOB_MODEL_CLASS(klass)        (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_MODEL, XviewerJobModelClass))

### XVIEWER_IS_JOB_MODEL()

    #define XVIEWER_IS_JOB_MODEL(obj)             (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_MODEL))

### XVIEWER_JOB_TRANSFORM()

    #define XVIEWER_JOB_TRANSFORM(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_TRANSFORM, XviewerJobTransform))

### XVIEWER_JOB_TRANSFORM_CLASS()

    #define XVIEWER_JOB_TRANSFORM_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_TRANSFORM, XviewerJobTransformClass))

### XVIEWER_IS_JOB_TRANSFORM()

    #define XVIEWER_IS_JOB_TRANSFORM(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_TRANSFORM))

### XVIEWER_JOB_SAVE()

    #define XVIEWER_JOB_SAVE(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_SAVE, XviewerJobSave))

### XVIEWER_JOB_SAVE_CLASS()

    #define XVIEWER_JOB_SAVE_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_SAVE, XviewerJobSaveClass))

### XVIEWER_IS_JOB_SAVE()

    #define XVIEWER_IS_JOB_SAVE(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_SAVE))

### XVIEWER_JOB_SAVE_GET_CLASS()

    #define XVIEWER_JOB_SAVE_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj),  XVIEWER_TYPE_JOB_SAVE, XviewerJobSaveClass))

### XVIEWER_JOB_SAVE_AS()

    #define XVIEWER_JOB_SAVE_AS(obj)              (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_SAVE_AS, XviewerJobSaveAs))

### XVIEWER_JOB_SAVE_AS_CLASS()

    #define XVIEWER_JOB_SAVE_AS_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_SAVE_AS, XviewerJobSaveAsClass))

### XVIEWER_IS_JOB_SAVE_AS()

    #define XVIEWER_IS_JOB_SAVE_AS(obj)           (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XVIEWER_TYPE_JOB_SAVE_AS))

### XVIEWER_JOB_COPY()

    #define XVIEWER_JOB_COPY(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), XVIEWER_TYPE_JOB_COPY, XviewerJobCopy))

### XVIEWER_JOB_COPY_CLASS()

    #define XVIEWER_JOB_COPY_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass),  XVIEWER_TYPE_JOB_COPY, XviewerJobCopyClass))

### xviewer_job_run ()

    void
    xviewer_job_run (XviewerJob *job);

### xviewer_job_set_progress ()

    void
    xviewer_job_set_progress (XviewerJob *job,
                              gfloat progress);

### xviewer_job_thumbnail_get_type ()

    GType
    xviewer_job_thumbnail_get_type (void);

### xviewer_job_thumbnail_new ()

    XviewerJob *
    xviewer_job_thumbnail_new (XviewerImage *image);

### xviewer_job_load_get_type ()

    GType
    xviewer_job_load_get_type (void);

### xviewer_job_load_new ()

    XviewerJob *
    xviewer_job_load_new (XviewerImage *image,
                          XviewerImageData data);

### xviewer_job_model_get_type ()

    GType
    xviewer_job_model_get_type (void);

### xviewer_job_model_new ()

    XviewerJob *
    xviewer_job_model_new (GSList *file_list);

### xviewer_job_transform_get_type ()

    GType
    xviewer_job_transform_get_type (void);

### xviewer_job_transform_new ()

    XviewerJob *
    xviewer_job_transform_new (GList *images,
                               XviewerTransform *transform);

### xviewer_job_save_get_type ()

    GType
    xviewer_job_save_get_type (void);

### xviewer_job_save_new ()

    XviewerJob *
    xviewer_job_save_new (GList *images);

### xviewer_job_save_as_get_type ()

    GType
    xviewer_job_save_as_get_type (void);

### xviewer_job_save_as_new ()

    XviewerJob *
    xviewer_job_save_as_new (GList *images,
                             XviewerURIConverter *converter,
                             GFile *file);

### xviewer_job_copy_get_type ()

    GType
    xviewer_job_copy_get_type (void);

### xviewer_job_copy_new ()

    XviewerJob *
    xviewer_job_copy_new (GList *images,
                          const gchar *destination);

## Types and Values

### XVIEWER_TYPE_JOB_THUMBNAIL

    #define XVIEWER_TYPE_JOB_THUMBNAIL            (xviewer_job_thumbnail_get_type ())

### XVIEWER_TYPE_JOB_LOAD

    #define XVIEWER_TYPE_JOB_LOAD                 (xviewer_job_load_get_type ())

### XVIEWER_TYPE_JOB_MODEL

    #define XVIEWER_TYPE_JOB_MODEL                (xviewer_job_model_get_type ())

### XVIEWER_TYPE_JOB_TRANSFORM

    #define XVIEWER_TYPE_JOB_TRANSFORM            (xviewer_job_transform_get_type ())

### XVIEWER_TYPE_JOB_SAVE

    #define XVIEWER_TYPE_JOB_SAVE                 (xviewer_job_save_get_type ())

### XVIEWER_TYPE_JOB_SAVE_AS

    #define XVIEWER_TYPE_JOB_SAVE_AS              (xviewer_job_save_as_get_type ())

### XviewerJob

    typedef struct {
    	GObject       parent;

    	GCancellable *cancellable;
    	GError       *error;
    	GMutex       *mutex;

    	gfloat        progress;
    	gboolean      cancelled;
    	gboolean      finished;
    } XviewerJob;

### struct XviewerJobThumbnail

    struct XviewerJobThumbnail {
    	XviewerJob           parent;

    	XviewerImage        *image;
    	GdkPixbuf       *thumbnail;
    };

### struct XviewerJobLoad

    struct XviewerJobLoad {
    	XviewerJob           parent;

    	XviewerImage        *image;
    	XviewerImageData     data;
    };

### struct XviewerJobModel

    struct XviewerJobModel {
    	XviewerJob           parent;

    	XviewerListStore    *store;
    	GSList          *file_list;
    };

### struct XviewerJobTransform

    struct XviewerJobTransform {
    	XviewerJob           parent;

    	GList           *images;
    	XviewerTransform    *transform;
    };

### struct XviewerJobSave

    struct XviewerJobSave {
    	XviewerJob           parent;

    	GList	        *images;
    	XviewerImage        *current_image;
    	guint            current_position;
    };

### struct XviewerJobSaveAs

    struct XviewerJobSaveAs {
    	XviewerJobSave       parent;

    	XviewerURIConverter *converter;
    	GFile           *file;
    };

### struct XviewerJobCopy

    struct XviewerJobCopy {
    	XviewerJob           parent;

    	GList           *images;
    	gchar           *destination;
    	guint            current_position;
    };