• Home
  • Raw
  • Download

Lines Matching full:callback

15 and then call corresponding `Callback` event methods as the data structures are
36 There are 3 basic components in the parser that are used: `Reader`, `Callback`,
74 (unless, of course, you request the parser to stop via `Callback`... see the
77 ## `Callback`
81 notifies the `Callback` implementation as objects complete parsing. For some
83 `Callback` and requests it to consume the data directly from the `Reader` (this
91 that the `Callback` can be quickly and frequently notified as soon as the object
92 is ready, but large enough that the objects received by the `Callback` are still
93 useful. Having `Callback` events for every tiny integer/float/string/etc.
101 - `Callback::OnElementBegin()`: This is called for every element that the
104 - `Callback::OnUnknownElement()`: This is called when an element is either not
108 defers to the `Callback` to decide how it should be handled. The default
110 - `Callback::OnVoid()`: Void elements can appear anywhere in any master
117 DOM. For example, `Callback::OnEbml()` will never be called in between
118 `Callback::OnSegmentBegin()`/`Callback::OnSegmentEnd()` (since the EBML element
119 is not a child of the Segment element), and `Callback::OnTrackEntry()` will only
121 `Callback::OnSegmentBegin()`/`Callback::OnSegmentEnd()` (since the TrackEntry
123 Segment element). `Callback::OnFrame()` is listed twice because it will be
126 - `Callback::OnEbml()`
127 - `Callback::OnSegmentBegin()`
128 - `Callback::OnSeek()`
129 - `Callback::OnInfo()`
130 - `Callback::OnClusterBegin()`
131 - `Callback::OnSimpleBlockBegin()`
132 - `Callback::OnFrame()`
133 - `Callback::OnSimpleBlockEnd()`
134 - `Callback::OnBlockGroupBegin()`
135 - `Callback::OnBlockBegin()`
136 - `Callback::OnFrame()`
137 - `Callback::OnBlockEnd()`
138 - `Callback::OnBlockGroupEnd()`
139 - `Callback::OnClusterEnd()`
140 - `Callback::OnTrackEntry()`
141 - `Callback::OnCuePoint()`
142 - `Callback::OnEditionEntry()`
143 - `Callback::OnTag()`
144 - `Callback::OnSegmentEnd()`
146 Only `Callback::OnFrame()` (and no other `Callback` methods) will be called in
147 between `Callback::OnSimpleBlockBegin()`/`Callback::OnSimpleBlockEnd()` or
148 `Callback::OnBlockBegin()`/`Callback::OnBlockEnd()`, since the SimpleBlock and
153 element, `Callback::OnSegmentBegin()` and `Callback::OnClusterBegin()` will not
154 be called. In this situation, the full sequence of callback events would be
156 `Callback::OnSimpleBlockBegin()`, `Callback::OnFrame()` (for every frame in the
157 SimpleBlock), `Callback::OnSimpleBlockEnd()`, `Callback::OnClusterEnd()`, and
158 `Callback::OnSegmentEnd()`. Since the Cluster and Segment elements were skipped,
164 When a `Callback` method has completed, it should return `Status::kOkCompleted`
171 callback method again (and once again, you may return `Status::kOkCompleted` to
174 You may subclass the `Callback` element and override methods which you are
177 `Callback::OnFrame()` method will just skip over the frame bytes by default.
182 `WebmParser` and call `WebmParser::Feed()` (providing it a `Callback` and
185 any internal references to the `Callback` or `Reader`.
203 #include <webm/callback.h>
208 webm::Callback callback;
211 parser.Feed(&callback, &reader);
216 derives from `Callback` if we want to receive any parsing events. So if we
223 #include <webm/callback.h>
228 class MyCallback : public webm::Callback {
268 MyCallback callback;
271 webm::Status status = parser.Feed(&callback, &reader);
285 prints out all of its information. That example overrides every `Callback`