Represents an EBML Master Element with on-disk, transactional child management.
More...
|
| const children_m & | seeksByOffset () const |
| |
| const std::unordered_map< ebmlID_t, std::map< off_t, seekData_t * > > & | seeksByEBMLID () const |
| |
| const std::unordered_map< ebmlID_t, std::unique_ptr< seekMapBase > > & | seeksByKey () const |
| |
| ioBase & | file () const |
| |
| readLock_t | getRLock () const |
| |
| readLock_t | getRLock (const readLock_t &) const |
| |
| writeLock_t | getWLock () const |
| |
| writeLock_t | getWLock (const readLock_t &) const |
| |
| writeLock_t | getWLock (const writeLock_t &) const |
| |
| writeLock_t | getGlobalLock () const |
| |
| off_t | endOfData () const |
| |
| ebml::ptr< ebmlElement > | get (off_t) |
| |
| ebml::ptr< ebmlElement > | get (off_t, const readLock_t &) |
| |
| ebml::ptr< ebmlElement > | get (off_t, const writeLock_t &) |
| |
| template<typename T > |
| ebml::ptr< T > | get (off_t) |
| |
| template<typename T > |
| ebml::ptr< T > | get (off_t, const readLock_t &) |
| |
| template<typename T > |
| ebml::ptr< T > | get (off_t, const writeLock_t &) |
| |
| ebml::ptr< ebmlElement > | get (ebmlID_t, size_t) |
| |
| ebml::ptr< ebmlElement > | get (ebmlID_t, size_t, const readLock_t &) |
| |
| ebml::ptr< ebmlElement > | get (ebmlID_t, size_t, const writeLock_t &) |
| |
| template<typename T > |
| ebml::ptr< T > | get (ebmlID_t, size_t) |
| |
| template<typename T > |
| ebml::ptr< T > | get (ebmlID_t, size_t, const readLock_t &) |
| |
| template<typename T > |
| ebml::ptr< T > | get (ebmlID_t, size_t, const writeLock_t &) |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< ebmlElement > > | getByKey (ebmlID_t, const K &) |
| | Gets a child element based on a user-defined key. More...
|
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< ebmlElement > > | getByKey (ebmlID_t, const K &, const readLock_t &) |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< ebmlElement > > | getByKey (ebmlID_t, const K &, const writeLock_t &) |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | getByKey (ebmlID_t, const K &) |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | getByKey (ebmlID_t, const K &, const readLock_t &) |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | getByKey (ebmlID_t, const K &, const writeLock_t &) |
| |
| ebml::ptr< const ebmlElement > | cget (off_t) const |
| |
| ebml::ptr< const ebmlElement > | cget (off_t, const readLock_t &) const |
| |
| ebml::ptr< const ebmlElement > | cget (off_t, const writeLock_t &) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (off_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (off_t, const readLock_t &) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (off_t, const writeLock_t &) const |
| |
| ebml::ptr< const ebmlElement > | cget (ebmlID_t, size_t) const |
| |
| ebml::ptr< const ebmlElement > | cget (ebmlID_t, size_t, const readLock_t &) const |
| |
| ebml::ptr< const ebmlElement > | cget (ebmlID_t, size_t, const writeLock_t &) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (ebmlID_t, size_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (ebmlID_t, size_t, const readLock_t &) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (ebmlID_t, size_t, const writeLock_t &) const |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< const ebmlElement > > | cgetByKey (ebmlID_t, const K &) const |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< const ebmlElement > > | cgetByKey (ebmlID_t, const K &, const readLock_t &) const |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_base_of< ebmlElement, std::decay_t< K > >::value, ebml::ptr< const ebmlElement > > | cgetByKey (ebmlID_t, const K &, const writeLock_t &) const |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | cgetByKey (ebmlID_t, const K &) const |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | cgetByKey (ebmlID_t, const K &, const readLock_t &) const |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, std::decay_t< T > >::value, ebml::ptr< T > > | cgetByKey (ebmlID_t, const K &, const writeLock_t &) const |
| |
| status_t< prepared_insert_t > | canInsert (off_t, sizetree_t &&, const writeLock_t &) |
| |
| status_t< prepared_multiinsert_t > | canInsert (off_t, std::vector< sizetree_t > &&, const writeLock_t &) |
| |
| status_t< prepared_insert_t > | canInsert (off_t, const ebml::ptr< ebmlElement > &, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const ebml::ptr< ebmlElement > &) |
| |
| seekData_t * | insert (off_t, const ebml::ptr< ebmlElement > &, const readLock_t &) |
| |
| seekData_t * | insert (off_t, const ebml::ptr< ebmlElement > &, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const ebml::ptr< ebmlElement > &, const writeLock_t &, const status_t< prepared_insert_t > &) |
| |
| status_t< prepared_multiinsert_t > | canInsert (off_t, const ebmlElement_l &, const writeLock_t &) |
| |
| std::vector< seekData_t * > | insert (off_t, const ebmlElement_l &) |
| |
| std::vector< seekData_t * > | insert (off_t, const ebmlElement_l &, const readLock_t &) |
| |
| std::vector< seekData_t * > | insert (off_t, const ebmlElement_l &, const writeLock_t &) |
| |
| std::vector< seekData_t * > | insert (off_t, const ebmlElement_l &, const writeLock_t &, const status_t< prepared_multiinsert_t > &) |
| |
| status_t< prepared_insert_t > | canInsert (off_t, const std::string &, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const std::string &) |
| |
| seekData_t * | insert (off_t, const std::string &, const readLock_t &) |
| |
| seekData_t * | insert (off_t, const std::string &, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const std::string &, const writeLock_t &, const status_t< prepared_insert_t > &) |
| |
| status_t< prepared_insert_t > | canInsert (off_t, const char *, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const char *data) |
| |
| seekData_t * | insert (off_t, const char *data, const readLock_t &) |
| |
| seekData_t * | insert (off_t, const char *data, const writeLock_t &) |
| |
| seekData_t * | insert (off_t, const char *data, const writeLock_t &, const status_t< prepared_insert_t > &) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t, const T &cls, Args &&...) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t, const readLock_t &, const T &cls, Args &&...) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t, const writeLock_t &, const T &cls, Args &&...) |
| | Inserts a new child element at a specified offset. More...
|
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t, const writeLock_t &, const status_t< prepared_insert_t > &, const T &cls, Args &&...) |
| |
| status_t< prepared_move_t > | canMove (off_t, off_t, const writeLock_t &) |
| |
| void | move (off_t, off_t) |
| |
| void | move (off_t, off_t, const readLock_t &) |
| |
| void | move (off_t, off_t, const writeLock_t &) |
| |
| void | move (off_t, off_t, const writeLock_t &, const status_t< prepared_move_t > &) |
| |
| bool | sizeSupported (size_t size, const writeLock_t &) |
| |
| status_t< prepared_resize_t > | canResize (size_t, const writeLock_t &) |
| |
| void | resize (size_t size) |
| |
| void | resize (size_t size, const readLock_t &) |
| |
| void | resize (size_t size, const writeLock_t &) |
| |
| void | resize (size_t size, const writeLock_t &, const status_t< prepared_resize_t > &) |
| |
| status_t< prepared_remove_t > | canRemove (off_t, const writeLock_t &) |
| |
| void | remove (off_t offset) |
| |
| void | remove (off_t offset, const readLock_t &) |
| |
| void | remove (off_t offset, const writeLock_t &) |
| |
| void | remove (off_t offset, const status_t< prepared_remove_t > &, const writeLock_t &) |
| |
| off_t | findBoundary (off_t offset) |
| |
| off_t | findBoundary (off_t offset, const readLock_t &) |
| |
| off_t | findBoundary (off_t offset, const writeLock_t &) |
| |
| off_t | rfindBoundary (off_t offset) |
| |
| off_t | rfindBoundary (off_t offset, const readLock_t &) |
| |
| off_t | rfindBoundary (off_t offset, const writeLock_t &) |
| |
| seekData_t * | firstChild () |
| |
| seekData_t * | firstChild (const readLock_t &) |
| |
| seekData_t * | firstChild (const writeLock_t &) |
| |
| seekData_t * | lastChild () |
| |
| seekData_t * | lastChild (const readLock_t &) |
| |
| seekData_t * | lastChild (const writeLock_t &) |
| |
| seekData_t * | nextChild (off_t offset) |
| |
| seekData_t * | nextChild (off_t offset, const readLock_t &) |
| |
| seekData_t * | nextChild (off_t offset, const writeLock_t &) |
| |
| seekData_t * | prevChild (off_t offset) |
| |
| seekData_t * | prevChild (off_t offset, const readLock_t &) |
| |
| seekData_t * | prevChild (off_t offset, const writeLock_t &) |
| |
| std::wstring | minirepr () const override |
| |
| size_t | dataSize () const override |
| |
| seekData_t * | _firstChildSeek () const |
| |
| seekData_t * | _lastChildSeek () const |
| |
| seekData_t * | _prevChildSeek (off_t offset, bool strict=true) const |
| |
| seekData_t * | _nextChildSeek (off_t offset, bool strict=true) const |
| |
| std::pair< children_m::iterator, children_m::iterator > | _find (off_t offset, bool left=true) |
| |
| children_m::iterator | _findNext (off_t offset, bool strict=true) |
| |
| children_m::iterator | _findPrev (off_t offset, bool strict=true) |
| |
| off_t | _findFree (off_t offset, size_t size) |
| |
| off_t | _rfindFree (off_t offset, size_t size) |
| |
| prepared_resize_t | _canResizeChild (off_t, size_t size) |
| |
| prepared_resize_t | _canResizeChild (const seekData_t &, size_t size) |
| |
| const children_m & | seeksByOffset () const |
| |
| const std::unordered_map< ebmlID_t, std::map< off_t, seekData_t * > > & | seeksByEBMLID () const |
| |
| const std::unordered_map< ebmlID_t, std::unique_ptr< seekMapBase > > & | seeksByKey () const |
| |
| ioBase & | file () const |
| |
| off_t | endOfData () const |
| |
| ebmlElement_sp | get (off_t) |
| |
| template<typename T > |
| ebml::ptr< T > | get (off_t) |
| |
| ebmlElement_sp | get (ebmlID_t, size_t) |
| |
| template<typename T > |
| ebml::ptr< T > | get (ebmlID_t, size_t) |
| |
| c_ebmlElement_sp | cget (off_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (off_t) const |
| |
| c_ebmlElement_sp | cget (ebmlID_t, size_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | cget (ebmlID_t, size_t) const |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| ebmlElement_sp | getByKey (ebmlID_t, const K &) |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, T >::value, ebml::ptr< T > > | getByKey (ebmlID_t, const K &) |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| c_ebmlElement_sp | cgetByKey (ebmlID_t, const K &) const |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< const ebmlElement, T >::value &&std::is_base_of< const ebmlElement, T >::value, ebml::ptr< T > > | cgetByKey (ebmlID_t, const K &) const |
| |
| seekData_t * | insert (off_t offset, const ebmlElement_sp &child) |
| |
| std::vector< seekData_t * > | insert (off_t offset, const ebmlElement_l &children) |
| |
| seekData_t * | insert (off_t offset, const std::string &data) |
| |
| std::vector< seekData_t * > | insert (off_t offset, const std::vector< std::string > &data) |
| |
| seekData_t * | insert (off_t offset, const char *data) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementClass, T >::value, std::pair< ebmlElement_sp, seekData_t * > > | insert (off_t offset, const T &cls, Args...) |
| |
| template<typename T > |
| std::enable_if_t<!std::is_base_of< ebmlLazyLoad, T >::value &&std::is_base_of< ebmlElement, T >::value, seekData_t * > | insert (off_t offset, const ebml::ptr< T > &child) |
| |
| void | move (off_t src_offset, off_t dest_offset) |
| |
| void | resize (size_t size) |
| |
| void | remove (const ebmlElement_sp &child) |
| |
| void | remove (off_t offset) |
| |
| off_t | findBoundary (off_t offset) |
| |
| off_t | rfindBoundary (off_t offset) |
| |
| seekData_t * | firstChild () |
| |
| seekData_t * | lastChild () |
| |
| seekData_t * | nextChild (off_t offset) |
| |
| seekData_t * | prevChild (off_t offset) |
| |
| off_t | findFree (off_t offset, size_t size) |
| |
| off_t | rfindFree (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | canInsert (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | canInsert (off_t offset, const ebmlElement_sp &) |
| |
| status_t< prepared_insert_t > | canInsert (off_t offset, const ebmlElement_l &) |
| |
| status_t< prepared_insert_t > | canMove (off_t src_offset, off_t dst_offset) |
| |
| status_t< prepared_insert_t > | canResize (size_t size) |
| |
| status_t< prepared_insert_t > | canResizeChild (const seekData_t &, size_t size) |
| |
| status_t< prepared_insert_t > | canResizeChild (ebmlElement *child, size_t size) |
| |
| status_t< prepared_insert_t > | canInsertRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | insertRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | canCollapseRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | collapseRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | canPunchHole (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | punchHole (off_t offset, size_t size) |
| |
| std::wstring | minirepr () const override |
| |
| size_t | dataSize () const override |
| |
| bool | sizeSupported (size_t size) |
| |
| ebmlElement_sp | _get (off_t) |
| |
| template<typename T > |
| ebml::ptr< T > | _get (off_t) |
| |
| c_ebmlElement_sp | _cget (off_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | _cget (off_t) const |
| |
| ebmlElement_sp | _get (ebmlID_t, size_t) |
| |
| template<typename T > |
| ebml::ptr< T > | _get (ebmlID_t, size_t) |
| |
| c_ebmlElement_sp | _cget (ebmlID_t, size_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | _cget (ebmlID_t, size_t) const |
| |
| template<typename T > |
| ebml::ptr< T > | _cget (ebmlID_t, size_t) |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| ebmlElement_sp | _getByKey (ebmlID_t, const K &) |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< ebmlElement, T >::value &&std::is_base_of< ebmlElement, T >::value, ebml::ptr< T > > | _getByKey (ebmlID_t, const K &) |
| |
| template<typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| c_ebmlElement_sp | _cgetByKey (ebmlID_t, const K &) const |
| |
| template<typename T , typename K , typename H = std::hash<K>, typename E = std::equal_to<K>> |
| std::enable_if_t<!std::is_same< const ebmlElement, T >::value &&std::is_base_of< const ebmlElement, T >::value, ebml::ptr< T > > | _cgetByKey (ebmlID_t, const K &) const |
| |
| off_t | _findBoundary (off_t offset) |
| |
| off_t | _rfindBoundary (off_t offset) |
| |
| seekData_t * | _firstChildSeek () const |
| |
| seekData_t * | _lastChildSeek () const |
| |
| seekData_t * | _prevChildSeek (off_t offset, bool strict=true) const |
| |
| seekData_t * | _nextChildSeek (off_t offset, bool strict=true) const |
| |
| std::pair< children_m::iterator, children_m::iterator > | _find (off_t offset, bool left=true) |
| |
| children_m::iterator | _findNext (off_t offset, bool strict=true) |
| |
| children_m::iterator | _findPrev (off_t offset, bool strict=true) |
| |
| off_t | _findFree (off_t offset, size_t size) |
| |
| off_t | _rfindFree (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | _canInsert (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | _canInsert (off_t offset, const ebmlElement_sp &) |
| |
| status_t< prepared_insert_t > | _canInsert (off_t offset, const ebmlElement_l &) |
| |
| status_t< prepared_insert_t > | _canInsert (off_t offset, const std::string &data) |
| |
| status_t< prepared_insert_t > | _canInsert (off_t offset, const char *data) |
| |
| prepared_move_t | _canMove (off_t src_offset, off_t dst_offset) |
| |
| prepared_resize_t | _canResize (size_t size) |
| |
| prepared_resize_t | _canResizeChild (off_t, size_t size) |
| |
| prepared_resize_t | _canResizeChild (const seekData_t &, size_t size) |
| |
| status_t< prepared_insert_t > | _canInsertRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | _canCollapseRange (off_t offset, size_t size) |
| |
| status_t< prepared_insert_t > | _canPunchHole (off_t offset, size_t size) |
| |
| seekData_t * | _insert (off_t offset, const ebmlElement_sp &child) |
| |
| seekData_t * | _insert (off_t offset, const ebmlElement_sp &child, const status_t< prepared_insert_t > &) |
| |
| seekData_t * | _insert (off_t offset, const std::string &data) |
| |
| seekData_t * | _insert (off_t offset, const std::string &data, const status_t< prepared_insert_t > &) |
| |
| std::vector< seekData_t * > | _insert (off_t offset, const std::vector< std::string > &data) |
| |
| std::vector< seekData_t * > | _insert (off_t offset, const std::vector< std::string > &data, const status_t< prepared_insert_t > &) |
| |
| std::vector< seekData_t * > | _insert (off_t offset, const ebmlElement_l &children) |
| |
| std::vector< seekData_t * > | _insert (off_t offset, const ebmlElement_l &children, const status_t< prepared_insert_t > &) |
| |
| seekData_t * | _insert (off_t offset, const char *data) |
| |
| seekData_t * | _insert (off_t offset, const char *data, const status_t< prepared_insert_t > &) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlLazyLoadClass, T >::value, std::pair< ebmlElement_sp, seekData_t * > > | _insert (off_t offset, const T &cls, vintWidth_t sizeWidth, size_t dataSize, Args...) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t<!std::is_base_of< ebmlLazyLoadClass, T >::value &&std::is_base_of< ebmlElementClass, T >::value, std::pair< ebmlElement_sp, seekData_t * > > | _insert (off_t offset, const T &cls, Args... args) |
| |
| template<typename T > |
| std::enable_if_t<!std::is_base_of< ebmlLazyLoad, T >::value &&std::is_base_of< ebmlElement, T >::value, seekData_t * > | _insert (off_t offset, const ebml::ptr< T > &child) |
| |
| void | _move (off_t src_offset, off_t dest_offset) |
| |
| void | _move (off_t src_offset, off_t dest_offset, const prepared_move_t &) |
| |
| void | _resize (size_t size) |
| |
| void | _resize (size_t size, const prepared_resize_t &) |
| |
| void | _remove (off_t offset) |
| |
| void | _remove (children_m::iterator) |
| |
| void | _insertRange (off_t offset, size_t size) |
| |
| void | _collapseRange (off_t offset, size_t size) |
| |
| void | _punchHole (off_t offset, size_t size) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t offset, const T &cls, Args &&... args) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t offset, const readLock_t &rlock, const T &cls, Args &&... args) |
| |
| template<typename T , typename... Args> |
| std::enable_if_t< std::is_base_of< ebmlElementType, std::decay_t< T > >::value, elem_seek_pair > | insert (off_t offset, const writeLock_t &wlock, const T &cls, Args &&... args) |
| |
| | ebmlElementCRTP (const ebmlLazyLoadType *cls, Args &&... args) |
| |
| const ebmlLazyLoadType & | cls () const |
| |
| ebml::ptr< ebmlLazyLoad > | sp () |
| |
| ebml::ptr< const ebmlLazyLoad > | sp () const |
| |
| ebml::ptr< ebmlElement > | sp () |
| | Returns a shared pointer to the element instance. More...
|
| |
| ebml::ptr< const ebmlElement > | sp () const |
| | Returns a shared pointer to a const element. More...
|
| |
| ebml::ptr< T > | sp () |
| |
| ebml::ptr< T > | sp () const |
| |
| ebml::wptr< ebmlLazyLoad > | wp () |
| |
| ebml::wptr< const ebmlLazyLoad > | wp () const |
| |
| ebml::wptr< ebmlElement > | wp () |
| |
| ebml::wptr< const ebmlElement > | wp () const |
| |
| ebml::wptr< T > | wp () |
| |
| ebml::wptr< T > | wp () const |
| |
| ebml::ptr< ebmlLazyLoad > | clone () const |
| |
| sizetree_t | sizetree () const |
| | Generates the size tree for the element hierarchy. More...
|
| |
| size_t | encode (char *, const sizetree_t &) const |
| | Encodes the element using a precomputed size tree. More...
|
| |
| iterator | begin () |
| |
| iterator | end () |
| |
| const_iterator | cbegin () const |
| |
| const_iterator | cend () const |
| |
| size_t | encode (char *) const |
| |
| std::string | encode () const |
| |
| size_t | encode (ioBase &) const |
| |
| size_t | encode (ioBase &, off_t) const |
| |
| | ebmlElementCRTP (const ebmlMasterElementType *cls, Args &&... args) |
| |
| ebml::ptr< ebmlMasterElement > | sp () |
| |
| ebml::ptr< const ebmlMasterElement > | sp () const |
| |
| ebml::ptr< ebmlElement > | sp () |
| | Returns a shared pointer to the element instance. More...
|
| |
| ebml::ptr< const ebmlElement > | sp () const |
| | Returns a shared pointer to a const element. More...
|
| |
| ebml::ptr< T > | sp () |
| |
| ebml::ptr< T > | sp () const |
| |
| ebml::wptr< ebmlMasterElement > | wp () |
| |
| ebml::wptr< const ebmlMasterElement > | wp () const |
| |
| ebml::wptr< ebmlElement > | wp () |
| |
| ebml::wptr< const ebmlElement > | wp () const |
| |
| ebml::wptr< T > | wp () |
| |
| ebml::wptr< T > | wp () const |
| |
| ebml::ptr< ebmlMasterElement > | clone () const |
| |
| virtual | ~ebmlElement () |
| |
| ebmlID_t | ebmlID () const |
| | Retrieve the EBML ID of the element. More...
|
| |
| template<typename T = ebmlElement> |
| T & | as () |
| | Dynamically cast the element to the requested type. More...
|
| |
| template<typename T = ebmlElement> |
| T & | as () const |
| | Const version of the dynamic cast. More...
|
| |
| ebml::ptr< ebmlElement > | sp () |
| | Returns a shared pointer to the element instance. More...
|
| |
| ebml::ptr< const ebmlElement > | sp () const |
| | Returns a shared pointer to a const element. More...
|
| |
| template<typename T > |
| ebml::ptr< T > | sp () |
| |
| template<typename T > |
| ebml::ptr< T > | sp () const |
| |
| ebml::wptr< ebmlElement > | wp () |
| |
| ebml::wptr< const ebmlElement > | wp () const |
| |
| template<typename T > |
| ebml::wptr< T > | wp () |
| |
| template<typename T > |
| ebml::wptr< T > | wp () const |
| |
| bool | parent_is_const () const |
| | Check if the element's parent is a const object. More...
|
| |
| ebml::ptr< ebmlMasterElement > | parent () const |
| | Retrieve the parent of this element. More...
|
| |
| ebml::ptr< const ebmlMasterElement > | c_parent () const |
| | Retrieve a const shared pointer to the parent element. More...
|
| |
| ebmlElement_sp | root () const |
| |
| c_ebmlElement_sp | c_root () const |
| |
| ebmlDocument_sp | document () const |
| |
| bool | hasParent () const |
| |
| unsigned char | headSize () const |
| |
| unsigned char | headSize (size_t) const |
| |
| unsigned char | sizeWidth () const |
| |
| unsigned char | sizeWidth (size_t) const |
| |
| size_t | outerSize () const |
| |
| size_t | outerSize (size_t) const |
| |
| off_t | offsetInParent () const |
| |
| off_t | offsetInFile () const |
| |
| off_t | dataOffsetInParent () const |
| |
| off_t | dataOffsetInFile () const |
| |
| ebml::ptr< ebmlElement > | clone () const |
| |
| virtual std::wstring | repr () const |
| |
| seekData_t * | makeSeekData () |
| |
| seekData_t * | makeSeekData () const |
| |
| std::string | encode () const |
| | Encodes the element and returns it as a std::string. More...
|
| |
| size_t | encode (char *) const |
| | Encodes the element into a pre-allocated buffer. More...
|
| |
| size_t | encode (ioBase &) const |
| | Encodes the element and writes it to a generic I/O stream. More...
|
| |
| size_t | encode (ioBase &, off_t) const |
| | Encodes the element and writes it to a specific offset in a stream. More...
|
| |
| size_t | encode (char *, size_t) const |
| | Encodes the element using a pre-computed size. More...
|
| |
|
| | ebmlLazyLoad (const ebmlLazyLoadType *) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadType *, ioBase &, off_t, vintWidth_t, size_t) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadType *, ioBase &, off_t, vintWidth_t, size_t, const ebmlElement_l &) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadType *, ebmlLazyLoad &, off_t, vintWidth_t, size_t) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadType *, ebmlLazyLoad &, off_t, vintWidth_t, size_t, const ebmlElement_l &) |
| |
| size_t | _initNew (ioBase &, off_t, vintWidth_t, size_t) |
| |
| void | _handleParseFile (const parseFile &) override |
| | Handles the parsing of seek data for a child element. More...
|
| |
| void | _handleSeekData (std::unique_ptr< seekData_t > &&) |
| |
| virtual void | _handleSeekData (std::unique_ptr< seekData_t > &&, const children_m::iterator &) |
| |
| void | _addChild (const ebmlElement_sp &) override |
| | Attaches a child element (rvalue version). More...
|
| |
| void | _addChild (ebmlElement_sp &&) override |
| | Attaches a child element (move version). More...
|
| |
| ebmlMasterElement::_iterator * | _begin () override |
| |
| ebmlMasterElement::_iterator * | _end () override |
| |
| ebmlMasterElement::_const_iterator * | _cbegin () const override |
| |
| ebmlMasterElement::_const_iterator * | _cend () const override |
| |
| ebml::ptr< ebmlElement > | _read_elem (seekData_t &seekData) |
| |
| ebml::ptr< const ebmlElement > | _read_elem (seekData_t &seekData) const |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *, ioBase &, vintWidth_t, size_t) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *, ioBase &, off_t, vintWidth_t, size_t) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *, ioBase &, off_t, vintWidth_t, size_t, const ebmlElement_l &) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *, ebmlLazyLoad &, off_t, vintWidth_t, size_t) |
| |
| | ebmlLazyLoad (const ebmlLazyLoadClass *, ebmlLazyLoad &, off_t, vintWidth_t, size_t, const ebmlElement_l &) |
| |
| size_t | _initNew (ioBase &, off_t, vintWidth_t, size_t) |
| |
| void | _handleParseFile (const parseFile &) override |
| | Handles the parsing of seek data for a child element. More...
|
| |
| virtual void | _handleSeekData (std::unique_ptr< seekData_t > &&) |
| |
| virtual void | _handleSeekData (std::unique_ptr< seekData_t > &&, const children_m::iterator &) |
| |
| void | _addChild (const ebmlElement_sp &) override |
| | Attaches a child element (rvalue version). More...
|
| |
| void | _addChild (ebmlElement_sp &&) override |
| | Attaches a child element (move version). More...
|
| |
| ebmlMasterElement::_iterator * | _begin () override |
| |
| ebmlMasterElement::_iterator * | _end () override |
| |
| ebmlMasterElement::_const_iterator * | _cbegin () const override |
| |
| ebmlMasterElement::_const_iterator * | _cend () const override |
| |
| ebmlElement_sp | _read_elem (seekData_t *seekData) |
| |
| ebmlElement_sp | _read_elem (seekData_t *seekData) const |
| |
| ebmlElement_sp | _read_elem (const parseFile &parsed) |
| |
| ebmlElement_sp | _read_elem (const parseFile &parsed) const |
| |
| localReadLock_t | getLocalRLock () const |
| |
| localWriteLock_t | getLocalWLock () const |
| |
| globalWriteLock_t | getGlobalLock () const |
| |
| ebmlElement * | _clone () const |
| |
| | ebmlMasterElement (const ebmlMasterElementType *) |
| |
| void | _init (const parseString &) |
| | Initializes the element from a parsed EBML string. More...
|
| |
| void | _init (const parseFile &) |
| | Initializes the element from parsed file data. More...
|
| |
| void | _cinit (const parseString &) |
| | Const initialization from a parsed EBML string. More...
|
| |
| void | _cinit (const parseFile &) |
| | Const initialization from parsed file data. More...
|
| |
| ebmlElement * | _decodeChild (const parseString &) const |
| | Decodes a child element from a parsed string. More...
|
| |
| ebmlElement * | _decodeChild (const parseFile &) const |
| | Decodes a child element from parsed file data. More...
|
| |
| ebmlElement * | _cdecodeChild (const parseString &) const |
| | Const version: Decodes a child element from a parsed string. More...
|
| |
| ebmlElement * | _cdecodeChild (const parseFile &) const |
| | Const version: Decodes a child element from parsed file data. More...
|
| |
| size_t | _encode (char *) const |
| |
| size_t | _encode (char *, const sizetree_t &) const |
| | Encodes the element using a precomputed size tree. More...
|
| |
| virtual void | _clear () |
| | Clears all child elements. More...
|
| |
| virtual void | _decodeChildren (parseString::iterator &) |
| | Decodes child elements from a parseString iterator. More...
|
| |
| virtual void | _cdecodeChildren (parseString::iterator &) |
| | Const version of _decodeChildren. More...
|
| |
| virtual void | _scanChildren (parseFile::iterator &) |
| | Scans for child elements from a parseFile iterator. More...
|
| |
| virtual void | _cscanChildren (parseFile::iterator &) |
| | Scans for child elements from a parseFile iterator. (const version) More...
|
| |
| virtual void | _chandleParseFile (const parseFile &) |
| | Handles the parsing of seek data for a child element. (const version) More...
|
| |
| void | _attachChild (const ebmlElement_sp &child, bool weak=true) const |
| | Attaches a child element to the master element. More...
|
| |
| void | _detachChild (const ebmlElement_sp &child) const |
| | Detaches a child element. More...
|
| |
| void | _attachChildren (const ebmlElement_l &elems, bool weak=true) const |
| | Const version of _attachChildren. More...
|
| |
| void | _detachChildren (const ebmlElement_l &elems) const |
| | Detaches multiple child elements. More...
|
| |
| void | _clonedata (const ebmlElement *) |
| |
| | ebmlElement (const ebmlElementType *) |
| | Protected constructor. More...
|
| |
| void | _validate () |
| |
| void | _setParent (const ebml::ptr< ebmlMasterElement > &parent, bool weak=true) |
| |
| void | _setParent (const ebml::ptr< const ebmlMasterElement > &parent, bool weak=true) |
| |
| void | _setParent (ebml::ptr< ebmlMasterElement > &&parent, bool weak=true) |
| |
| void | _setParent (ebml::ptr< const ebmlMasterElement > &&parent, bool weak=true) |
| |
| void | _setParent (ebmlMasterElement &parent, bool weak=true) |
| |
| void | _setParent (const ebmlMasterElement &parent, bool weak=true) |
| |
| void | _detach () |
| |
| size_t | _encode_head (char *, size_t) const |
| |