unsigned int pid);
/**
+ * @brief Set the string value to the tbm_surface for debugging.
+ * @since_tizen 3.0
+ * @param[in] surface : the tbm_surface_h
+ * @param[in] key : the key for debugging
+ * @param[in] value : the value for debugging
+ */
+int tbm_surface_internal_set_debug_data(tbm_surface_h surface,
+ char *key, char *value);
+
+/**
* @brief Adds a user_data to the tbm surface.
* @since_tizen 3.0
* @param[in] surface : the tbm surface.
/**
* @brief Start the dump debugging.
* @since_tizen 3.0
- * @param[in] path The given dump path
- * @param[in] buffer_size the buffer size of a dump image
- * @param[in] count The dump count number
+ * @param[in] path : the given dump path
+ * @param[in] w : the width of dump image
+ * @param[in] h : the height of dump image
+ * @param[in] count : the dump count number
* @see #tdm_helper_dump_stop()
*/
-void tbm_surface_internal_dump_start(char *path, int buffer_size, int count);
+void tbm_surface_internal_dump_start(char *path, int w, int h, int count);
/**
* @brief End the dump debugging.
* - TBM_FORMAT_UYVY
* The filename extension should be "png" for TBM_FORMAT_ARGB8888 and TBM_FORMAT_XRGB8888
* or "yuv" for YUV formats.
- * @param[in] surface a tbm surface
- * @param[in] type a string used by a file name.
+ * @param[in] surface : a tbm surface
+ * @param[in] type : a string used by a file name
+ */
+void tbm_surface_internal_dump_buffer(tbm_surface_h surface, const char *type);
+
+/**
+ * @brief Dump a shared memory buffer
+ * @details
+ * This function supports shared memory buffer dump.
+ * @param[in] ptr : a pointer of dump buffer
+ * @param[in] w : a width of dump buffer
+ * @param[in] h : a height of dump buffer
+ * @param[in] stride : a stride of dump buffer
+ * @param[in] type : a string used by a file name
*/
-void tbm_internal_surface_dump_buffer(tbm_surface_h surface, const char *type);
+void tbm_surface_internal_dump_shm_buffer(void *ptr, int w, int h, int stride, const char *type);
/**
* @brief check valid tbm surface.