5typedef void ResourceLoadCallback(BridgeContext* ctx,
int resourceType, ResourceId resourceId,
int code);
6typedef void HierarchyChangeCallback(BridgeContext* ctx, EntityId entityId);
7typedef void ReadbackCallback(BridgeContext* ctx,
const char* key,
const void* data,
int size);
9COGSCORE_BRIDGE
void setResourceLoadCallback(BridgeContext * ctx, ResourceLoadCallback * callback);
10COGSCORE_BRIDGE
void setHierarchyChangeCallback(BridgeContext * ctx, HierarchyChangeCallback * callback);
11COGSCORE_BRIDGE
void setReadbackCallback(BridgeContext * ctx, ReadbackCallback * callback);
19COGSCORE_BRIDGE ResourceId findResource(BridgeContext* ctx,
int resourceType,
const char* resourceName);
24COGSCORE_BRIDGE ResourceId getNextBufferId(BridgeContext * ctx);
27COGSCORE_BRIDGE
void loadBuffer(BridgeContext * ctx,
int size,
const unsigned char * data, ResourceId resourceId,
int resourceLoadFlags);
28COGSCORE_BRIDGE
void resizeBuffer(BridgeContext * ctx,
const ResourceId resourceId,
int size);
31COGSCORE_BRIDGE
void * mapBuffer(BridgeContext * ctx,
const ResourceId resourceId,
int flags);
32COGSCORE_BRIDGE
void unmapBuffer(BridgeContext * ctx,
const ResourceId resourceId);
33COGSCORE_BRIDGE
void updateBufferRange(BridgeContext * ctx,
const ResourceId resourceId,
int offset,
int size,
const unsigned char * data);
34COGSCORE_BRIDGE
void invalidateBufferRange(BridgeContext * ctx,
const ResourceId resourceId,
int offset,
int size);
37COGSCORE_BRIDGE
void setBufferField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
40COGSCORE_BRIDGE
void releaseBuffer(BridgeContext* ctx, ResourceId resourceId);
44COGSCORE_BRIDGE ResourceId loadMesh(BridgeContext * ctx);
47COGSCORE_BRIDGE
void setMeshField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
54COGSCORE_BRIDGE
void setMeshData(BridgeContext * ctx, ResourceId resourceId,
int stream,
const void * data,
int count);
55COGSCORE_BRIDGE
const void * getMeshData(BridgeContext * ctx, ResourceId resourceId,
int stream,
int * count);
56COGSCORE_BRIDGE
void * mapMeshData(BridgeContext * ctx, ResourceId resourceId,
int stream,
int start,
int count);
57COGSCORE_BRIDGE
void unmapMeshData(BridgeContext * ctx, ResourceId resourceId,
int stream);
60COGSCORE_BRIDGE
void setMeshPrimitiveType(BridgeContext * ctx, ResourceId resourceId,
int primitiveType);
61COGSCORE_BRIDGE
void setMeshBoundingBox(BridgeContext * ctx, ResourceId resourceId,
const float * data);
64COGSCORE_BRIDGE
void releaseMesh(BridgeContext* ctx, ResourceId resourceId);
69COGSCORE_BRIDGE ResourceId createAsset(BridgeContext * ctx,
const char * path,
int assetLoadFlags);
72COGSCORE_BRIDGE
void releaseAsset(BridgeContext* ctx, ResourceId resourceId);
75COGSCORE_BRIDGE
void setAssetField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
80COGSCORE_BRIDGE ResourceId getNextModelId(BridgeContext * ctx);
83COGSCORE_BRIDGE ResourceId loadModel(BridgeContext * ctx,
const char * resourceName, ResourceId resourceId,
int modelLoadFlags);
86COGSCORE_BRIDGE
void releaseModel(BridgeContext* ctx, ResourceId resourceId);
89COGSCORE_BRIDGE
void setModelField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
94COGSCORE_BRIDGE ResourceId getNextTextureId(BridgeContext * ctx);
97COGSCORE_BRIDGE
void loadTexture(BridgeContext * ctx, ResourceId resourceId,
const char * resourceName,
int textureLoadFlags);
101COGSCORE_BRIDGE
void loadTextureResource(BridgeContext * ctx, ResourceId resourceId,
const void * imageData,
int width,
int height,
int textureFormat,
int stride,
int textureLoadFlags);
105COGSCORE_BRIDGE
void loadRenderTextureResource(BridgeContext* ctx, ResourceId resourceId,
int width,
int height,
int textureFormat,
int textureLoadFlags);
109COGSCORE_BRIDGE
void loadTextureResource2(BridgeContext * ctx, ResourceId resourceId,
const void * imageData,
int target,
int width,
int height,
int depth,
int layers,
int textureFormat,
int stride,
int textureLoadFlags);
113COGSCORE_BRIDGE
void loadTextureVolumeResource(BridgeContext * ctx, ResourceId resourceId,
const void * imageData,
int width,
int height,
int depth,
int textureFormat,
int stride,
int textureLoadFlags);
116COGSCORE_BRIDGE
void loadExternalTextureResource(BridgeContext * ctx, ResourceId resourceId, intptr_t externalHandle,
int width,
int height,
int bpp,
int stride,
int textureLoadFlags);
120COGSCORE_BRIDGE
void loadExternalTextureResource2(BridgeContext * ctx, ResourceId resourceId, intptr_t externalHandle,
int target,
int width,
int height,
int depth,
int layers,
int textureFormat,
int stride,
int textureLoadFlags);
123COGSCORE_BRIDGE
void setTextureField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
125COGSCORE_BRIDGE
void setTexturesField(BridgeContext* ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId* resourceIds,
int size);
128COGSCORE_BRIDGE
void releaseTexture(BridgeContext * ctx, ResourceId resourceId);
132COGSCORE_BRIDGE ResourceId loadMaterial(BridgeContext * ctx,
const char * resourceName);
136COGSCORE_BRIDGE
int getMaterialPropertyDataType(BridgeContext* ctx, ResourceId resourceId,
const char* name);
138COGSCORE_BRIDGE
void setMaterialSharedProperty(BridgeContext* ctx, ResourceId materialId,
const char* name,
const void* data,
const int sizeInBytes);
140COGSCORE_BRIDGE
void setMaterialsField(BridgeContext* ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId* resourceIds,
int size);
147COGSCORE_BRIDGE ResourceId loadMaterialInstance(BridgeContext * ctx, ResourceId materialId);
150COGSCORE_BRIDGE
void setMaterialInstanceField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
154COGSCORE_BRIDGE
void setMaterialInstancesField(BridgeContext* ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId* resourceIds,
int size);
157COGSCORE_BRIDGE
void setMaterialInstanceArrayField(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId,
int index);
159COGSCORE_BRIDGE
void setMaterialInstanceOption(BridgeContext * ctx, ResourceId resourceId,
const char * name,
const char * value);
162COGSCORE_BRIDGE
void setMaterialInstanceProperty(BridgeContext * ctx, ResourceId resourceId,
const char * name,
const void * data,
const int sizeInBytes);
163COGSCORE_BRIDGE CogsBool getMaterialInstanceProperty(BridgeContext * ctx, ResourceId resourceId,
const char * name,
void * data,
const int sizeInBytes);
167COGSCORE_BRIDGE
int getMaterialInstancePropertyDataType(BridgeContext* ctx, ResourceId resourceId,
const char* name);
168COGSCORE_BRIDGE
void setMaterialInstanceTexture(BridgeContext * ctx, ResourceId resourceId,
const char * name,
const ResourceId textureId);
169COGSCORE_BRIDGE
void setMaterialInstanceTextureAddressMode(BridgeContext * ctx, ResourceId resourceId,
const char * name,
const char * mode);
170COGSCORE_BRIDGE
void setMaterialInstanceTextureFilterMode(BridgeContext* ctx, ResourceId resourceId,
const char* name,
const char* filterMode);
171COGSCORE_BRIDGE
void setMaterialInstancePermutation(BridgeContext * ctx, ResourceId resourceId,
const char * name);
172COGSCORE_BRIDGE
void setMaterialInstanceVariant(BridgeContext * ctx, ResourceId resourceId,
const char * key,
const char * value);
173COGSCORE_BRIDGE
const char * getMaterialInstanceVariant(BridgeContext * ctx, ResourceId resourceId,
const char * key);
176COGSCORE_BRIDGE
void setMaterialInstanceFlags(BridgeContext * ctx, ResourceId resourceId,
int materialFlags);
177COGSCORE_BRIDGE
const char * getMaterialInstanceName(BridgeContext * ctx, ResourceId materialInstanceId);
178COGSCORE_BRIDGE
void setMaterialInstanceName(BridgeContext * ctx, ResourceId materialInstanceId,
const char * name);
181COGSCORE_BRIDGE
void releaseMaterialInstance(BridgeContext* ctx, ResourceId resourceId);
186COGSCORE_BRIDGE ResourceId getNextFontId(BridgeContext* ctx);
189COGSCORE_BRIDGE ResourceId loadFont(BridgeContext* ctx,
const char* resourceName,
float size, ResourceId resourceId);
192COGSCORE_BRIDGE
void releaseFont(BridgeContext* ctx, ResourceId resourceId);
195COGSCORE_BRIDGE
void addFontDependency(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId,
const ResourceId resourceId);
200COGSCORE_BRIDGE
void registerStringResource(BridgeContext * ctx,
const char * key,
const char * value);
206COGSCORE_BRIDGE
void registerBinaryResource(BridgeContext* ctx,
const char* key,
const void* value,
int length);
210COGSCORE_BRIDGE
void addResourceArchive(BridgeContext* ctx,
const char* key, CogsBool prepend);
213COGSCORE_BRIDGE CogsBool hasResource(BridgeContext* ctx,
const char* key);
216COGSCORE_BRIDGE ResourceId getMaterialInstance(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId);
221COGSCORE_BRIDGE
int getMaterialInstances(BridgeContext * ctx, EntityId entityId,
const ComponentId componentId,
const FieldId fieldId, ResourceId * ids,
int idsCount);
224COGSCORE_BRIDGE
void addSearchPath(BridgeContext * ctx,
const char * path);
227COGSCORE_BRIDGE
void purgeResource(BridgeContext * ctx,
const char * resourceName);