1538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#ifndef EBMLBUFFERWRITER_HPP
2538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#define EBMLBUFFERWRITER_HPP
3538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
4ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuangtypedef struct {
5ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuang  unsigned long long offset;
6538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber} EbmlLoc;
7538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
8ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuangtypedef struct {
9ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuang  unsigned char *buf;
10ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuang  unsigned int length;
11ba164dffc5a6795bce97fae02b51ccf3330e15e4hkuang  unsigned int offset;
12538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber} EbmlGlobal;
13538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
14538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
15538f6170b788de7408b06efc6613dc98579aa6a6Andreas Hubervoid Ebml_StartSubElement(EbmlGlobal *glob, EbmlLoc *ebmlLoc, unsigned long class_id);
16538f6170b788de7408b06efc6613dc98579aa6a6Andreas Hubervoid Ebml_EndSubElement(EbmlGlobal *glob,  EbmlLoc *ebmlLoc);
17538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
18538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
19538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#endif
20