• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2006 The Android Open Source Project
2 
3 #include <stdio.h>
4 #include <inttypes.h>
5 
6 class Decoder {
7  public:
8   Decoder();
9   ~Decoder();
10 
11   void          Open(char *filename);
12   void          Close();
13   int64_t       Decode(bool is_signed);
14   void          Read(char *dest, int len);
IsEOF()15   bool          IsEOF()          { return (end_ == next_) && feof(fstream_); }
16 
17  private:
18   static const int kBufSize = 4096;
19   static const int kDecodingSpace = 9;
20 
21   void          FillBuffer();
22 
23   char          *filename_;
24   FILE          *fstream_;
25   uint8_t       buf_[kBufSize];
26   uint8_t       *next_;
27   uint8_t       *end_;
28 };
29