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

Prefab objects. More...

Enumerations

enum  KzuPrefabTemplateType { KZU_PREFAB_TEMPLATE_TYPE_OBJECT, KZU_PREFAB_TEMPLATE_TYPE_LAYER }
 Type of prefab template. More...
 

Functions

kzsError kzuPrefabTemplateNodeCreateBasic (const struct KzcMemoryManager *memoryManager, struct KzuUIDomain *uiDomain, kzString name, struct KzuObjectNode *referenceObjectNode, struct KzuPrefabTemplateNode **out_prefabTemplateNode)
 Creates a prefab template node for basic object types such as Mesh, Light, Instantiator etc. More...
 
kzsError kzuPrefabTemplateNodeCreateTyped (const struct KzcMemoryManager *memoryManager, struct KzuUIDomain *uiDomain, kzString name, struct KzuObjectNode *referenceObjectNode, KzuObjectType typeIdentifier, struct KzuPrefabTemplateNode **out_prefabTemplateNode)
 Creates a prefab template with type identifier. More...
 
kzsError kzuPrefabTemplateNodeCreatePlaceholder (const struct KzcMemoryManager *memoryManager, struct KzuUIDomain *uiDomain, kzString name, struct KzuObjectNode *referenceObjectNode, struct KzuPrefabTemplate *prefabTemplate, struct KzuPrefabTemplateNode **out_prefabTemplateNode)
 Creates a prefab template node representing a prefab placeholder. More...
 
kzsError kzuPrefabTemplateNodeDelete (struct KzuPrefabTemplateNode *prefabTemplateNode)
 Deletes a prefab template node. More...
 
kzsException kzuPrefabTemplateNodeLoadChildrenFromKZB (const struct KzuPrefabTemplateNode *prefabTemplateNode, struct KzcInputStream *inputStream, const struct KzuBinaryFileInfo *file)
 Loads the children of a prefab template node. More...
 
kzsError kzuPrefabTemplateNodeAddChild (const struct KzuPrefabTemplateNode *prefabTemplateNode, const struct KzuPrefabTemplateNode *child)
 Add a child to template node. More...
 
struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetChildren (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Get the iterator for node template children. More...
 
struct KzuObjectNodekzuPrefabTemplateNodeGetReferenceNode (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Get the reference node from a node template. More...
 
KzuObjectType kzuPrefabTemplateNodeGetObjectType (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Get the type of the node a node template creates. More...
 
kzsError kzuPrefabTemplateNodeInstantiate (const struct KzuPrefabTemplateNode *prefabTemplateNode, struct KzuObjectNode **out_objectNode)
 Instantiates a template node. More...
 
kzsError kzuPrefabTemplateNodeInstanceDeleted (const struct KzuPrefabTemplateNode *prefabTemplateNode, const struct KzuObjectNode *objectNode)
 Notifies the prefab template node that an instance of it is deleted. More...
 
kzsError kzuPrefabTemplateNodeDeleteInstances (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Deletes all instances created from the given prefab template node. More...
 
struct KzuResourcekzuPrefabTemplateNodeToResource (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Converts prefab template node to resource. More...
 
struct KzuPrefabTemplateNodekzuPrefabTemplateNodeFromResource (const struct KzuResource *resource)
 Converts prefab template node from resource. More...
 
struct KzuPrefabTemplateNodekzuPrefabTemplateNodeCastFromResource (const struct KzuResource *resource)
 Casts prefab template node from resource, KZ_NULL if invalid type. More...
 
kzsError kzuPrefabTemplateCreate (const struct KzcMemoryManager *memoryManager, struct KzuUIDomain *uiDomain, kzString name, struct KzuPrefabTemplate **out_prefabTemplate)
 Creates a prefab template. More...
 
kzsError kzuPrefabTemplateDelete (struct KzuPrefabTemplate *prefabTemplate)
 Deletes a prefab template. More...
 
struct KzuPrefabTemplateNodekzuPrefabTemplateGetRoot (const struct KzuPrefabTemplate *prefabTemplate)
 Gets the root template node of a prefab. More...
 
struct KzuTimeLineSequencekzuPrefabTemplateGetStartupSequence (const struct KzuPrefabTemplate *prefabTemplate)
 Get the timeline sequence that is started when a prefab is instantiated. More...
 
kzsError kzuPrefabTemplateSetStartupSequence (struct KzuPrefabTemplate *prefabTemplate, struct KzuTimeLineSequence *startupSequence)
 Set the timeline sequence that is started when a prefab is instantiated. More...
 
kzsError kzuPrefabTemplateNodeUpdateInstances (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Update all existing instances of the prefab template node with updated data. More...
 
struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetInstances (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Gets the list of all object node instances created from the prefab template node. More...
 
struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetPlaceholders (const struct KzuPrefabTemplateNode *prefabTemplateNode)
 Gets the list of all placeholders created to point to the prefab template that owns this prefab template node. More...
 
kzsError kzuPrefabTemplateInstantiate (const struct KzuPrefabTemplate *prefabTemplate, kzString rootName, struct KzuObjectNode **out_objectNode)
 Instantiates a prefab template. More...
 
kzsError kzuPrefabTemplateLoadFromKZB (struct KzuPrefabTemplate *prefabTemplate, struct KzcInputStream *inputStream, const struct KzuBinaryFileInfo *file)
 Loads prefab from KZB. More...
 
kzsError kzuPrefabTemplateInitializeInstance (const struct KzuPrefabTemplate *prefabTemplate, struct KzuObjectNode *objectNode)
 Initialized a prefab instance. More...
 
struct KzuResourcekzuPrefabTemplateToResource (const struct KzuPrefabTemplate *prefabTemplate)
 Converts prefab template to resource. More...
 
struct KzuPrefabTemplatekzuPrefabTemplateFromResource (const struct KzuResource *resource)
 Converts prefab template from resource. More...
 
struct KzuPrefabTemplatekzuPrefabTemplateCastFromResource (const struct KzuResource *resource)
 Casts prefab from resource, KZ_NULL if invalid type. More...
 
void kzuPrefabTemplateSetUIDomain (struct KzuPrefabTemplate *prefabTemplate, struct KzuUIDomain *uiDomain)
 Sets ui domain to prefab template. More...
 
void kzuPrefabTemplateNodeSetUIDomain (struct KzuPrefabTemplateNode *prefabTemplate, struct KzuUIDomain *uiDomain)
 Sets ui domain to prefab template node. More...
 

Variables

const KzuResourceType KZU_RESOURCE_TYPE_PREFAB_TEMPLATE
 Resource type identifier for prefab template. More...
 
const KzuResourceType KZU_RESOURCE_TYPE_PREFAB_TEMPLATE_NODE
 Resource type identifier for prefab template node. More...
 

Detailed Description

Prefab objects.

Copyright 2008-2019 by Rightware. All rights reserved.

Enumeration Type Documentation

Type of prefab template.

Enumerator
KZU_PREFAB_TEMPLATE_TYPE_OBJECT 
KZU_PREFAB_TEMPLATE_TYPE_LAYER 

Function Documentation

kzsError kzuPrefabTemplateNodeCreateBasic ( const struct KzcMemoryManager memoryManager,
struct KzuUIDomain uiDomain,
kzString  name,
struct KzuObjectNode referenceObjectNode,
struct KzuPrefabTemplateNode **  out_prefabTemplateNode 
)

Creates a prefab template node for basic object types such as Mesh, Light, Instantiator etc.

kzsError kzuPrefabTemplateNodeCreateTyped ( const struct KzcMemoryManager memoryManager,
struct KzuUIDomain uiDomain,
kzString  name,
struct KzuObjectNode referenceObjectNode,
KzuObjectType  typeIdentifier,
struct KzuPrefabTemplateNode **  out_prefabTemplateNode 
)

Creates a prefab template with type identifier.

This is used for UI components and Layers.

kzsError kzuPrefabTemplateNodeCreatePlaceholder ( const struct KzcMemoryManager memoryManager,
struct KzuUIDomain uiDomain,
kzString  name,
struct KzuObjectNode referenceObjectNode,
struct KzuPrefabTemplate prefabTemplate,
struct KzuPrefabTemplateNode **  out_prefabTemplateNode 
)

Creates a prefab template node representing a prefab placeholder.

kzsError kzuPrefabTemplateNodeDelete ( struct KzuPrefabTemplateNode prefabTemplateNode)

Deletes a prefab template node.

kzsException kzuPrefabTemplateNodeLoadChildrenFromKZB ( const struct KzuPrefabTemplateNode prefabTemplateNode,
struct KzcInputStream inputStream,
const struct KzuBinaryFileInfo file 
)

Loads the children of a prefab template node.

kzsError kzuPrefabTemplateNodeAddChild ( const struct KzuPrefabTemplateNode prefabTemplateNode,
const struct KzuPrefabTemplateNode child 
)

Add a child to template node.

struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetChildren ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Get the iterator for node template children.

struct KzuObjectNode* kzuPrefabTemplateNodeGetReferenceNode ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Get the reference node from a node template.

This node stores all properties, bindings and triggers that are copied to instances.

KzuObjectType kzuPrefabTemplateNodeGetObjectType ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Get the type of the node a node template creates.

kzsError kzuPrefabTemplateNodeInstantiate ( const struct KzuPrefabTemplateNode prefabTemplateNode,
struct KzuObjectNode **  out_objectNode 
)

Instantiates a template node.

This function is for internal use.

kzsError kzuPrefabTemplateNodeInstanceDeleted ( const struct KzuPrefabTemplateNode prefabTemplateNode,
const struct KzuObjectNode objectNode 
)

Notifies the prefab template node that an instance of it is deleted.

kzsError kzuPrefabTemplateNodeDeleteInstances ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Deletes all instances created from the given prefab template node.

struct KzuResource* kzuPrefabTemplateNodeToResource ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Converts prefab template node to resource.

struct KzuPrefabTemplateNode* kzuPrefabTemplateNodeFromResource ( const struct KzuResource resource)

Converts prefab template node from resource.

struct KzuPrefabTemplateNode* kzuPrefabTemplateNodeCastFromResource ( const struct KzuResource resource)

Casts prefab template node from resource, KZ_NULL if invalid type.

kzsError kzuPrefabTemplateCreate ( const struct KzcMemoryManager memoryManager,
struct KzuUIDomain uiDomain,
kzString  name,
struct KzuPrefabTemplate **  out_prefabTemplate 
)

Creates a prefab template.

kzsError kzuPrefabTemplateDelete ( struct KzuPrefabTemplate prefabTemplate)

Deletes a prefab template.

struct KzuPrefabTemplateNode* kzuPrefabTemplateGetRoot ( const struct KzuPrefabTemplate prefabTemplate)

Gets the root template node of a prefab.

struct KzuTimeLineSequence* kzuPrefabTemplateGetStartupSequence ( const struct KzuPrefabTemplate prefabTemplate)

Get the timeline sequence that is started when a prefab is instantiated.

kzsError kzuPrefabTemplateSetStartupSequence ( struct KzuPrefabTemplate prefabTemplate,
struct KzuTimeLineSequence startupSequence 
)

Set the timeline sequence that is started when a prefab is instantiated.

kzsError kzuPrefabTemplateNodeUpdateInstances ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Update all existing instances of the prefab template node with updated data.

struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetInstances ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Gets the list of all object node instances created from the prefab template node.

struct KzcDynamicArrayIterator kzuPrefabTemplateNodeGetPlaceholders ( const struct KzuPrefabTemplateNode prefabTemplateNode)

Gets the list of all placeholders created to point to the prefab template that owns this prefab template node.

kzsError kzuPrefabTemplateInstantiate ( const struct KzuPrefabTemplate prefabTemplate,
kzString  rootName,
struct KzuObjectNode **  out_objectNode 
)

Instantiates a prefab template.

kzsError kzuPrefabTemplateLoadFromKZB ( struct KzuPrefabTemplate prefabTemplate,
struct KzcInputStream inputStream,
const struct KzuBinaryFileInfo file 
)

Loads prefab from KZB.

kzsError kzuPrefabTemplateInitializeInstance ( const struct KzuPrefabTemplate prefabTemplate,
struct KzuObjectNode objectNode 
)

Initialized a prefab instance.

This function is for internal use.

struct KzuResource* kzuPrefabTemplateToResource ( const struct KzuPrefabTemplate prefabTemplate)

Converts prefab template to resource.

struct KzuPrefabTemplate* kzuPrefabTemplateFromResource ( const struct KzuResource resource)

Converts prefab template from resource.

struct KzuPrefabTemplate* kzuPrefabTemplateCastFromResource ( const struct KzuResource resource)

Casts prefab from resource, KZ_NULL if invalid type.

void kzuPrefabTemplateSetUIDomain ( struct KzuPrefabTemplate prefabTemplate,
struct KzuUIDomain uiDomain 
)

Sets ui domain to prefab template.

void kzuPrefabTemplateNodeSetUIDomain ( struct KzuPrefabTemplateNode prefabTemplate,
struct KzuUIDomain uiDomain 
)

Sets ui domain to prefab template node.

Variable Documentation

const KzuResourceType KZU_RESOURCE_TYPE_PREFAB_TEMPLATE

Resource type identifier for prefab template.

const KzuResourceType KZU_RESOURCE_TYPE_PREFAB_TEMPLATE_NODE

Resource type identifier for prefab template node.