19 #ifndef _HiRISE_FELICS_Line_Cache_
20 #define _HiRISE_FELICS_Line_Cache_
74 static const char*
const
125 virtual unsigned long long bytes_read ()
const;
142 {
return Compressed_Bytes;}
152 {
return Decompressed_Bytes;}
170 virtual std::istream&
source ()
const;
200 virtual bool refill (
unsigned long max_amount = (
unsigned long)-1);
210 virtual void reset ();
256 static bool is_sync (
void* data_at);
A FELICS_Line_Cache extends a Line_Cache by adding management of FELICS compressed line data.
Definition: FELICS_Line_Cache.hh:68
virtual bool compressed_data() const
Tests if the image data is compressed.
Definition: FELICS_Line_Cache.hh:131
static const u_int_8 SYNC_PATTERN[]
The synchronization pattern that begins each compressed data block.
Definition: FELICS_Line_Cache.hh:83
virtual std::istream & source() const
Gets the data source stream.
Definition: FELICS_Line_Cache.cc:149
static const int SYNC_BYTES
The number of bytes in the FELICS sync pattern.
Definition: FELICS_Line_Cache.hh:79
static const int MAX_LINES_PER_BLOCK
The maximum number of image lines in a FELICS data block.
Definition: FELICS_Line_Cache.hh:95
virtual unsigned long long bytes_read() const
Gets the total number of bytes read from the source stream.
Definition: FELICS_Line_Cache.cc:154
static int decompress(char *compressed, unsigned int amount, char *decompressed, unsigned int width, unsigned int height)
Decompresses FELICS compressed data.
Definition: FELICS_Line_Cache.cc:492
static const int MIN_GAP_BYTES
The minimum number of gap value bytes in a gap sequence.
Definition: FELICS_Line_Cache.hh:99
virtual unsigned long long decompressed_bytes() const
Gets the amount of decompressed data that has been generated.
Definition: FELICS_Line_Cache.hh:151
static bool is_sync(void *data_at)
Tests for a FELICS synchronization pattern.
Definition: FELICS_Line_Cache.cc:162
virtual void reset()
Resets the cache to its empty state and the line structure to match the current structure of the mana...
Definition: FELICS_Line_Cache.cc:898
static const int SYNC_BYTE_FACTOR
The byte number multiplier factor used to create the FELICS synchronization pattern.
Definition: FELICS_Line_Cache.hh:91
virtual unsigned long long compressed_bytes() const
Gets the amount (bytes) of compressed data that has been processed.
Definition: FELICS_Line_Cache.hh:141
static const char *const ID
Class identification name with source code version and date.
Definition: FELICS_Line_Cache.hh:75
virtual bool refill(unsigned long max_amount=(unsigned long) -1)
Refills the Line_Cache storage.
Definition: FELICS_Line_Cache.cc:655
An Image_Line contains a cache of observation channel image pixel data.
Definition: Image_Line.hh:112
unsigned int width() const
Gets the print listing width.
Definition: Image_Line.hh:998
A Line_Cache manages the data contents for an Image_Line.
Definition: Line_Cache.hh:83
U_INT_8_TYPE u_int_8
8-bit unsigned integer type.
Definition: Data_Component.hh:56