summaryrefslogtreecommitdiffstats
path: root/Common/interface
diff options
context:
space:
mode:
authorEgor Yusov <egor.yusov@gmail.com>2018-04-17 16:20:09 +0000
committerEgor Yusov <egor.yusov@gmail.com>2018-04-17 16:20:09 +0000
commiteb129d6308eaca88131656fd58124355cb1b391a (patch)
tree5335bb16ba10f6aa26d436b6d47318fc5fde9f16 /Common/interface
parentImplementing device context in vulkan (diff)
downloadDiligentCore-eb129d6308eaca88131656fd58124355cb1b391a.tar.gz
DiligentCore-eb129d6308eaca88131656fd58124355cb1b391a.zip
Added template version of RawPtr function to allow more convenient type conversion
Diffstat (limited to 'Common/interface')
-rw-r--r--Common/interface/RefCntAutoPtr.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Common/interface/RefCntAutoPtr.h b/Common/interface/RefCntAutoPtr.h
index 5bfdbdab..8be859f3 100644
--- a/Common/interface/RefCntAutoPtr.h
+++ b/Common/interface/RefCntAutoPtr.h
@@ -179,6 +179,11 @@ public:
T* RawPtr() { return m_pObject; }
const T* RawPtr()const{ return m_pObject; }
+
+ template<typename DstType>
+ DstType* RawPtr() { return ValidatedCast<DstType>(m_pObject); }
+ template<typename DstType>
+ const DstType* RawPtr()const { return ValidatedCast<DstType>(m_pObject); }
operator T* () { return RawPtr(); }
operator const T* ()const { return RawPtr(); }