#ifndef __HiTerminateTable_h
#define __HiTerminateTable_h

#include "HiTableBase.h"	// For Baseclass.

#ifdef SUPER_CLASS
#undef SUPER_CLASS
#endif
#define SUPER_CLASS FCHiTableBase

class FCHiProject;
class FCDbGroup;

/*************************************************************************
 * <_xZkqqHx_iDeOiDiJiDfI_xHqqkZx_>	FCHiTerminateTable
 *
 * <_xZkqqHx_iLeAjEfM_xHqqkZx_>	_xZkqqHx_jHjKjHpAiDhEiDeAiDeDiDiLiCmMiPeJjCfLiImKjChFiCpAiLeMjIfOiClHiCoJiBeC_xHqqkZx_
 *
 * <_xZkqqHx_jHjKjHpA_xHqqkZx_>	02.03.31 Fukushiro M. _xZkqqHx_iNoMjAkM_xHqqkZx_
 *************************************************************************/
class FCHiTerminateTable : public SUPER_CLASS
{
protected:
typedef SUPER_CLASS BASE_CLASS;

public:
	FCHiTerminateTable ();
	FCHiTerminateTable (const FCDbGroup& dbGroup);
	virtual ~FCHiTerminateTable ();
	virtual void	operator = (const FCDbGroup& dbGroup);
	virtual BOOL	UpdateData (const FCDbReadLock& autoLockRead);
	virtual void	Clear ();

// 06.02.07 Fukushiro M. 1_xZkqqHx_iNhDiNoNiPjM_xHqqkZx_ ()
//	virtual void	Close ();
// 06.02.07 Fukushiro M. 1_xZkqqHx_iNhDiNoNiPjM_xHqqkZx_ ()
//	virtual void	ReOpen ();
	virtual BOOL	IsOpened () const;

	//----- _xZkqqHx_iDeDiDjDiDgGiDgCiDeOiDfIiLeMjIfO_xHqqkZx_ -----
	virtual void	UpdateEndSessionIndex (	flint fliSessionIdx,
											const BYTE* pStream,
											DWORD dwStreamSize);
	virtual flint	SeeEndSessionIndex ();
	virtual flint	SeeLastFlushedEndSessionIndex ();
	virtual flint	SeeEndSessionIndexAbout ();
	virtual BOOL	IsThereEndSessionSpot ();
	virtual FC2Fold<BYTE*, DWORD>	SeeEndSessionSpotStream ();

protected:
	flint	m_fliEndSessionIndexAbout;
}; // class FCHiTerminateTable.

#endif//__HiTerminateTable_h
