Isis Developer Reference
CubeTileHandler.h
Go to the documentation of this file.
1#ifndef CubeTileHandler_h
2#define CubeTileHandler_h
8/* SPDX-License-Identifier: CC0-1.0 */
9
10#include "CubeIoHandler.h"
11
12namespace Isis {
13
36 public:
37 CubeTileHandler(QFile * dataFile, const QList<int> *virtualBandList,
38 const Pvl &label, bool alreadyOnDisk);
40
41 void updateLabels(Pvl &label);
42
43 protected:
44 virtual void readRaw(RawCubeChunk &chunkToFill);
45 virtual void writeRaw(const RawCubeChunk &chunkToWrite);
46
47 private:
53 CubeTileHandler(const CubeTileHandler &other);
54
62 CubeTileHandler &operator=(const CubeTileHandler &other);
63
64 int findGoodSize(int maxSize, int dimensionSize) const;
65 BigInt getTileStartByte(const RawCubeChunk &chunk) const;
66 };
67}
68
69#endif
Handles converting buffers to and from disk.
Definition CubeIoHandler.h:109
IO Handler for Isis Cubes using the tile format.
Definition CubeTileHandler.h:35
void updateLabels(Pvl &label)
Update the cube labels so that this cube indicates what tile size it used.
Definition CubeTileHandler.cpp:66
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:102
virtual void readRaw(RawCubeChunk &chunkToFill)
This needs to populate the chunkToFill with unswapped raw bytes from the disk.
Definition CubeTileHandler.cpp:77
CubeTileHandler(QFile *dataFile, const QList< int > *virtualBandList, const Pvl &label, bool alreadyOnDisk)
Construct a tile handler.
Definition CubeTileHandler.cpp:32
~CubeTileHandler()
Writes all data from memory to disk.
Definition CubeTileHandler.cpp:56
Container for cube-like labels.
Definition Pvl.h:119
A section of raw data on the disk.
Definition RawCubeChunk.h:27
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
long long int BigInt
Big int.
Definition Constants.h:49