Kanzi Graphics Engine
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
kzu_resource_base.h File Reference

Resource base definitions. More...

#include "kzu_resource.h"
#include <system/kzs_header.h>

Data Structures

struct  KzuResourceLoaderThreadContext
 Resource loader thread specific data. More...
 
struct  KzuResourceClass
 Defines functions for different resource types. More...
 
struct  KzuResourceDictionary
 Resource dictionary. More...
 
struct  KzuResource
 Represents the base class for all resources. More...
 
struct  KzuResourceReferenceResource
 Reference resource is used to store resource dependencies. More...
 

Typedefs

typedef kzsError(* KzuResourceLoaderLoadFromKZBFunction )(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext, struct KzcInputStream *inputStream, struct KzuBinaryFileInfo *file)
 Function type for loading the resource from KZB. More...
 
typedef kzsError(* KzuResourceLoaderLoadFinishFunction )(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext)
 Function type for finishing the loading of the resource. More...
 
typedef kzsError(* KzuResourceLoaderLoadFunction )(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext, void *loadData)
 Function definition for resource loader load functions. More...
 
typedef kzsError(* KzuResourceLoaderFreeDataFunction )(void *loadData)
 Function definition for resource loader free data functions. More...
 

Enumerations

enum  KzuResourceLoadState { KZU_RESOURCE_LOAD_STATE_INVALID, KZU_RESOURCE_LOAD_STATE_NOT_LOADED, KZU_RESOURCE_LOAD_STATE_LOADING, KZU_RESOURCE_LOAD_STATE_LOADED }
 Resource loading state. More...
 

Functions

kzsError kzuResourceCreateResourceLoader_protected (const struct KzcMemoryManager *memoryManager, KzuResourceLoaderLoadFunction load, KzuResourceLoaderFreeDataFunction freeData, void *loadData, struct KzuResourceLoader **out_resourceLoader)
 Creates a resource loader. More...
 
kzsError kzuResourceCreate_protected (struct KzuResource *resource, const struct KzuResourceClass *resourceClass, struct KzuResourceManager *resourceManager, kzString name, struct KzuResourceLoader *loader)
 Base create function for resources. More...
 
kzsError kzuResourceDestructor_protected (struct KzuResource *resource)
 Base destructor for resources. More...
 
kzsError kzuResourceSetName_protected (struct KzuResource *resource, kzString name)
 Base set name function for resources. More...
 
kzsError kzuResourceStaticDataSet_protected (struct KzuResource *resource)
 Notifies the resource that the data has been set. More...
 
kzsError kzuResourceLoadFromKZB_protected (struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext, struct KzcInputStream *inputStream, struct KzuBinaryFileInfo *file)
 Base function for loading resources from .KZB. More...
 
kzsError kzuResourceFinishLoading_protected (struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext)
 Base function for finishing the loading of resources. More...
 
kzsError kzuResourceUnload_protected (struct KzuResource *resource)
 Base function for unloading resources. More...
 
kzUint kzuResourceGetCPUMemoryUsage_protected (const struct KzuResource *resource)
 Base function for getting memory usage of resources. More...
 

Variables

struct KzuResourceClass KZU_RESOURCE_CLASS
 Base class type for resource. More...
 

Detailed Description

Resource base definitions.

Copyright 2008-2019 by Rightware. All rights reserved.

Typedef Documentation

typedef kzsError(* KzuResourceLoaderLoadFromKZBFunction)(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext, struct KzcInputStream *inputStream, struct KzuBinaryFileInfo *file)

Function type for loading the resource from KZB.

typedef kzsError(* KzuResourceLoaderLoadFinishFunction)(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext)

Function type for finishing the loading of the resource.

typedef kzsError(* KzuResourceLoaderLoadFunction)(struct KzuResource *resource, const struct KzuResourceLoaderThreadContext *threadContext, void *loadData)

Function definition for resource loader load functions.

typedef kzsError(* KzuResourceLoaderFreeDataFunction)(void *loadData)

Function definition for resource loader free data functions.

Enumeration Type Documentation

Resource loading state.

Enumerator
KZU_RESOURCE_LOAD_STATE_INVALID 

A loader for the resource is not available and no data has been provided for the resource to mark it in LOADED state.

KZU_RESOURCE_LOAD_STATE_NOT_LOADED 

The resource has not yet been loaded.

KZU_RESOURCE_LOAD_STATE_LOADING 

The resource is currently loading.

KZU_RESOURCE_LOAD_STATE_LOADED 

The resource has been loaded.

Function Documentation

kzsError kzuResourceCreateResourceLoader_protected ( const struct KzcMemoryManager memoryManager,
KzuResourceLoaderLoadFunction  load,
KzuResourceLoaderFreeDataFunction  freeData,
void loadData,
struct KzuResourceLoader **  out_resourceLoader 
)

Creates a resource loader.

kzsError kzuResourceCreate_protected ( struct KzuResource resource,
const struct KzuResourceClass resourceClass,
struct KzuResourceManager resourceManager,
kzString  name,
struct KzuResourceLoader loader 
)

Base create function for resources.

kzsError kzuResourceDestructor_protected ( struct KzuResource resource)

Base destructor for resources.

kzsError kzuResourceSetName_protected ( struct KzuResource resource,
kzString  name 
)

Base set name function for resources.

kzsError kzuResourceStaticDataSet_protected ( struct KzuResource resource)

Notifies the resource that the data has been set.

This must be called for resources without any resource loader after the data has been assigned.

kzsError kzuResourceLoadFromKZB_protected ( struct KzuResource resource,
const struct KzuResourceLoaderThreadContext threadContext,
struct KzcInputStream inputStream,
struct KzuBinaryFileInfo file 
)

Base function for loading resources from .KZB.

kzsError kzuResourceFinishLoading_protected ( struct KzuResource resource,
const struct KzuResourceLoaderThreadContext threadContext 
)

Base function for finishing the loading of resources.

kzsError kzuResourceUnload_protected ( struct KzuResource resource)

Base function for unloading resources.

kzUint kzuResourceGetCPUMemoryUsage_protected ( const struct KzuResource resource)

Base function for getting memory usage of resources.

Variable Documentation

struct KzuResourceClass KZU_RESOURCE_CLASS

Base class type for resource.