summaryrefslogtreecommitdiffstats
path: root/Common/interface
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-01-25 22:33:42 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-01-25 22:33:42 +0000
commit75d892e4358f877a5db23b20930b680aee6415d9 (patch)
treea01881662936340d1e2bb4fa0a970e10a26c8140 /Common/interface
parentFixed issue with SHADER_SOURCE_LANGUAGE SourceLanguage member (diff)
downloadDiligentCore-75d892e4358f877a5db23b20930b680aee6415d9.tar.gz
DiligentCore-75d892e4358f877a5db23b20930b680aee6415d9.zip
c inteface: implemented core object VTBLs
Diffstat (limited to 'Common/interface')
-rw-r--r--Common/interface/RefCountedObjectImpl.h22
1 files changed, 10 insertions, 12 deletions
diff --git a/Common/interface/RefCountedObjectImpl.h b/Common/interface/RefCountedObjectImpl.h
index ee89d1c0..51270d25 100644
--- a/Common/interface/RefCountedObjectImpl.h
+++ b/Common/interface/RefCountedObjectImpl.h
@@ -44,7 +44,7 @@ namespace Diligent
class RefCountersImpl final : public IReferenceCounters
{
public:
- inline virtual CounterValueType AddStrongRef() override final
+ inline virtual ReferenceCounterValueType AddStrongRef() override final
{
VERIFY(m_ObjectState == ObjectState::Alive, "Attempting to increment strong reference counter for a destroyed or not itialized object!");
VERIFY(m_ObjectWrapperBuffer[0] != 0 && m_ObjectWrapperBuffer[1] != 0, "Object wrapper is not initialized");
@@ -52,7 +52,7 @@ public:
}
template <class TPreObjectDestroy>
- inline CounterValueType ReleaseStrongRef(TPreObjectDestroy PreObjectDestroy)
+ inline ReferenceCounterValueType ReleaseStrongRef(TPreObjectDestroy PreObjectDestroy)
{
VERIFY(m_ObjectState == ObjectState::Alive, "Attempting to decrement strong reference counter for an object that is not alive");
VERIFY(m_ObjectWrapperBuffer[0] != 0 && m_ObjectWrapperBuffer[1] != 0, "Object wrapper is not initialized");
@@ -69,17 +69,17 @@ public:
return RefCount;
}
- inline virtual CounterValueType ReleaseStrongRef() override final
+ inline virtual ReferenceCounterValueType ReleaseStrongRef() override final
{
return ReleaseStrongRef([]() {});
}
- inline virtual CounterValueType AddWeakRef() override final
+ inline virtual ReferenceCounterValueType AddWeakRef() override final
{
return Atomics::AtomicIncrement(m_lNumWeakReferences);
}
- inline virtual CounterValueType ReleaseWeakRef() override final
+ inline virtual ReferenceCounterValueType ReleaseWeakRef() override final
{
// The method must be serialized!
ThreadingTools::LockHelper Lock(m_LockFlag);
@@ -202,12 +202,12 @@ public:
Atomics::AtomicDecrement(m_lNumStrongReferences);
}
- inline virtual CounterValueType GetNumStrongRefs() const override final
+ inline virtual ReferenceCounterValueType GetNumStrongRefs() const override final
{
return m_lNumStrongReferences;
}
- inline virtual CounterValueType GetNumWeakRefs() const override final
+ inline virtual ReferenceCounterValueType GetNumWeakRefs() const override final
{
return m_lNumWeakReferences;
}
@@ -489,8 +489,6 @@ template <typename Base>
class RefCountedObject : public Base
{
public:
- using CounterValueType = IReferenceCounters::CounterValueType;
-
template <typename... BaseCtorArgTypes>
RefCountedObject(IReferenceCounters* pRefCounters, BaseCtorArgTypes&&... BaseCtorArgs) noexcept :
// clang-format off
@@ -533,7 +531,7 @@ public:
return m_pRefCounters;
}
- inline virtual CounterValueType AddRef() override final
+ inline virtual ReferenceCounterValueType AddRef() override final
{
VERIFY_EXPR(m_pRefCounters != nullptr);
// Since type of m_pRefCounters is RefCountersImpl,
@@ -541,7 +539,7 @@ public:
return m_pRefCounters->AddStrongRef();
}
- inline virtual CounterValueType Release() override
+ inline virtual ReferenceCounterValueType Release() override
{
VERIFY_EXPR(m_pRefCounters != nullptr);
// Since type of m_pRefCounters is RefCountersImpl,
@@ -550,7 +548,7 @@ public:
}
template <class TPreObjectDestroy>
- inline CounterValueType Release(TPreObjectDestroy PreObjectDestroy)
+ inline ReferenceCounterValueType Release(TPreObjectDestroy PreObjectDestroy)
{
VERIFY_EXPR(m_pRefCounters != nullptr);
return m_pRefCounters->ReleaseStrongRef(PreObjectDestroy);