#ifndef __MpaCompo_2_h
#define __MpaCompo_2_h

/*************************************************************************
 * <_xZkqqHx_iDhEiDeAiDeDiDiL_xHqqkZx_>	MpaCompo_2.h
 *
 * <_xZkqqHx_iLeAjEfM_xHqqkZx_>	_xZkqqHx_iDfCiDjDiDhMiBfLiDgMiDjDiDgH_xHqqkZx_2_xZkqqHx_iCmMiDhHiDgCiDfPiBeC_xHqqkZx_
 *
 * <_xZkqqHx_jHjKjHpA_xHqqkZx_>	05.06.17 Fukushiro M. _xZkqqHx_iNoMjAkM_xHqqkZx_
 *************************************************************************/

/////////////////////////////////////////////////////////////////////////////////

class CA2 : public IMpgInterface
{
public:
	//----- Interface IPgInfo -----
	virtual const GUID&		GetComponentCLSID () const;

	//----- Interface IMpgPlugInFileConv -----
	virtual HRESULT GetFileConvInfo (const FCFileConvInfo** pConvInfo, long* lConvInfoSize);
	virtual HRESULT LoadConverter ();
	virtual HRESULT FreeConverter ();
	virtual HRESULT AnalyzeVersion (WString& wstrVersion, const wchar_t* wcpFilePath);
	virtual void DoConvert (const wchar_t* wcpTypeFrom,
							const wchar_t* wcpVersionFrom,
							void* pStorageFrom,
							const wchar_t* wcpTypeTo,
							const wchar_t* wcpVersionTo,
							void* pStorageTo,
							const BYTE* pImageData,
							long lImageSize,
							const MfcSize& szImage);

	CA2 ();
	virtual ~CA2 ();

protected:
	HINSTANCE	m_hConvModule;
}; // class CA2.

// _xZkqqHx_iDfCiDjDiDhMiBfLiDgMiDjDiDgHjCoIiLgAiBeCjFeLjAhLiBeC_xHqqkZx_
#define COMPONENT_CLASS_CA2	CA2

#endif//__MpaCompo_2_h
