MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / cgpu_enum_adapters

Function cgpu_enum_adapters

modules/engine/graphics/src/common/cgpu.c:106–126  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

104}
105
106void cgpu_enum_adapters(CGPUInstanceId instance, CGPUAdapterId* const adapters, uint32_t* adapters_num)
107{
108 SkrCZoneN(zz, "CGPUEnumAdapters", 1);
109
110 cgpu_assert(instance != CGPU_NULLPTR && "fatal: can't destroy NULL instance!");
111 cgpu_assert(instance->proc_table->enum_adapters && "enum_adapters Proc Missing!");
112
113 instance->proc_table->enum_adapters(instance, adapters, adapters_num);
114 // ++ proc_table_cache
115 if (adapters != CGPU_NULLPTR)
116 {
117 for (uint32_t i = 0; i < *adapters_num; i++)
118 {
119 *(const CGPUProcTable**)&adapters[i]->proc_table_cache = instance->proc_table;
120 *(CGPUInstanceId*)&adapters[i]->instance = instance;
121 }
122 }
123 // -- proc_table_cache
124
125 SkrCZoneEnd(zz);
126}
127
128const char* unknownAdapterName = "UNKNOWN";
129const struct CGPUAdapterDetail* cgpu_query_adapter_detail(const CGPUAdapterId adapter)

Callers 15

create_api_objectsMethod · 0.85
initMethod · 0.85
initializeFunction · 0.85
initializeFunction · 0.85
ComputeFuncFunction · 0.85
initializeFunction · 0.85
initializeFunction · 0.85
create_api_objectsMethod · 0.85
create_api_objectsMethod · 0.85
create_api_objectsFunction · 0.85
create_api_objectsFunction · 0.85
create_api_objectsMethod · 0.85

Calls

no outgoing calls

Tested by 2

test_create_deviceFunction · 0.68
test_allMethod · 0.68