diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/BStream.h | 1 | ||||
-rw-r--r-- | includes/Handle.h | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/includes/BStream.h b/includes/BStream.h index 087948d..d5b5c17 100644 --- a/includes/BStream.h +++ b/includes/BStream.h @@ -23,6 +23,7 @@ class BStream : public Handle { size_t m_availBytes; size_t m_cursor; String m_name; + bool m_passThru; }; }; diff --git a/includes/Handle.h b/includes/Handle.h index 99aa3a5..f304086 100644 --- a/includes/Handle.h +++ b/includes/Handle.h @@ -87,6 +87,8 @@ class IO : public IOBase { IO(const IO<T> & io) { if (io.m_h) setHandle(io.m_h); } template<class U> IO(const IO<U> & io) { if (io.m_h) setHandle(io.m_h); } + template<class U> + bool isA() { return !!dynamic_cast<U *>(m_h); } IO<T> & operator=(const IO<T> & io) { if (m_h) m_h->delRef(); setHandle(io.m_h); return *this; } T * operator->() { Assert(m_h); T * r = dynamic_cast<T *>(m_h); Assert(r); return r; } bool isNull() { return dynamic_cast<T *>(m_h); } |