summaryrefslogtreecommitdiff
path: root/libavutil/lzo.h
diff options
context:
space:
mode:
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>2009-02-02 20:30:36 +0000
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>2009-02-02 20:30:36 +0000
commita545f067f3ef940a24556bffb2a19edfc9b824f9 (patch)
tree258d3f9818fcac44799e3003931752620eac61c1 /libavutil/lzo.h
parent6fb625c45547ee43f253609843304e2695957521 (diff)
Move doxygen documentation from lzo.c to lzo.h
Originally committed as revision 16949 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavutil/lzo.h')
-rw-r--r--libavutil/lzo.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/libavutil/lzo.h b/libavutil/lzo.h
index f1c1ce99b4..5431c1b5cf 100644
--- a/libavutil/lzo.h
+++ b/libavutil/lzo.h
@@ -32,8 +32,28 @@
#define AV_LZO_INPUT_PADDING 8
#define AV_LZO_OUTPUT_PADDING 12
+/**
+ * \brief Decodes LZO 1x compressed data.
+ * \param out output buffer
+ * \param outlen size of output buffer, number of bytes left are returned here
+ * \param in input buffer
+ * \param inlen size of input buffer, number of bytes left are returned here
+ * \return 0 on success, otherwise error flags, see lzo.h
+ *
+ * Make sure all buffers are appropriately padded, in must provide
+ * AV_LZO_INPUT_PADDING, out must provide AV_LZO_OUTPUT_PADDING additional bytes.
+ */
int av_lzo1x_decode(void *out, int *outlen, const void *in, int *inlen);
+/**
+ * \brief deliberately overlapping memcpy implementation
+ * \param dst destination buffer; must be padded with 12 additional bytes
+ * \param back how many bytes back we start (the initial size of the overlapping window)
+ * \param cnt number of bytes to copy, must be >= 0
+ *
+ * cnt > back is valid, this will copy the bytes we just copied,
+ * thus creating a repeating pattern with a period length of back.
+ */
void av_memcpy_backptr(uint8_t *dst, int back, int cnt);
#endif /* AVUTIL_LZO_H */