Added missing JSONLoader.{h,c}

Signed-off-by: Robear Selwans <robear.selwans@outlook.com>
This commit is contained in:
2021-06-02 08:00:52 +02:00
parent 0b6cdc3048
commit c267a04de4
2 changed files with 49 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
#include <evjson.h>
#define TYPE_MODULE evmod_assets
#include <evol/meta/type_import.h>
#include <evol/common/ev_log.h>
#include "../LoaderCommon.h"
#include "JSONLoader.h"
JSONAsset
ev_jsonloader_loadasset(
AssetHandle handle)
{
const Asset *asset = ev_asset_getfromhandle(handle);
JSONAsset inter = (JSONAsset) {
.json_data = evjs_init(),
};
evjs_loadjson(inter.json_data, asset->data);
ev_asset_markas(handle, LoaderData.assetType, &inter);
return inter;
}
void
ev_jsonloader_jsonasset_destr(
JSONAsset json)
{
evjs_fini(json.json_data);
}
void
ev_jsonloader_setassettype(
GenericHandle type)
{
LoaderData.assetType = type;
}

View File

@@ -0,0 +1,13 @@
#pragma once
JSONAsset
ev_jsonloader_loadasset(
AssetHandle handle);
void
ev_jsonloader_jsonasset_destr(
JSONAsset json);
void
ev_jsonloader_setassettype(
GenericHandle type);