Release version 0.10.14
[platform/core/multimedia/libmm-camcorder.git] / src / include / mm_camcorder_util.h
index 7a33691..62a5821 100644 (file)
@@ -112,7 +112,32 @@ do { \
 #define MMCAMCORDER_G_OBJECT_SET(obj, name, value) \
 do { \
        if (obj) { \
-               if(g_object_class_find_property(G_OBJECT_GET_CLASS(G_OBJECT(obj)), name)) { \
+               GParamSpec *spec = g_object_class_find_property(G_OBJECT_GET_CLASS(G_OBJECT(obj)), name);\
+               if(spec) { \
+                       if (spec->value_type == G_TYPE_INT64) {\
+                               g_object_set(G_OBJECT(obj), name, (gint64)value, NULL); \
+                       } else if (spec->value_type == G_TYPE_UINT64) { \
+                               g_object_set(G_OBJECT(obj), name, (guint64)value, NULL); \
+                       } else if (spec->value_type == G_TYPE_FLOAT) { \
+                               g_object_set(G_OBJECT(obj), name, (float)value, NULL); \
+                       } else if (spec->value_type == G_TYPE_DOUBLE) { \
+                               g_object_set(G_OBJECT(obj), name, (double)value, NULL); \
+                       } else { \
+                               g_object_set(G_OBJECT(obj), name, value, NULL); \
+                       } \
+               } else { \
+                       _mmcam_dbg_warn ("The object doesn't have a property named(%s)", name); \
+               } \
+       } else { \
+               _mmcam_dbg_err("Null object"); \
+       } \
+} while(0);
+
+#define MMCAMCORDER_G_OBJECT_SET_POINTER(obj, name, value) \
+do { \
+       if (obj) { \
+               GParamSpec *spec = g_object_class_find_property(G_OBJECT_GET_CLASS(G_OBJECT(obj)), name);\
+               if(spec) { \
                        g_object_set(G_OBJECT(obj), name, value, NULL); \
                } else { \
                        _mmcam_dbg_warn ("The object doesn't have a property named(%s)", name); \
@@ -135,7 +160,7 @@ do { \
        msg.id = msg_id;\
        msg.param.code = msg_code;\
        _mmcam_dbg_log("msg id : %x, code : %x", msg_id, msg_code);\
-       _mmcamcroder_send_message((MMHandleType)handle, &msg);\
+       _mmcamcorder_send_message((MMHandleType)handle, &msg);\
 }
 
 
@@ -206,11 +231,12 @@ void _mmcamcorder_remove_all_handlers(MMHandleType handle, _MMCamcorderHandlerCa
 void _mmcamcorder_element_release_noti(gpointer data, GObject *where_the_object_was);
 gboolean _mmcamcorder_add_elements_to_bin(GstBin *bin, GList *element_list);
 gboolean _mmcamcorder_link_elements(GList *element_list);
+gboolean _mmcamcorder_filtered_link_elements(GList *element_list, GstCaps *caps);
 
 /* Message */
-gboolean _mmcamcroder_msg_callback(void *data);
-gboolean _mmcamcroder_send_message(MMHandleType handle, _MMCamcorderMsgItem *data);
-void _mmcamcroder_remove_message_all(MMHandleType handle);
+gboolean _mmcamcorder_msg_callback(void *data);
+gboolean _mmcamcorder_send_message(MMHandleType handle, _MMCamcorderMsgItem *data);
+void _mmcamcorder_remove_message_all(MMHandleType handle);
 
 /* Pixel format */
 int _mmcamcorder_get_pixel_format(GstCaps *pad);
@@ -238,14 +264,13 @@ gboolean _mmcamcorder_write_loci(FILE *f, _MMCamcorderLocationInfo info);
 gboolean _mmcamcorder_write_geodata(FILE *f,_MMCamcorderLocationInfo info);
 gboolean _mmcamcorder_write_udta(FILE *f, int gps_enable, _MMCamcorderLocationInfo info, _MMCamcorderLocationInfo geotag);
 guint64 _mmcamcorder_get_container_size(const guchar *size);
+guint64 _mmcamcorder_get_container_size64(const guchar *size);
 gboolean _mmcamcorder_update_composition_matrix(FILE *f, int orientation);
 
 /* File system */
-int _mmcamcorder_get_freespace(const gchar *path, guint64 *free_space);
-int _mmcamcorder_get_freespace_except_system(guint64 *free_space);
+int _mmcamcorder_get_freespace(const gchar *path, const gchar *root_directory, guint64 *free_space);
 int _mmcamcorder_get_file_size(const char *filename, guint64 *size);
 int _mmcamcorder_get_file_system_type(const gchar *path, int *file_system_type);
-gboolean _mmcamcorder_check_file_path(const gchar *path);
 
 /* Task */
 void *_mmcamcorder_util_task_thread_func(void *data);