579 lines
15 KiB
C++
579 lines
15 KiB
C++
/*
|
||
状態管理クラスクラス
|
||
(NP2) Sachiko Yasukawa
|
||
*/
|
||
#include "stdafx.h"
|
||
|
||
#include "includes.h"
|
||
#include "classlib.h"
|
||
|
||
void CMPEGBoardState::SetState(LIBSTATE State)
|
||
{
|
||
m_State = State;
|
||
switch(m_State){
|
||
case PowerOff:
|
||
m_pStateObject = &m_PowerOffState;
|
||
DBG_PRINTF(("CLASSLIB: STATE = POWEROFF\n"));
|
||
#ifdef TEST
|
||
TRACE("STATE = POWEROFF\n");
|
||
#endif
|
||
break;
|
||
case Stop:
|
||
m_pStateObject = &m_StopState;
|
||
#ifdef TEST
|
||
TRACE("STATE = STOP\n");
|
||
#endif
|
||
DBG_PRINTF(("CLASSLIB: STATE = STOP\n"));
|
||
break;
|
||
case Pause:
|
||
m_pStateObject = &m_PauseState;
|
||
#ifdef TEST
|
||
TRACE("STATE = PAUSE\n");
|
||
#endif
|
||
DBG_PRINTF(("CLASSLIB: STATE = PAUSE\n"));
|
||
break;
|
||
case Play:
|
||
m_pStateObject = &m_PlayState;
|
||
#ifdef TEST
|
||
TRACE("STATE = PLAY\n");
|
||
#endif
|
||
DBG_PRINTF(("CLASSLIB: STATE = PLAY\n"));
|
||
break;
|
||
case Slow:
|
||
m_pStateObject = &m_SlowState;
|
||
#ifdef TEST
|
||
TRACE("STATE = SLOW\n");
|
||
#endif
|
||
DBG_PRINTF(("CLASSLIB: STATE = SLOW\n"));
|
||
break;
|
||
default:
|
||
m_pStateObject = &m_ScanState;
|
||
#ifdef TEST
|
||
TRACE("STATE = SCAN\n");
|
||
#endif
|
||
DBG_PRINTF(("CLASSLIB: STATE = SCAN\n"));
|
||
break;
|
||
}
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pCHAL->SetPowerState(POWERSTATE_ON)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE POWERON\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangeStpe:HAL CAN'T CHANGE POWERON\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
if((st = pSHAL->SetPlayStop()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE STOP\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangeState:HAL CAN'T CHANGE STOP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Stop);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO PAUSE\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangeState:CAN'T CHANGE FROM POWERSTATE TO PAUSE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
BOOL CPowerOffState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangePlay:CAN'T CHANGE FROM POWERSTATE TO PLAY\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO PAUSEVIASINGLESTEPE\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangePauseViaSingleStep:CAN'T CHANGE FROM POWERSTATE TO PAUSEVIASINGLESTEPE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO SLOW\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangeSlow:CAN'T CHANGE FROM POWERSTATE TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPowerOffState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CPowerOffState::ChangeScan:CAN'T CHANGE FROM POWERSTATE TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CStopState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
BOOL st;
|
||
|
||
if((st = pCHAL->SetPowerState(POWERSTATE_OFF)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE POWEROFF\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangePowerOff:HAL CAN'T CHANGE POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(PowerOff);
|
||
|
||
return TRUE;
|
||
|
||
}
|
||
|
||
BOOL CStopState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CStopState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
BOOL st;
|
||
|
||
if((st = pSHAL->SetPlayPause()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PAUSE\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangePause:HAL CAN'T CHANGE PAUSE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Pause);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CStopState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM STOP TO PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangePlay:CAN'T CHANGE FROM STOP TO PLAY\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CStopState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM STOP TO PAUSEVIASINGLESTEP\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangePauseViaSingleStep:CAN'T CHANGE FROM STOP TO PAUSEVIASINGLESTEP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CStopState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM STOP TO SLOW\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangeSlow:CAN'T CHANGE FROM STOP TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CStopState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM POWERSTATE TO SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CStopState::ChangeScan:CAN'T CHANGE FROM STOP TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM PAUSE TO POWEROFF\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangePowerOff:CAN'T CHANGE FROM PAUSE TO POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayStop()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE STOP\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangeStop:HAL CAN'T CHANGE FROM PAUSE TO STOP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Stop);
|
||
|
||
pStream->FlushTransferBuffer();
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
|
||
BOOL CPauseState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayNormal()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangePlay:HAL CAN'T CHANGE FROM PAUSE TO PLAY\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Play);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlaySingleStep()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PAUSEVIASINGLESTEP\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangePauseViaSingleStep:HAL CAN'T CHANGE FROM PAUSE TO SINGLESTEPn"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlaySlow(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SLOW\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangeSlow:CAN'T CHANGE FROM PAUSE TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Slow);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPauseState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayScan(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CPauseState::ChangeScan:HAL CAN'T CHANGE FROM PAUSE TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Scan);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM PLAY TO POWEROFF\n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangePowerOff:CAN'T CHANGE FROM PLAY TO POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayStop()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangeStop:HAL CAN'T CHANGE FROM PLAY TO STOP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Stop);
|
||
|
||
pStream->FlushTransferBuffer();
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
|
||
BOOL CPlayState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayPause()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PAUSE\n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangePause:HAL CAN'T CHANGE FROM PLAY TO PAUSE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Pause);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
//本当は遷移できない?
|
||
|
||
if((st = pSHAL->SetPlaySingleStep()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE FROM PAUSE TO \n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangePowerOff:HAL CAN'T CHANGE FROM PLAY TO POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Pause);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlaySlow(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SLOW\n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangeSlow:HAL CAN'T CHANGE FROM PLAY TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Slow);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CPlayState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayScan(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CPlayState::ChangeScan:HAL CAN'T CHANGE FROM PLAY TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Scan);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM SLOW TO POWEROFF\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangePowerOff:CAN'T CHANGE FROM STLOW TO POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayStop()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE STOP\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangeStop:HAL CAN'T CHANGE FROM STLOW TO STOP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Stop);
|
||
|
||
pStream->FlushTransferBuffer();
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
|
||
BOOL CSlowState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayPause()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PAUSE\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangePause:HAL CAN'T CHANGE FROM STLOW TO PAUSE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Pause);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayNormal()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangePlay:HAL CAN'T CHANGE FROM STLOW TO PLAY\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Play);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM SLOW TO PAUSEVIASINGLESTEP\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangePauseViaSingleStep:CAN'T CHANGE FROM STLOW TO SINGLESTEP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlaySlow(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SLOW\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangeSlow:HAL CAN'T CHANGE FROM STLOW TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CSlowState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayScan(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CSlowState::ChangeScan:HAL CAN'T CHANGE FROM STLOW TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Scan);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CScanState::ChangePowerOff(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM SCAN TO POWEROFF\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangePowerOff:CAN'T CHANGE FROM SCAN TO POWEROFF\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CScanState::ChangeStop(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL,CBaseStream *pStream)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayStop()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE STOP \n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangeStop:HAL CAN'T CHANGE FROM SCAN TO STOP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Stop);
|
||
|
||
pStream->FlushTransferBuffer();
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
|
||
BOOL CScanState::ChangePause(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayPause()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PAUSE\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangePause:HAL CAN'T CHANGE FROM SCAN TO PAUSE\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Pause);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CScanState::ChangePlay(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayNormal()) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE PLAY\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangePlay:HAL CAN'T CHANGE FROM SCAN TO PLAY\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Play);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CScanState::ChangePauseViaSingleStep(IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
_RPTF0(_CRT_WARN, "CAN'T CHANGE FROM SCAN TO PAUSEVIASINGLESTEP\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangePauseVidaSingleStep:CAN'T CHANGE FROM SCAN TO SINGLESTEP\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
BOOL CScanState::ChangeSlow(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayScan(Slow)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangeSlow:HAL CAN'T CHANGE FROM SCAN TO SLOW\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
((CMPEGBoardState *)m_pMPEGBoardState)->SetState(Slow);
|
||
|
||
return TRUE;
|
||
}
|
||
|
||
BOOL CScanState::ChangeScan(DWORD Speed, IClassLibHAL *pCHAL, IHALStreamControl *pSHAL)
|
||
{
|
||
HALRESULT st;
|
||
|
||
if((st = pSHAL->SetPlayScan(Speed)) != HAL_SUCCESS){
|
||
_RPTF0(_CRT_WARN, "HAL CAN'T CHANGE SCAN\n");
|
||
DBG_PRINTF(("CLASSLIB:CScanState::ChangeScan:HAL CAN'T CHANGE FROM SCAN TO SCAN\n"));
|
||
DBG_BREAK();
|
||
return FALSE;
|
||
}
|
||
|
||
return TRUE;
|
||
}
|