mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-03-14 22:29:15 +01:00
[dxvk] Inline freeBufferSlice implementation
May save a cycle or two in invalidateBuffer.
This commit is contained in:
parent
594f04d4ed
commit
bd5630439e
@ -181,13 +181,6 @@ namespace dxvk {
|
|||||||
DxvkBufferTracker::~DxvkBufferTracker() { }
|
DxvkBufferTracker::~DxvkBufferTracker() { }
|
||||||
|
|
||||||
|
|
||||||
void DxvkBufferTracker::freeBufferSlice(
|
|
||||||
const Rc<DxvkBuffer>& buffer,
|
|
||||||
const DxvkBufferSliceHandle& slice) {
|
|
||||||
m_entries.push_back({ buffer, slice });
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void DxvkBufferTracker::reset() {
|
void DxvkBufferTracker::reset() {
|
||||||
for (const auto& e : m_entries)
|
for (const auto& e : m_entries)
|
||||||
e.buffer->freeSlice(e.slice);
|
e.buffer->freeSlice(e.slice);
|
||||||
|
@ -645,10 +645,21 @@ namespace dxvk {
|
|||||||
DxvkBufferTracker();
|
DxvkBufferTracker();
|
||||||
~DxvkBufferTracker();
|
~DxvkBufferTracker();
|
||||||
|
|
||||||
void freeBufferSlice(
|
/**
|
||||||
const Rc<DxvkBuffer>& buffer,
|
* \brief Add buffer slice for tracking
|
||||||
const DxvkBufferSliceHandle& slice);
|
*
|
||||||
|
* The slice will be returned to the
|
||||||
|
* buffer on the next call to \c reset.
|
||||||
|
* \param [in] buffer The parent buffer
|
||||||
|
* \param [in] slice The buffer slice
|
||||||
|
*/
|
||||||
|
void freeBufferSlice(const Rc<DxvkBuffer>& buffer, const DxvkBufferSliceHandle& slice) {
|
||||||
|
m_entries.push_back({ buffer, slice });
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Returns tracked buffer slices
|
||||||
|
*/
|
||||||
void reset();
|
void reset();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user