libebml_ng
Classes | Namespaces | Typedefs
ptrs.h File Reference
#include <utility>
#include "forwards.h"
#include <memory>
#include <mutex>
#include <iostream>

Go to the source code of this file.

Classes

struct  ebml::control_block
 
class  ebml::ebml_shared_ptr< T >
 A drop-in replacement for std::shared_ptr tailored for EBML objects. More...
 
class  ebml::ebml_weak_ptr< T >
 A drop-in replacement for std::weak_ptr tailored for EBML objects. More...
 
class  ebml::ebml_shared_ptr< T >
 A drop-in replacement for std::shared_ptr tailored for EBML objects. More...
 
class  ebml::ebml_weak_ptr< T >
 A drop-in replacement for std::weak_ptr tailored for EBML objects. More...
 

Namespaces

 ebml
 

Typedefs

template<typename T >
using ebml::ptr = ebml_shared_ptr< T >
 
template<typename T >
using ebml::wptr = ebml_weak_ptr< T >
 
typedef ptr< ebmlElement > ebml::ebmlElement_sp
 
typedef ptr< const ebmlElement > ebml::c_ebmlElement_sp
 
typedef ptr< ebmlMasterElement > ebml::ebmlMasterElement_sp
 
typedef ptr< const ebmlMasterElement > ebml::c_ebmlMasterElement_sp
 
typedef ptr< ebmlList > ebml::ebmlList_sp
 
typedef ptr< const ebmlList > ebml::c_ebmlList_sp
 
typedef ptr< ebmlLazyLoad > ebml::ebmlLazyLoad_sp
 
typedef ptr< const ebmlLazyLoad > ebml::c_ebmlLazyLoad_sp
 
typedef wptr< ebmlElement > ebml::ebmlElement_wp
 
typedef wptr< const ebmlElement > ebml::c_ebmlElement_wp
 
typedef wptr< ebmlMasterElement > ebml::ebmlMasterElement_wp
 
typedef wptr< const ebmlMasterElement > ebml::c_ebmlMasterElement_wp
 
typedef std::shared_ptr< ebmlDocument > ebml::ebmlDocument_sp
 
typedef std::weak_ptr< ebmlDocument > ebml::ebmlDocument_wp
 
typedef ptr< ioBase > ebml::ioBase_sp
 

Functions

template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_dynamic_pointer_cast (const ebml_shared_ptr< U > &)
 
template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_dynamic_pointer_cast (ebml_shared_ptr< U > &&)
 
template<typename T , typename U >
ebml_weak_ptr< T > ebml::ebml_dynamic_pointer_cast (const ebml_weak_ptr< U > &)
 
template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_static_pointer_cast (const ebml_shared_ptr< U > &)
 
template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_static_pointer_cast (ebml_shared_ptr< U > &&)
 
template<typename T , typename U >
ebml_weak_ptr< T > ebml::ebml_static_pointer_cast (const ebml_weak_ptr< U > &)
 
template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_const_pointer_cast (const ebml_shared_ptr< U > &)
 
template<typename T , typename U >
ebml_shared_ptr< T > ebml::ebml_const_pointer_cast (ebml_shared_ptr< U > &&)