GIFのLZW展開のC言語のソースコードを教えてください。

Independent JPEG Group のサンプルは難しすぎて
全然わかりませんでした。
例えば以下のコード、
/* Forward declarations */
METHODDEF(JDIMENSION) get_pixel_rows
JPP((j_compress_ptr cinfo, cjpeg_source_ptr sinfo));
↑プロトタイプ宣言? こんな書き方があるのですか?
とにかく、難しすぎてわかりませんでした。

どなたか、もう少しわかりやすく教えてください。
本当に困っています。お願いいたします。

例えば、あるGIFファイルをfopen関数なので開いて
展開したデータを配列に格納するなど、
展開したデータを配列に格納して、それを扱いたいです。
よろしくお願いいたします。