MCPcopy Create free account
hub / github.com/RenderKit/embree / FlattenIntoSingleLayer

Method FlattenIntoSingleLayer

tutorials/common/imgui/imgui.cpp:4987–5003  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4985}
4986
4987void ImDrawDataBuilder::FlattenIntoSingleLayer()
4988{
4989 int n = Layers[0].Size;
4990 int size = n;
4991 for (int i = 1; i < IM_ARRAYSIZE(Layers); i++)
4992 size += Layers[i].Size;
4993 Layers[0].resize(size);
4994 for (int layer_n = 1; layer_n < IM_ARRAYSIZE(Layers); layer_n++)
4995 {
4996 ImVector<ImDrawList*>& layer = Layers[layer_n];
4997 if (layer.empty())
4998 continue;
4999 memcpy(&Layers[0][n], &layer[0], layer.Size * sizeof(ImDrawList*));
5000 n += layer.Size;
5001 layer.resize(0);
5002 }
5003}
5004
5005static void SetupViewportDrawData(ImGuiViewportP* viewport, ImVector<ImDrawList*>* draw_lists)
5006{

Callers 1

RenderMethod · 0.80

Calls 2

resizeMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected