#include "mm_camcorder.h"
#include "mm_debug.h"
+#include "mm_camcorder_resource.h"
/* camcorder sub module */
#include "mm_camcorder_attribute.h"
#define MM_CAMCORDER_STROBE_CONTROL_NUM 3 /**< Number of strobe control type */
#define MM_CAMCORDER_DETECT_MODE_NUM 2 /**< Number of detect mode type */
-
/*=======================================================================================
| ENUM DEFINITIONS |
========================================================================================*/
typedef enum {
_MMCAMCORDER_STATE_CHANGE_NORMAL = 0,
_MMCAMCORDER_STATE_CHANGE_BY_ASM,
+ _MMCAMCORDER_STATE_CHANGE_BY_RM,
} _MMCamcorderStateChange;
pthread_mutex_t astream_cb_lock; /**< Mutex (for audio stream callback) */
} _MMCamcorderMTSafe;
-
/**
* MMCamcorder Sub Context
*/
GList *buffer_probes; /**< a list of buffer probe handle */
GList *event_probes; /**< a list of event probe handle */
GList *signals; /**< a list of signal handle */
+#ifdef _MMCAMCORDER_ENABLE_IDLE_MESSAGE_CALLBACK
GList *msg_data; /**< a list of msg data */
+#endif /* _MMCAMCORDER_ENABLE_IDLE_MESSAGE_CALLBACK */
camera_conf *conf_main; /**< Camera configure Main structure */
camera_conf *conf_ctrl; /**< Camera configure Control structure */
guint pipeline_cb_event_id; /**< Event source ID of pipeline message callback */
int sound_focus_register; /**< Use sound focus internally */
int sound_focus_id; /**< id for sound focus */
int sound_focus_watch_id; /**< id for sound focus watch */
+ int interrupt_code; /**< Interrupt code */
int acquired_focus; /**< Current acquired focus */
int session_type; /**< Session type */
int session_flags; /**< Session flags */
pthread_cond_t task_thread_cond; /**< cond for task thread */
_MMCamcorderTaskThreadState task_thread_state; /**< state of task thread */
+ /* resource manager for H/W resources */
+ MMCamcorderResourceManager resource_manager;
+
int reserved[4]; /**< reserved */
} mmf_camcorder_t;