libebml_ng
prepared.h
Go to the documentation of this file.
1 #ifndef EBML_NG_LAZYLOAD_PREPARED_H
2 #define EBML_NG_LAZYLOAD_PREPARED_H
3 
4 #include "children_m.h"
5 #include <string>
6 #include "../base.h"
7 #include "extent_t.h"
8 
9 namespace ebml {
10  // struct insert_t {
11  // off_t offset;
12  // ebmlID_t ebmlID;
13  // };
14 
16  public:
17  off_t prevOffset;
18  off_t prevEnd;
19 
21 
22  off_t endOffset;
23  off_t nextOffset;
24  // sizetree_t sizetree;
25  children_m::iterator insertionHint;
26 
27  // prepared_insert_t(off_t, off_t, off_t, off_t, off_t, const sizetree_t&, const children_m::iterator&);
28  // prepared_insert_t(off_t, off_t, off_t, off_t, off_t, sizetree_t&&, children_m::iterator&&);
29  // prepared_insert_t(off_t, off_t, off_t, off_t, off_t);
30  prepared_insert_t(off_t, off_t, const extent_t&, off_t, off_t, const children_m::iterator&);
31  prepared_insert_t(off_t, off_t, const extent_t&, off_t, off_t, children_m::iterator&&);
32  prepared_insert_t(off_t, off_t, extent_t&&, off_t, off_t, const children_m::iterator&);
33  prepared_insert_t(off_t, off_t, extent_t&&, off_t, off_t, children_m::iterator&&);
34  prepared_insert_t(off_t, off_t, const extent_t&, off_t, off_t);
35  prepared_insert_t(off_t, off_t, extent_t&&, off_t, off_t);
36  // ~prepared_insert_t();
37 
40 
43 
44  void throw_exc(const std::string&, const c_ebmlElement_sp&) const;
45  // operator ebmlInsertionError() const;
46  };
47 
49  public:
50  off_t prevOffset;
51  off_t prevEnd;
52  std::vector<extent_t> extents;
53  off_t endOffset;
54  off_t nextOffset;
55  children_m::iterator insertionHint;
56 
57  prepared_multiinsert_t(off_t, off_t, const std::vector<extent_t>&, off_t, off_t, const children_m::iterator&);
58  prepared_multiinsert_t(off_t, off_t, std::vector<extent_t>&&, off_t, off_t, const children_m::iterator&);
59  prepared_multiinsert_t(off_t, off_t, const std::vector<extent_t>&, off_t, off_t, children_m::iterator&&);
60  prepared_multiinsert_t(off_t, off_t, std::vector<extent_t>&&, off_t, off_t, children_m::iterator&&);
61  prepared_multiinsert_t(off_t, off_t, const std::vector<extent_t>&, off_t, off_t);
62  prepared_multiinsert_t(off_t, off_t, std::vector<extent_t>&&, off_t, off_t);
63  // prepared_multiinsert_t(off_t, off_t, const std::vector<off_t>&, off_t, off_t, const std::vector<sizetree_t>&, const children_m::iterator&);
64  // prepared_multiinsert_t(off_t, off_t, std::vector<off_t>&&, off_t, off_t, const std::vector<sizetree_t>&, const children_m::iterator&);
65  // prepared_multiinsert_t(off_t, off_t, const std::vector<off_t>&, off_t, off_t, std::vector<sizetree_t>&&, const children_m::iterator&);
66  // prepared_multiinsert_t(off_t, off_t, std::vector<off_t>&&, off_t, off_t, std::vector<sizetree_t>&&, const children_m::iterator&);
67  // prepared_multiinsert_t(off_t, off_t, const std::vector<off_t>&, off_t, off_t);
68  // prepared_multiinsert_t(off_t, off_t, std::vector<off_t>&&, off_t, off_t);
69  // ~prepared_insert_t();
70 
73 
76 
77  void throw_exc(const std::string&, const c_ebmlElement_sp&) const;
78  // operator ebmlInsertionError() const;
79  };
80 
82  public:
83  off_t srcPrevEnd;
84  off_t srcOffset;
86 
87  off_t prevOffset;
88  off_t prevEnd;
89 
91  // off_t dest_offset;
92  // off_t endOffset;
93 
94  off_t nextOffset;
95  children_m::iterator sourceIter;
96  children_m::iterator insertionHint;
97 
98  prepared_move_t(off_t, off_t, off_t, off_t, off_t, off_t, off_t, off_t, const children_m::iterator&, const children_m::iterator&);
99  prepared_move_t(off_t, off_t, off_t, off_t, off_t, off_t, off_t, off_t, children_m::iterator&&, children_m::iterator&&);
100  prepared_move_t(off_t, off_t, off_t, off_t, off_t, off_t, off_t, off_t);
101 
104 
107 
108  void throw_exc(const std::string&, const c_ebmlElement_sp&) const;
109  // operator ebmlMoveError() const;
110  };
111 
113  public:
114  off_t prevEnd;
115  off_t offset;
116  off_t nextOffset;
117  children_m::iterator removeHint;
118 
119  prepared_remove_t(off_t, off_t, off_t, const children_m::iterator&);
120  prepared_remove_t(off_t, off_t, off_t, children_m::iterator&&);
121  prepared_remove_t(off_t, off_t, off_t);
122 
125 
128 
129  void throw_exc(const std::string&, const c_ebmlElement_sp&) const;
130  // operator ebmlMoveError() const;
131  };
132 
134  public:
135  off_t offset;
136  off_t endOffset;
140  seekData_t* seekData = nullptr;
141 
142  prepared_resize_t(off_t, off_t, off_t, off_t, off_t, seekData_t*);
143  prepared_resize_t(off_t, off_t, off_t, off_t, off_t);
144 
147 
150 
151  void throw_exc(const std::string&, const c_ebmlElement_sp&) const;
152  // operator ebmlResizeError() const;
153  };
154 }
155 
156 #endif
off_t nextSiblingOffset
Definition: prepared.h:139
off_t srcOffset
Definition: prepared.h:84
off_t lastChildOffset
Definition: prepared.h:137
prepared_remove_t & operator=(const prepared_remove_t &)
void throw_exc(const std::string &, const c_ebmlElement_sp &) const
Definition: prepared_resize_t.cpp:15
off_t nextOffset
Definition: prepared.h:94
prepared_resize_t & operator=(const prepared_move_t &)
off_t prevEnd
Definition: prepared.h:114
off_t srcNextOffset
Definition: prepared.h:85
off_t offset
Definition: prepared.h:115
off_t nextOffset
Definition: prepared.h:23
prepared_multiinsert_t & operator=(const prepared_multiinsert_t &)
Definition: prepared.h:112
Definition: prepared.h:15
Represents parsed seek data extracted from an EBML element.
Definition: seekdata.h:39
prepared_resize_t()
Definition: prepared_resize_t.cpp:10
children_m::iterator sourceIter
Definition: prepared.h:95
Definition: prepared.h:133
off_t srcPrevEnd
Definition: prepared.h:83
off_t endOffset
Definition: prepared.h:136
std::vector< extent_t > extents
Definition: prepared.h:52
void throw_exc(const std::string &, const c_ebmlElement_sp &) const
Definition: prepared_remove_t.cpp:74
off_t nextOffset
Definition: prepared.h:54
seekData_t * seekData
Definition: prepared.h:140
off_t prevOffset
Definition: prepared.h:87
Definition: extent_t.h:9
Definition: basictypes.h:40
off_t prevEnd
Definition: prepared.h:18
A drop-in replacement for std::shared_ptr tailored for EBML objects.
Definition: ptrs.h:27
Definition: prepared.h:48
children_m::iterator insertionHint
Definition: prepared.h:96
prepared_insert_t & operator=(const prepared_insert_t &)
prepared_remove_t()
Definition: prepared_remove_t.cpp:43
extent_t extent
Definition: prepared.h:20
off_t prevOffset
Definition: prepared.h:17
void throw_exc(const std::string &, const c_ebmlElement_sp &) const
Definition: prepared_insert_t.cpp:28
prepared_insert_t()
Definition: prepared_insert_t.cpp:10
off_t nextOffset
Definition: prepared.h:116
off_t endOffset
Definition: prepared.h:53
off_t prevEnd
Definition: prepared.h:88
void throw_exc(const std::string &, const c_ebmlElement_sp &) const
off_t endOffset
Definition: prepared.h:22
off_t lastChildEnd
Definition: prepared.h:138
void throw_exc(const std::string &, const c_ebmlElement_sp &) const
Definition: prepared_multiinsert_t.cpp:28
children_m::iterator insertionHint
Definition: prepared.h:25
prepared_multiinsert_t()
Definition: prepared_multiinsert_t.cpp:10
extent_t extent
Definition: prepared.h:90
children_m::iterator removeHint
Definition: prepared.h:117
off_t prevOffset
Definition: prepared.h:50
prepared_move_t & operator=(const prepared_move_t &)
off_t prevEnd
Definition: prepared.h:51
children_m::iterator insertionHint
Definition: prepared.h:55
off_t offset
Definition: prepared.h:135
Definition: prepared.h:81