#include "stdafx.h"
#include "Emu/Cell/PPUModule.h"

#include "sceNpCommerce2.h"

logs::channel sceNpCommerce2("sceNpCommerce2");

s32 sceNpCommerce2ExecuteStoreBrowse()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetStoreBrowseUserdata()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2Init()
{
	sceNpCommerce2.warning("sceNpCommerce2Init()");

	return CELL_OK;
}

s32 sceNpCommerce2Term()
{
	sceNpCommerce2.warning("sceNpCommerce2Term()");

	return CELL_OK;
}

s32 sceNpCommerce2CreateCtx()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DestroyCtx()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2EmptyStoreCheckStart()
{
	fmt::throw_exception("Unimplemented" HERE);
}

s32 sceNpCommerce2EmptyStoreCheckAbort()
{
	fmt::throw_exception("Unimplemented" HERE);
}

s32 sceNpCommerce2EmptyStoreCheckFinish()
{
	fmt::throw_exception("Unimplemented" HERE);
}

s32 sceNpCommerce2CreateSessionStart()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2CreateSessionAbort()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2CreateSessionFinish()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetCategoryContentsCreateReq()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetCategoryContentsStart()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetCategoryContentsGetResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2InitGetCategoryContentsResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetCategoryInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetContentInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetCategoryInfoFromContentInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetGameProductInfoFromContentInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DestroyGetCategoryContentsResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoCreateReq()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoStart()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoGetResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2InitGetProductInfoResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetGameProductInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DestroyGetProductInfoResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoListCreateReq()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoListStart()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetProductInfoListGetResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2InitGetProductInfoListResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetGameProductInfoFromGetProductInfoListResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DestroyGetProductInfoListResult()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetContentRatingInfoFromGameProductInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetContentRatingInfoFromCategoryInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetContentRatingDescriptor()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetGameSkuInfoFromGameProductInfo()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetPrice()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoCheckoutStartAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoCheckoutFinishAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoProductBrowseStartAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoProductBrowseFinishAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoDlListStartAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoDlListFinishAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoProductCodeStartAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoProductCodeFinishAsync()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2GetBGDLAvailability()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2SetBGDLAvailability()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2AbortReq()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DestroyReq()
{
	UNIMPLEMENTED_FUNC(sceNpCommerce2);
	return CELL_OK;
}

s32 sceNpCommerce2DoServiceListStartAsync()
{
	fmt::throw_exception("Unimplemented" HERE);
}

s32 sceNpCommerce2DoServiceListFinishAsync()
{
	fmt::throw_exception("Unimplemented" HERE);
}

DECLARE(ppu_module_manager::sceNpCommerce2)("sceNpCommerce2", []()
{
	REG_FUNC(sceNpCommerce2, sceNpCommerce2ExecuteStoreBrowse);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetStoreBrowseUserdata);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2Init);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2Term);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2CreateCtx);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DestroyCtx);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2EmptyStoreCheckStart);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2EmptyStoreCheckAbort);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2EmptyStoreCheckFinish);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2CreateSessionStart);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2CreateSessionAbort);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2CreateSessionFinish);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetCategoryContentsCreateReq);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetCategoryContentsStart);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetCategoryContentsGetResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2InitGetCategoryContentsResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetCategoryInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetContentInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetCategoryInfoFromContentInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetGameProductInfoFromContentInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DestroyGetCategoryContentsResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoCreateReq);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoStart);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoGetResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2InitGetProductInfoResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetGameProductInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DestroyGetProductInfoResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoListCreateReq);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoListStart);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetProductInfoListGetResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2InitGetProductInfoListResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetGameProductInfoFromGetProductInfoListResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DestroyGetProductInfoListResult);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetContentRatingInfoFromGameProductInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetContentRatingInfoFromCategoryInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetContentRatingDescriptor);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetGameSkuInfoFromGameProductInfo);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetPrice);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoCheckoutStartAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoCheckoutFinishAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoProductBrowseStartAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoProductBrowseFinishAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoDlListStartAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoDlListFinishAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoProductCodeStartAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoProductCodeFinishAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2GetBGDLAvailability);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2SetBGDLAvailability);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2AbortReq);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DestroyReq);

	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoServiceListStartAsync);
	REG_FUNC(sceNpCommerce2, sceNpCommerce2DoServiceListFinishAsync);
});
