summaryrefslogtreecommitdiff
path: root/src/factories/oot/DeferredVtx.h
blob: ee84347f4a585262580df2e89c1f7ea8b495ce15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma once

#include <cstdint>
#include <string>
#include <vector>

namespace DeferredVtx {
    struct PendingVtx { uint32_t addr; uint32_t count; };
    void BeginDefer();
    bool IsDeferred();
    void FlushDeferred(const std::string& baseName);
    std::vector<PendingVtx> SaveAndClearPending();
    void RestorePending(std::vector<PendingVtx>& saved);
    void AddPending(uint32_t addr, uint32_t count);
    void EndDefer();
}