Isis 3 Developer Reference
CubeTileHandler.h
Go to the documentation of this file.
1 
24 #ifndef CubeTileHandler_h
25 #define CubeTileHandler_h
26 
27 #include "CubeIoHandler.h"
28 
29 namespace Isis {
30 
52  class CubeTileHandler : public CubeIoHandler {
53  public:
54  CubeTileHandler(QFile * dataFile, const QList<int> *virtualBandList,
55  const Pvl &label, bool alreadyOnDisk);
57 
58  void updateLabels(Pvl &label);
59 
60  protected:
61  virtual void readRaw(RawCubeChunk &chunkToFill);
62  virtual void writeRaw(const RawCubeChunk &chunkToWrite);
63 
64  private:
70  CubeTileHandler(const CubeTileHandler &other);
71 
79  CubeTileHandler &operator=(const CubeTileHandler &other);
80 
81  int findGoodSize(int maxSize, int dimensionSize) const;
82  BigInt getTileStartByte(const RawCubeChunk &chunk) const;
83  };
84 }
85 
86 #endif
long long int BigInt
Big int.
Definition: Constants.h:65
CubeTileHandler(QFile *dataFile, const QList< int > *virtualBandList, const Pvl &label, bool alreadyOnDisk)
Construct a tile handler.
Definition: CubeTileHandler.cpp:48
Handles converting buffers to and from disk.
Definition: CubeIoHandler.h:125
~CubeTileHandler()
Writes all data from memory to disk.
Definition: CubeTileHandler.cpp:72
A section of raw data on the disk.
Definition: RawCubeChunk.h:42
virtual void writeRaw(const RawCubeChunk &chunkToWrite)
This needs to write the chunkToWrite directly to disk with no modifications to the data itself...
Definition: CubeTileHandler.cpp:118
IO Handler for Isis Cubes using the tile format.
Definition: CubeTileHandler.h:52
Container for cube-like labels.
Definition: Pvl.h:135
void updateLabels(Pvl &label)
Update the cube labels so that this cube indicates what tile size it used.
Definition: CubeTileHandler.cpp:82
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
virtual void readRaw(RawCubeChunk &chunkToFill)
This needs to populate the chunkToFill with unswapped raw bytes from the disk.
Definition: CubeTileHandler.cpp:93