#ifndef LoadSound_h
#define LoadSound_h

/*!	
	@file
	@brief	ミュージック読み込み
*/

#include"../../Setup/CompileMode.h"
#include"../CStorageFunction.h"

#include"../../Auxiliary/mstring.h"
#include"SoundFileLoader/CSoundDecoder.h"

#include<boost/smart_ptr.hpp>

namespace Maid
{
	class LoadSoundStaticReturn : public StorageFunction::IReturnParam
	{
	public:
		boost::shared_ptr<MySTL::vector<unt08> >	pData;	//	PCMデータ
		int Channels;
		int SamplesPerSec;
		int BitsPerSample;
	};

	SPSTORAGEFUNCTION_RETURNPARAM LoadSoundStatic( const mstring& FileName, const SPSTORAGEFUNCTION_FUNCTIONPARAM& pParam );


	class LoadSoundStreamReturn : public StorageFunction::IReturnParam
	{
	public:
		SPSOUNDDECODER	pDecoder;
	};

	SPSTORAGEFUNCTION_RETURNPARAM LoadSoundStream( const mstring& FileName, const SPSTORAGEFUNCTION_FUNCTIONPARAM& pParam );
}

#endif
