Sophie

Sophie

distrib > Mandriva > 2011.0 > i586 > media > contrib-release-debug > by-pkgid > f53c6fc016b4649afd106d82f7232fba > files > 37

cmmusic-debug-1.5-3mdv2011.0.i586.rpm

/*! @file
********************************************************************************
<PRE>
Module       : CMMusic
file	     : 
function	 : 
author       : fedorawang
ver	         : v1.5
--------------------------------------------------------------------------------
Copyright    : GPL(General Public License)
--------------------------------------------------------------------------------
</PRE>
*******************************************************************************/
#ifndef PLAYERMGR_H_
#define PLAYERMGR_H_

#include "Helper.h"
#include "IManager.h"

#define FIFOMODE (O_CREAT | O_RDWR | O_NONBLOCK)

#define SCRIPT_PATH	"start.sh"
#define ERR_OUTPUT		"Err.log"
#define FIFO_MPLAYER_INPUT	"fifomi"
#define FIFO_MPLAYER_OUTPUT	"fifomo"
#define WRITEMODE	(O_WRONLY | O_NONBLOCK)
#define READMODE	(O_RDONLY )

class CPlayerMgr : public CManager
{
public:
	CPlayerMgr();
	virtual ~CPlayerMgr();
public:
	virtual int OnMsg(const char* lpszMsg, WPARAM wParam, LPARAM lParam);
private:
	static void* MpayerOutputProc(void* pData);
	void MPlayerCommand(const char* lpszStr, ...);
	void ParseOutput(const char* lpszStr);
	bool IsAvalibleKey(int nChar);
private:
	int thr_id;
	pthread_t p_thread;
	bool m_bRun;
	bool m_bMOLock;
};

#endif /*PLAYERMGR_H_*/