libebml_ng
Public Member Functions | Protected Member Functions | Friends | List of all members
ebml::ebmlDocument Class Reference

#include <ebmlDocument.h>

Inheritance diagram for ebml::ebmlDocument:

Public Member Functions

ioBasefile ()
 
size_t blksize () const
 
const ebmlElement_sproot () const
 
template<typename T >
ebml::ptr< T > root () const
 
const ebmlElement_sphead () const
 
const ebmlSchemaschema () const
 
std::unique_lock< std::shared_mutex > wlock () const
 
std::shared_lock< std::shared_mutex > rlock () const
 
std::shared_mutex & mutex () const
 

Protected Member Functions

 ebmlDocument (const ebmlSchema *)
 
 ebmlDocument (const ebmlSchema *, const ioBase_sp &)
 
 ebmlDocument (const ebmlSchema *, ioBase_sp &&)
 
void setHead (const ebmlElement_sp &)
 
void setHead (ebmlElement_sp &&)
 
void setRoot (const ebmlElement_sp &)
 
void setRoot (ebmlElement_sp &&)
 

Friends

class ebmlSchema
 

Constructor & Destructor Documentation

◆ ebmlDocument() [1/3]

ebml::ebmlDocument::ebmlDocument ( const ebmlSchema schema)
protected

◆ ebmlDocument() [2/3]

ebml::ebmlDocument::ebmlDocument ( const ebmlSchema schema,
const ioBase_sp file 
)
protected

◆ ebmlDocument() [3/3]

ebml::ebmlDocument::ebmlDocument ( const ebmlSchema schema,
ioBase_sp &&  file 
)
protected

Member Function Documentation

◆ blksize()

size_t ebml::ebmlDocument::blksize ( ) const

◆ file()

ioBase & ebml::ebmlDocument::file ( )

◆ head()

const ebmlElement_sp & ebml::ebmlDocument::head ( ) const

◆ mutex()

std::shared_mutex & ebml::ebmlDocument::mutex ( ) const

◆ rlock()

std::shared_lock< std::shared_mutex > ebml::ebmlDocument::rlock ( ) const

◆ root() [1/2]

const ebmlElement_sp & ebml::ebmlDocument::root ( ) const

◆ root() [2/2]

template<typename T >
ebml::ptr<T> ebml::ebmlDocument::root ( ) const
inline

◆ schema()

const ebmlSchema * ebml::ebmlDocument::schema ( ) const

◆ setHead() [1/2]

void ebml::ebmlDocument::setHead ( const ebmlElement_sp )
inlineprotected

◆ setHead() [2/2]

void ebml::ebmlDocument::setHead ( ebmlElement_sp &&  head)
protected

◆ setRoot() [1/2]

void ebml::ebmlDocument::setRoot ( const ebmlElement_sp )
inlineprotected

◆ setRoot() [2/2]

void ebml::ebmlDocument::setRoot ( ebmlElement_sp &&  root)
protected

◆ wlock()

std::unique_lock< std::shared_mutex > ebml::ebmlDocument::wlock ( ) const

Friends And Related Function Documentation

◆ ebmlSchema

friend class ebmlSchema
friend

The documentation for this class was generated from the following files: