/* MediaViewTracker.c generated by valac 0.40.4, the Vala compiler * generated from MediaViewTracker.vala, do not modify */ /* Copyright 2016 Software Freedom Conservancy Inc. * * This software is licensed under the GNU Lesser General Public License * (version 2.1 or later). See the COPYING file in this distribution. */ #include #include #include #include #define CORE_TYPE_TRACKER (core_tracker_get_type ()) #define CORE_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CORE_TYPE_TRACKER, CoreTracker)) #define CORE_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CORE_TYPE_TRACKER, CoreTrackerClass)) #define CORE_IS_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CORE_TYPE_TRACKER)) #define CORE_IS_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CORE_TYPE_TRACKER)) #define CORE_TRACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CORE_TYPE_TRACKER, CoreTrackerClass)) typedef struct _CoreTracker CoreTracker; typedef struct _CoreTrackerClass CoreTrackerClass; typedef struct _CoreTrackerPrivate CoreTrackerPrivate; #define CORE_TYPE_VIEW_TRACKER (core_view_tracker_get_type ()) #define CORE_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CORE_TYPE_VIEW_TRACKER, CoreViewTracker)) #define CORE_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CORE_TYPE_VIEW_TRACKER, CoreViewTrackerClass)) #define CORE_IS_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CORE_TYPE_VIEW_TRACKER)) #define CORE_IS_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CORE_TYPE_VIEW_TRACKER)) #define CORE_VIEW_TRACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CORE_TYPE_VIEW_TRACKER, CoreViewTrackerClass)) typedef struct _CoreViewTracker CoreViewTracker; typedef struct _CoreViewTrackerClass CoreViewTrackerClass; typedef struct _CoreViewTrackerPrivate CoreViewTrackerPrivate; #define TYPE_MEDIA_VIEW_TRACKER (media_view_tracker_get_type ()) #define MEDIA_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_VIEW_TRACKER, MediaViewTracker)) #define MEDIA_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_VIEW_TRACKER, MediaViewTrackerClass)) #define IS_MEDIA_VIEW_TRACKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_VIEW_TRACKER)) #define IS_MEDIA_VIEW_TRACKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_VIEW_TRACKER)) #define MEDIA_VIEW_TRACKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_VIEW_TRACKER, MediaViewTrackerClass)) typedef struct _MediaViewTracker MediaViewTracker; typedef struct _MediaViewTrackerClass MediaViewTrackerClass; typedef struct _MediaViewTrackerPrivate MediaViewTrackerPrivate; #define TYPE_MEDIA_ACCUMULATOR (media_accumulator_get_type ()) #define MEDIA_ACCUMULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_ACCUMULATOR, MediaAccumulator)) #define MEDIA_ACCUMULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_ACCUMULATOR, MediaAccumulatorClass)) #define IS_MEDIA_ACCUMULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_ACCUMULATOR)) #define IS_MEDIA_ACCUMULATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_ACCUMULATOR)) #define MEDIA_ACCUMULATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_ACCUMULATOR, MediaAccumulatorClass)) typedef struct _MediaAccumulator MediaAccumulator; typedef struct _MediaAccumulatorClass MediaAccumulatorClass; #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) #define TYPE_DATA_COLLECTION (data_collection_get_type ()) #define DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_COLLECTION, DataCollection)) #define DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_COLLECTION, DataCollectionClass)) #define IS_DATA_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_COLLECTION)) #define IS_DATA_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_COLLECTION)) #define DATA_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_COLLECTION, DataCollectionClass)) typedef struct _DataCollection DataCollection; typedef struct _DataCollectionClass DataCollectionClass; #define TYPE_VIEW_COLLECTION (view_collection_get_type ()) #define VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIEW_COLLECTION, ViewCollection)) #define VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIEW_COLLECTION, ViewCollectionClass)) #define IS_VIEW_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIEW_COLLECTION)) #define IS_VIEW_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIEW_COLLECTION)) #define VIEW_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIEW_COLLECTION, ViewCollectionClass)) typedef struct _ViewCollection ViewCollection; typedef struct _ViewCollectionClass ViewCollectionClass; #define CORE_TYPE_TRACKER_ACCUMULATOR (core_tracker_accumulator_get_type ()) #define CORE_TRACKER_ACCUMULATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CORE_TYPE_TRACKER_ACCUMULATOR, CoreTrackerAccumulator)) #define CORE_IS_TRACKER_ACCUMULATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CORE_TYPE_TRACKER_ACCUMULATOR)) #define CORE_TRACKER_ACCUMULATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CORE_TYPE_TRACKER_ACCUMULATOR, CoreTrackerAccumulatorIface)) typedef struct _CoreTrackerAccumulator CoreTrackerAccumulator; typedef struct _CoreTrackerAccumulatorIface CoreTrackerAccumulatorIface; #define TYPE_DATA_OBJECT (data_object_get_type ()) #define DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_OBJECT, DataObject)) #define DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_OBJECT, DataObjectClass)) #define IS_DATA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_OBJECT)) #define IS_DATA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_OBJECT)) #define DATA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_OBJECT, DataObjectClass)) typedef struct _DataObject DataObject; typedef struct _DataObjectClass DataObjectClass; #define TYPE_ALTERATION (alteration_get_type ()) #define ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ALTERATION, Alteration)) #define ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ALTERATION, AlterationClass)) #define IS_ALTERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ALTERATION)) #define IS_ALTERATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ALTERATION)) #define ALTERATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ALTERATION, AlterationClass)) typedef struct _Alteration Alteration; typedef struct _AlterationClass AlterationClass; typedef struct _MediaAccumulatorPrivate MediaAccumulatorPrivate; enum { MEDIA_ACCUMULATOR_0_PROPERTY, MEDIA_ACCUMULATOR_NUM_PROPERTIES }; static GParamSpec* media_accumulator_properties[MEDIA_ACCUMULATOR_NUM_PROPERTIES]; #define TYPE_DATA_SOURCE (data_source_get_type ()) #define DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_SOURCE, DataSource)) #define DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_SOURCE, DataSourceClass)) #define IS_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_SOURCE)) #define IS_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_SOURCE)) #define DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_SOURCE, DataSourceClass)) typedef struct _DataSource DataSource; typedef struct _DataSourceClass DataSourceClass; #define TYPE_DATA_VIEW (data_view_get_type ()) #define DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATA_VIEW, DataView)) #define DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATA_VIEW, DataViewClass)) #define IS_DATA_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATA_VIEW)) #define IS_DATA_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATA_VIEW)) #define DATA_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATA_VIEW, DataViewClass)) typedef struct _DataView DataView; typedef struct _DataViewClass DataViewClass; #define TYPE_THUMBNAIL_SOURCE (thumbnail_source_get_type ()) #define THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSource)) #define THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass)) #define IS_THUMBNAIL_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_THUMBNAIL_SOURCE)) #define IS_THUMBNAIL_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_THUMBNAIL_SOURCE)) #define THUMBNAIL_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_THUMBNAIL_SOURCE, ThumbnailSourceClass)) typedef struct _ThumbnailSource ThumbnailSource; typedef struct _ThumbnailSourceClass ThumbnailSourceClass; #define TYPE_MEDIA_SOURCE (media_source_get_type ()) #define MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MEDIA_SOURCE, MediaSource)) #define MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MEDIA_SOURCE, MediaSourceClass)) #define IS_MEDIA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MEDIA_SOURCE)) #define IS_MEDIA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MEDIA_SOURCE)) #define MEDIA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MEDIA_SOURCE, MediaSourceClass)) typedef struct _MediaSource MediaSource; typedef struct _MediaSourceClass MediaSourceClass; #define TYPE_PHOTO_SOURCE (photo_source_get_type ()) #define PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO_SOURCE, PhotoSource)) #define PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO_SOURCE, PhotoSourceClass)) #define IS_PHOTO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO_SOURCE)) #define IS_PHOTO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO_SOURCE)) #define PHOTO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO_SOURCE, PhotoSourceClass)) typedef struct _PhotoSource PhotoSource; typedef struct _PhotoSourceClass PhotoSourceClass; #define TYPE_PHOTO (photo_get_type ()) #define PHOTO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PHOTO, Photo)) #define PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PHOTO, PhotoClass)) #define IS_PHOTO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PHOTO)) #define IS_PHOTO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PHOTO)) #define PHOTO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PHOTO, PhotoClass)) typedef struct _Photo Photo; typedef struct _PhotoClass PhotoClass; #define TYPE_PHOTO_FILE_FORMAT (photo_file_format_get_type ()) #define TYPE_VIDEO_SOURCE (video_source_get_type ()) #define VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_SOURCE, VideoSource)) #define VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_SOURCE, VideoSourceClass)) #define IS_VIDEO_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_SOURCE)) #define IS_VIDEO_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_SOURCE)) #define VIDEO_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_SOURCE, VideoSourceClass)) typedef struct _VideoSource VideoSource; typedef struct _VideoSourceClass VideoSourceClass; #define TYPE_FLAGGABLE (flaggable_get_type ()) #define FLAGGABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_FLAGGABLE, Flaggable)) #define IS_FLAGGABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_FLAGGABLE)) #define FLAGGABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_FLAGGABLE, FlaggableIface)) typedef struct _Flaggable Flaggable; typedef struct _FlaggableIface FlaggableIface; #define _g_free0(var) (var = (g_free (var), NULL)) #define TYPE_VIDEO (video_get_type ()) #define VIDEO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO, Video)) #define VIDEO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO, VideoClass)) #define IS_VIDEO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO)) #define IS_VIDEO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO)) #define VIDEO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO, VideoClass)) typedef struct _Video Video; typedef struct _VideoClass VideoClass; #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); struct _CoreTracker { GTypeInstance parent_instance; volatile int ref_count; CoreTrackerPrivate * priv; }; struct _CoreTrackerClass { GTypeClass parent_class; void (*finalize) (CoreTracker *self); void (*updated) (CoreTracker* self); }; struct _CoreViewTracker { CoreTracker parent_instance; CoreViewTrackerPrivate * priv; }; struct _CoreViewTrackerClass { CoreTrackerClass parent_class; }; struct _MediaViewTracker { CoreViewTracker parent_instance; MediaViewTrackerPrivate * priv; MediaAccumulator* all; MediaAccumulator* visible; MediaAccumulator* selected; }; struct _MediaViewTrackerClass { CoreViewTrackerClass parent_class; }; struct _CoreTrackerAccumulatorIface { GTypeInterface parent_iface; gboolean (*include) (CoreTrackerAccumulator* self, DataObject* object); gboolean (*uninclude) (CoreTrackerAccumulator* self, DataObject* object); gboolean (*altered) (CoreTrackerAccumulator* self, DataObject* object, Alteration* alteration); }; struct _MediaAccumulator { GObject parent_instance; MediaAccumulatorPrivate * priv; gint total; gint photos; gint videos; gint raw; gint flagged; }; struct _MediaAccumulatorClass { GObjectClass parent_class; }; typedef enum { PHOTO_FILE_FORMAT_JFIF, PHOTO_FILE_FORMAT_RAW, PHOTO_FILE_FORMAT_PNG, PHOTO_FILE_FORMAT_TIFF, PHOTO_FILE_FORMAT_BMP, PHOTO_FILE_FORMAT_UNKNOWN } PhotoFileFormat; struct _FlaggableIface { GTypeInterface parent_iface; gboolean (*is_flagged) (Flaggable* self); void (*mark_flagged) (Flaggable* self); void (*mark_unflagged) (Flaggable* self); }; static gpointer media_view_tracker_parent_class = NULL; static gpointer media_accumulator_parent_class = NULL; static CoreTrackerAccumulatorIface * media_accumulator_core_tracker_accumulator_parent_iface = NULL; gpointer core_tracker_ref (gpointer instance); void core_tracker_unref (gpointer instance); GParamSpec* core_param_spec_tracker (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void core_value_set_tracker (GValue* value, gpointer v_object); void core_value_take_tracker (GValue* value, gpointer v_object); gpointer core_value_get_tracker (const GValue* value); GType core_tracker_get_type (void) G_GNUC_CONST; GType core_view_tracker_get_type (void) G_GNUC_CONST; GType media_view_tracker_get_type (void) G_GNUC_CONST; GType media_accumulator_get_type (void) G_GNUC_CONST; MediaAccumulator* media_accumulator_new (void); MediaAccumulator* media_accumulator_construct (GType object_type); gpointer data_collection_ref (gpointer instance); void data_collection_unref (gpointer instance); GParamSpec* param_spec_data_collection (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_data_collection (GValue* value, gpointer v_object); void value_take_data_collection (GValue* value, gpointer v_object); gpointer value_get_data_collection (const GValue* value); GType data_collection_get_type (void) G_GNUC_CONST; GType view_collection_get_type (void) G_GNUC_CONST; MediaViewTracker* media_view_tracker_new (ViewCollection* collection); MediaViewTracker* media_view_tracker_construct (GType object_type, ViewCollection* collection); CoreViewTracker* core_view_tracker_new (ViewCollection* collection); CoreViewTracker* core_view_tracker_construct (GType object_type, ViewCollection* collection); GType data_object_get_type (void) G_GNUC_CONST; gpointer alteration_ref (gpointer instance); void alteration_unref (gpointer instance); GParamSpec* param_spec_alteration (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_alteration (GValue* value, gpointer v_object); void value_take_alteration (GValue* value, gpointer v_object); gpointer value_get_alteration (const GValue* value); GType alteration_get_type (void) G_GNUC_CONST; GType core_tracker_accumulator_get_type (void) G_GNUC_CONST; void core_view_tracker_start (CoreViewTracker* self, CoreTrackerAccumulator* all, CoreTrackerAccumulator* visible, CoreTrackerAccumulator* selected); static void media_view_tracker_finalize (CoreTracker * obj); static gboolean media_accumulator_real_include (CoreTrackerAccumulator* base, DataObject* object); GType data_source_get_type (void) G_GNUC_CONST; GType data_view_get_type (void) G_GNUC_CONST; DataSource* data_view_get_source (DataView* self); GType thumbnail_source_get_type (void) G_GNUC_CONST; GType media_source_get_type (void) G_GNUC_CONST; GType photo_source_get_type (void) G_GNUC_CONST; GType photo_get_type (void) G_GNUC_CONST; GType photo_file_format_get_type (void) G_GNUC_CONST; PhotoFileFormat photo_get_master_file_format (Photo* self); GType video_source_get_type (void) G_GNUC_CONST; GType flaggable_get_type (void) G_GNUC_CONST; gboolean flaggable_is_flagged (Flaggable* self); static gboolean media_accumulator_real_uninclude (CoreTrackerAccumulator* base, DataObject* object); gchar* data_object_to_string (DataObject* self); gchar* media_accumulator_to_string (MediaAccumulator* self); GType video_get_type (void) G_GNUC_CONST; static gboolean media_accumulator_real_altered (CoreTrackerAccumulator* base, DataObject* object, Alteration* alteration); gboolean alteration_has_detail (Alteration* self, const gchar* subject, const gchar* detail); static void media_accumulator_finalize (GObject * obj); MediaViewTracker* media_view_tracker_construct (GType object_type, ViewCollection* collection) { MediaViewTracker* self = NULL; MediaAccumulator* _tmp0_; MediaAccumulator* _tmp1_; MediaAccumulator* _tmp2_; #line 12 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_VIEW_COLLECTION (collection), NULL); #line 13 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = (MediaViewTracker*) core_view_tracker_construct (object_type, collection); #line 15 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = self->all; #line 15 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = self->visible; #line 15 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = self->selected; #line 15 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" core_view_tracker_start (G_TYPE_CHECK_INSTANCE_CAST (self, CORE_TYPE_VIEW_TRACKER, CoreViewTracker), G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, CORE_TYPE_TRACKER_ACCUMULATOR, CoreTrackerAccumulator), G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, CORE_TYPE_TRACKER_ACCUMULATOR, CoreTrackerAccumulator), G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, CORE_TYPE_TRACKER_ACCUMULATOR, CoreTrackerAccumulator)); #line 12 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return self; #line 394 "MediaViewTracker.c" } MediaViewTracker* media_view_tracker_new (ViewCollection* collection) { #line 12 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return media_view_tracker_construct (TYPE_MEDIA_VIEW_TRACKER, collection); #line 403 "MediaViewTracker.c" } static void media_view_tracker_class_init (MediaViewTrackerClass * klass) { #line 7 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" media_view_tracker_parent_class = g_type_class_peek_parent (klass); #line 7 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" ((CoreTrackerClass *) klass)->finalize = media_view_tracker_finalize; #line 414 "MediaViewTracker.c" } static void media_view_tracker_instance_init (MediaViewTracker * self) { MediaAccumulator* _tmp0_; MediaAccumulator* _tmp1_; MediaAccumulator* _tmp2_; #line 8 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = media_accumulator_new (); #line 8 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->all = _tmp0_; #line 9 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = media_accumulator_new (); #line 9 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->visible = _tmp1_; #line 10 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = media_accumulator_new (); #line 10 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->selected = _tmp2_; #line 436 "MediaViewTracker.c" } static void media_view_tracker_finalize (CoreTracker * obj) { MediaViewTracker * self; #line 7 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_MEDIA_VIEW_TRACKER, MediaViewTracker); #line 8 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (self->all); #line 9 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (self->visible); #line 10 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (self->selected); #line 7 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" CORE_TRACKER_CLASS (media_view_tracker_parent_class)->finalize (obj); #line 454 "MediaViewTracker.c" } GType media_view_tracker_get_type (void) { static volatile gsize media_view_tracker_type_id__volatile = 0; if (g_once_init_enter (&media_view_tracker_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (MediaViewTrackerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) media_view_tracker_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MediaViewTracker), 0, (GInstanceInitFunc) media_view_tracker_instance_init, NULL }; GType media_view_tracker_type_id; media_view_tracker_type_id = g_type_register_static (CORE_TYPE_VIEW_TRACKER, "MediaViewTracker", &g_define_type_info, 0); g_once_init_leave (&media_view_tracker_type_id__volatile, media_view_tracker_type_id); } return media_view_tracker_type_id__volatile; } static gpointer _g_object_ref0 (gpointer self) { #line 31 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return self ? g_object_ref (self) : NULL; #line 477 "MediaViewTracker.c" } static gboolean media_accumulator_real_include (CoreTrackerAccumulator* base, DataObject* object) { MediaAccumulator * self; gboolean result = FALSE; DataSource* source = NULL; DataSource* _tmp0_; gint _tmp1_; Photo* photo = NULL; DataSource* _tmp2_; Photo* _tmp3_; Photo* _tmp4_; Flaggable* flaggable = NULL; DataSource* _tmp11_; Flaggable* _tmp12_; gboolean _tmp13_ = FALSE; Flaggable* _tmp14_; #line 26 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_MEDIA_ACCUMULATOR, MediaAccumulator); #line 26 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_DATA_OBJECT (object), FALSE); #line 27 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_DATA_VIEW, DataView)); #line 27 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" source = _tmp0_; #line 29 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = self->total; #line 29 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->total = _tmp1_ + 1; #line 31 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = source; #line 31 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, TYPE_PHOTO) ? ((Photo*) _tmp2_) : NULL); #line 31 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" photo = _tmp3_; #line 32 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp4_ = photo; #line 32 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp4_ != NULL) { #line 521 "MediaViewTracker.c" Photo* _tmp5_; Photo* _tmp7_; #line 33 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp5_ = photo; #line 33 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (photo_get_master_file_format (_tmp5_) == PHOTO_FILE_FORMAT_RAW) { #line 528 "MediaViewTracker.c" gint _tmp6_; #line 34 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp6_ = self->raw; #line 34 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->raw = _tmp6_ + 1; #line 534 "MediaViewTracker.c" } #line 37 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp7_ = photo; #line 37 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (photo_get_master_file_format (_tmp7_) != PHOTO_FILE_FORMAT_RAW) { #line 540 "MediaViewTracker.c" gint _tmp8_; #line 38 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp8_ = self->photos; #line 38 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->photos = _tmp8_ + 1; #line 546 "MediaViewTracker.c" } } else { DataSource* _tmp9_; #line 40 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp9_ = source; #line 40 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, TYPE_VIDEO_SOURCE)) { #line 554 "MediaViewTracker.c" gint _tmp10_; #line 41 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp10_ = self->videos; #line 41 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->videos = _tmp10_ + 1; #line 560 "MediaViewTracker.c" } } #line 44 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp11_ = source; #line 44 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp12_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp11_, TYPE_FLAGGABLE) ? ((Flaggable*) _tmp11_) : NULL); #line 44 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" flaggable = _tmp12_; #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp14_ = flaggable; #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp14_ != NULL) { #line 573 "MediaViewTracker.c" Flaggable* _tmp15_; #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp15_ = flaggable; #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp13_ = flaggable_is_flagged (_tmp15_); #line 579 "MediaViewTracker.c" } else { #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp13_ = FALSE; #line 583 "MediaViewTracker.c" } #line 45 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp13_) { #line 587 "MediaViewTracker.c" gint _tmp16_; #line 46 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp16_ = self->flagged; #line 46 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->flagged = _tmp16_ + 1; #line 593 "MediaViewTracker.c" } #line 49 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = TRUE; #line 49 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (flaggable); #line 49 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (photo); #line 49 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (source); #line 49 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 605 "MediaViewTracker.c" } static gboolean media_accumulator_real_uninclude (CoreTrackerAccumulator* base, DataObject* object) { MediaAccumulator * self; gboolean result = FALSE; DataSource* source = NULL; DataSource* _tmp0_; gint _tmp1_; gint _tmp9_; Photo* photo = NULL; DataSource* _tmp10_; Photo* _tmp11_; Photo* _tmp12_; Flaggable* flaggable = NULL; DataSource* _tmp22_; Flaggable* _tmp23_; gboolean _tmp24_ = FALSE; Flaggable* _tmp25_; #line 52 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_MEDIA_ACCUMULATOR, MediaAccumulator); #line 52 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_DATA_OBJECT (object), FALSE); #line 53 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_DATA_VIEW, DataView)); #line 53 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" source = _tmp0_; #line 55 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = self->total; #line 55 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp1_ < 1) { #line 640 "MediaViewTracker.c" gchar* _tmp2_; gchar* _tmp3_; const gchar* _tmp4_; gchar* _tmp5_; gchar* _tmp6_; gchar* _tmp7_; gchar* _tmp8_; #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = data_object_to_string (object); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp3_ = _tmp2_; #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp4_ = g_type_name (G_TYPE_FROM_INSTANCE (G_TYPE_CHECK_INSTANCE_CAST (self, G_TYPE_OBJECT, GObject))); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp5_ = media_accumulator_to_string (self); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp6_ = _tmp5_; #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp7_ = g_strdup_printf ("Tried to remove DataObject %s from empty %s (%s)", _tmp3_, _tmp4_, _tmp6_); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp8_ = _tmp7_; #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_warning ("MediaViewTracker.vala:56: %s", _tmp8_); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_free0 (_tmp8_); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_free0 (_tmp6_); #line 56 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_free0 (_tmp3_); #line 58 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = FALSE; #line 58 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (source); #line 58 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 676 "MediaViewTracker.c" } #line 60 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp9_ = self->total; #line 60 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->total = _tmp9_ - 1; #line 62 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp10_ = source; #line 62 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp11_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp10_, TYPE_PHOTO) ? ((Photo*) _tmp10_) : NULL); #line 62 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" photo = _tmp11_; #line 63 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp12_ = photo; #line 63 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp12_ != NULL) { #line 692 "MediaViewTracker.c" Photo* _tmp13_; Photo* _tmp16_; #line 64 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp13_ = photo; #line 64 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (photo_get_master_file_format (_tmp13_) == PHOTO_FILE_FORMAT_RAW) { #line 699 "MediaViewTracker.c" gint _tmp14_; gint _tmp15_; #line 65 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp14_ = self->raw; #line 65 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _vala_assert (_tmp14_ > 0, "raw > 0"); #line 66 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp15_ = self->raw; #line 66 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->raw = _tmp15_ - 1; #line 710 "MediaViewTracker.c" } #line 69 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp16_ = photo; #line 69 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (photo_get_master_file_format (_tmp16_) != PHOTO_FILE_FORMAT_RAW) { #line 716 "MediaViewTracker.c" gint _tmp17_; gint _tmp18_; #line 70 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp17_ = self->photos; #line 70 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _vala_assert (_tmp17_ > 0, "photos > 0"); #line 71 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp18_ = self->photos; #line 71 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->photos = _tmp18_ - 1; #line 727 "MediaViewTracker.c" } } else { DataSource* _tmp19_; #line 73 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp19_ = source; #line 73 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp19_, TYPE_VIDEO)) { #line 735 "MediaViewTracker.c" gint _tmp20_; gint _tmp21_; #line 74 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp20_ = self->videos; #line 74 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _vala_assert (_tmp20_ > 0, "videos > 0"); #line 75 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp21_ = self->videos; #line 75 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->videos = _tmp21_ - 1; #line 746 "MediaViewTracker.c" } } #line 78 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp22_ = source; #line 78 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp23_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp22_, TYPE_FLAGGABLE) ? ((Flaggable*) _tmp22_) : NULL); #line 78 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" flaggable = _tmp23_; #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp25_ = flaggable; #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp25_ != NULL) { #line 759 "MediaViewTracker.c" Flaggable* _tmp26_; #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp26_ = flaggable; #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp24_ = flaggable_is_flagged (_tmp26_); #line 765 "MediaViewTracker.c" } else { #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp24_ = FALSE; #line 769 "MediaViewTracker.c" } #line 79 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp24_) { #line 773 "MediaViewTracker.c" gint _tmp27_; gint _tmp28_; #line 80 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp27_ = self->flagged; #line 80 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _vala_assert (_tmp27_ > 0, "flagged > 0"); #line 81 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp28_ = self->flagged; #line 81 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->flagged = _tmp28_ - 1; #line 784 "MediaViewTracker.c" } #line 85 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = TRUE; #line 85 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (flaggable); #line 85 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (photo); #line 85 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (source); #line 85 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 796 "MediaViewTracker.c" } static gboolean media_accumulator_real_altered (CoreTrackerAccumulator* base, DataObject* object, Alteration* alteration) { MediaAccumulator * self; gboolean result = FALSE; Flaggable* flaggable = NULL; DataSource* _tmp0_; Flaggable* _tmp1_; Flaggable* _tmp2_; Flaggable* _tmp3_; #line 88 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_MEDIA_ACCUMULATOR, MediaAccumulator); #line 88 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_DATA_OBJECT (object), FALSE); #line 88 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_ALTERATION (alteration), FALSE); #line 91 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (!alteration_has_detail (alteration, "metadata", "flagged")) { #line 92 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = FALSE; #line 92 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 824 "MediaViewTracker.c" } #line 94 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = data_view_get_source (G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_DATA_VIEW, DataView)); #line 94 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, TYPE_FLAGGABLE) ? ((Flaggable*) _tmp0_) : NULL; #line 94 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp1_ == NULL) { #line 94 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (_tmp0_); #line 834 "MediaViewTracker.c" } #line 94 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" flaggable = _tmp1_; #line 95 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = flaggable; #line 95 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (_tmp2_ == NULL) { #line 96 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = FALSE; #line 96 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (flaggable); #line 96 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 848 "MediaViewTracker.c" } #line 98 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp3_ = flaggable; #line 98 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" if (flaggable_is_flagged (_tmp3_)) { #line 854 "MediaViewTracker.c" gint _tmp4_; #line 99 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp4_ = self->flagged; #line 99 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->flagged = _tmp4_ + 1; #line 860 "MediaViewTracker.c" } else { gint _tmp5_; gint _tmp6_; #line 101 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp5_ = self->flagged; #line 101 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _vala_assert (_tmp5_ > 0, "flagged > 0"); #line 102 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp6_ = self->flagged; #line 102 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->flagged = _tmp6_ - 1; #line 872 "MediaViewTracker.c" } #line 105 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = TRUE; #line 105 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _g_object_unref0 (flaggable); #line 105 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 880 "MediaViewTracker.c" } gchar* media_accumulator_to_string (MediaAccumulator* self) { gchar* result = NULL; gint _tmp0_; gint _tmp1_; gint _tmp2_; gint _tmp3_; gchar* _tmp4_; #line 108 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" g_return_val_if_fail (IS_MEDIA_ACCUMULATOR (self), NULL); #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp0_ = self->photos; #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp1_ = self->videos; #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp2_ = self->raw; #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp3_ = self->flagged; #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" _tmp4_ = g_strdup_printf ("%d photos/%d videos/%d raw/%d flagged", _tmp0_, _tmp1_, _tmp2_, _tmp3_); #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" result = _tmp4_; #line 109 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return result; #line 909 "MediaViewTracker.c" } MediaAccumulator* media_accumulator_construct (GType object_type) { MediaAccumulator * self = NULL; #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = (MediaAccumulator*) g_object_new (object_type, NULL); #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return self; #line 921 "MediaViewTracker.c" } MediaAccumulator* media_accumulator_new (void) { #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" return media_accumulator_construct (TYPE_MEDIA_ACCUMULATOR); #line 930 "MediaViewTracker.c" } static void media_accumulator_class_init (MediaAccumulatorClass * klass) { #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" media_accumulator_parent_class = g_type_class_peek_parent (klass); #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" G_OBJECT_CLASS (klass)->finalize = media_accumulator_finalize; #line 941 "MediaViewTracker.c" } static void media_accumulator_core_tracker_accumulator_interface_init (CoreTrackerAccumulatorIface * iface) { #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" media_accumulator_core_tracker_accumulator_parent_iface = g_type_interface_peek_parent (iface); #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" iface->include = (gboolean (*) (CoreTrackerAccumulator *, DataObject*)) media_accumulator_real_include; #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" iface->uninclude = (gboolean (*) (CoreTrackerAccumulator *, DataObject*)) media_accumulator_real_uninclude; #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" iface->altered = (gboolean (*) (CoreTrackerAccumulator *, DataObject*, Alteration*)) media_accumulator_real_altered; #line 956 "MediaViewTracker.c" } static void media_accumulator_instance_init (MediaAccumulator * self) { #line 20 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->total = 0; #line 21 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->photos = 0; #line 22 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->videos = 0; #line 23 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->raw = 0; #line 24 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self->flagged = 0; #line 973 "MediaViewTracker.c" } static void media_accumulator_finalize (GObject * obj) { MediaAccumulator * self; #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_MEDIA_ACCUMULATOR, MediaAccumulator); #line 19 "/home/jens/Source/shotwell/src/MediaViewTracker.vala" G_OBJECT_CLASS (media_accumulator_parent_class)->finalize (obj); #line 985 "MediaViewTracker.c" } GType media_accumulator_get_type (void) { static volatile gsize media_accumulator_type_id__volatile = 0; if (g_once_init_enter (&media_accumulator_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (MediaAccumulatorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) media_accumulator_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MediaAccumulator), 0, (GInstanceInitFunc) media_accumulator_instance_init, NULL }; static const GInterfaceInfo core_tracker_accumulator_info = { (GInterfaceInitFunc) media_accumulator_core_tracker_accumulator_interface_init, (GInterfaceFinalizeFunc) NULL, NULL}; GType media_accumulator_type_id; media_accumulator_type_id = g_type_register_static (G_TYPE_OBJECT, "MediaAccumulator", &g_define_type_info, 0); g_type_add_interface_static (media_accumulator_type_id, CORE_TYPE_TRACKER_ACCUMULATOR, &core_tracker_accumulator_info); g_once_init_leave (&media_accumulator_type_id__volatile, media_accumulator_type_id); } return media_accumulator_type_id__volatile; }