1#ifndef CubeBsqHandler_h
2#define CubeBsqHandler_h
10#include "CubeIoHandler.h"
43 CubeBsqHandler(QFile * dataFile,
const QList<int> *virtualBandList,
44 const Pvl &label,
bool alreadyOnDisk);
IO Handler for Isis Cubes using the BSQ format.
CubeBsqHandler(QFile *dataFile, const QList< int > *virtualBandList, const Pvl &label, bool alreadyOnDisk)
Construct a BSQ IO handler.
virtual void readRaw(RawCubeChunk &chunkToFill)
This needs to populate the chunkToFill with unswapped raw bytes from the disk.
virtual void writeRaw(const RawCubeChunk &chunkToWrite)
This needs to write the chunkToWrite directly to disk with no modifications to the data itself.
int findGoodSize(int maxSize, int dimensionSize) const
This method attempts to compute a good chunk line size.
BigInt getChunkStartByte(const RawCubeChunk &chunk) const
This is a helper method that goes from chunk to file position.
CubeBsqHandler & operator=(const CubeBsqHandler &other)
Disallow assignments of this object.
CubeBsqHandler(const CubeBsqHandler &other)
Disallow copying of this object.
void updateLabels(Pvl &labels)
Function to update the labels with a Pvl object.
~CubeBsqHandler()
The destructor writes all cached data to disk.
Handles converting buffers to and from disk.
Container for cube-like labels.
A section of raw data on the disk.
This is free and unencumbered software released into the public domain.
long long int BigInt
Big int.