Isis Developer Reference
Isis::RawCubeChunk Class Reference

A section of raw data on the disk. More...

#include <RawCubeChunk.h>

Collaboration diagram for Isis::RawCubeChunk:
Collaboration graph

Public Member Functions

 RawCubeChunk (const Area3D &placement, int numBytes)
 This constructor creates a new cube chunk based on the provided placement and data size.
 
 RawCubeChunk (int startSample, int startLine, int startBand, int endSample, int endLine, int endBand, int numBytes)
 This constructor creates a new cube chunk based on the provided coordinates and data size.
 
virtual ~RawCubeChunk ()
 The destructor.
 
bool isDirty () const
 
QByteArray & getRawData () const
 
void setRawData (QByteArray rawData)
 Sets the chunk's raw data.
 
unsigned char getChar (int offset) const
 This method is currently not in use due to a faster way of getting data from the buffer (through the internal pointer).
 
short getShort (int offset) const
 
float getFloat (int offset) const
 
int getStartSample () const
 
int getStartLine () const
 
int getStartBand () const
 
int sampleCount () const
 
int lineCount () const
 
int bandCount () const
 
int getByteCount () const
 
void setData (unsigned char value, int offset)
 Sets the char at the given offset in the raw data buffer of this chunk.
 
void setData (short value, int offset)
 Sets the short at the given offset in the raw data buffer of this chunk.
 
void setData (const float &value, const int &offset)
 Sets the float at the given offset in the raw data buffer of this chunk.
 
void setDirty (bool dirty)
 Sets the chunk's dirty flag, indicating whether or not the chunk's data matches the data that is on disk.
 

Detailed Description

A section of raw data on the disk.

This encapsulates a chunk's data. The data stored in this class is literally what is stored on disk - an unswapped byte array. These should only be used by CubeIoHandler and it's children to manage what is in memory versus what is on disk.

Author
2011-06-15 Steven Lambright and Jai Rideout

Constructor & Destructor Documentation

◆ RawCubeChunk() [1/2]

Isis::RawCubeChunk::RawCubeChunk ( const Area3D & placement,
int numBytes )

This constructor creates a new cube chunk based on the provided placement and data size.

Parameters
placementthe 3D "cube" that this chunk will cover (inclusive)
numBytesthe number of raw data bytes in the chunk

References round.

◆ RawCubeChunk() [2/2]

Isis::RawCubeChunk::RawCubeChunk ( int startSample,
int startLine,
int startBand,
int endSample,
int endLine,
int endBand,
int numBytes )

This constructor creates a new cube chunk based on the provided coordinates and data size.

This constructor is provided in addition to the previous one for performance gain.

Parameters
startSamplethe starting sample of the chunk (inclusive)
startLinethe starting line of the chunk (inclusive)
startBandthe starting band of the chunk (inclusive)
endSamplethe ending sample of the chunk (inclusive)
endLinethe ending line of the chunk (inclusive)
endBandthe ending band of the chunk (inclusive)
numBytesthe number of raw data bytes in the chunk

◆ ~RawCubeChunk()

Isis::RawCubeChunk::~RawCubeChunk ( )
virtual

The destructor.

Member Function Documentation

◆ bandCount()

int Isis::RawCubeChunk::bandCount ( ) const
inline
Returns
the number of bands in the cube chunk.

◆ getByteCount()

int Isis::RawCubeChunk::getByteCount ( ) const
Returns
the size (in bytes) of the raw data buffer. If the raw data buffer is null, -1 is returned.

◆ getChar()

unsigned char Isis::RawCubeChunk::getChar ( int offset) const

This method is currently not in use due to a faster way of getting data from the buffer (through the internal pointer).

Parameters
offsetthe offset into the raw data buffer
Returns
the char at the position indicated by the given offset.

◆ getFloat()

float Isis::RawCubeChunk::getFloat ( int offset) const
Returns
the float at the position indicated by the given offset. The value returned is not byte swapped. This method is currently not in use due to a faster way of getting data from the buffer (through the internal pointer).
Parameters
offsetthe offset into the raw data buffer

◆ getRawData()

QByteArray & Isis::RawCubeChunk::getRawData ( ) const
inline
Returns
a reference to the raw data in this cube chunk.

◆ getShort()

short Isis::RawCubeChunk::getShort ( int offset) const
Returns
the short at the position indicated by the given offset. The value returned is not byte swapped. This method is currently not in use due to a faster way of getting data from the buffer (through the internal pointer).
Parameters
offsetthe offset into the raw data buffer

◆ getStartBand()

int Isis::RawCubeChunk::getStartBand ( ) const
inline
Returns
the first (inclusive) band of the cube chunk.

◆ getStartLine()

int Isis::RawCubeChunk::getStartLine ( ) const
inline
Returns
the first (inclusive) line of the cube chunk.

Referenced by Isis::BoxcarCachingAlgorithm::recommendChunksToFree().

◆ getStartSample()

int Isis::RawCubeChunk::getStartSample ( ) const
inline
Returns
the first (inclusive) sample of the cube chunk.

◆ isDirty()

bool Isis::RawCubeChunk::isDirty ( ) const
Returns
true if the data in this chunk does not match what is on disk.

◆ lineCount()

int Isis::RawCubeChunk::lineCount ( ) const
inline
Returns
the number of lines in the cube chunk.

◆ sampleCount()

int Isis::RawCubeChunk::sampleCount ( ) const
inline
Returns
the number of samples in the cube chunk.

◆ setData() [1/3]

void Isis::RawCubeChunk::setData ( const float & value,
const int & offset )

Sets the float at the given offset in the raw data buffer of this chunk.

The chunk's dirty flag is set to true.

Parameters
valuethe new float value
offsetthe position to place the new value at

◆ setData() [2/3]

void Isis::RawCubeChunk::setData ( short value,
int offset )

Sets the short at the given offset in the raw data buffer of this chunk.

The chunk's dirty flag is set to true.

Parameters
valuethe new short value
offsetthe position to place the new value at

◆ setData() [3/3]

void Isis::RawCubeChunk::setData ( unsigned char value,
int offset )

Sets the char at the given offset in the raw data buffer of this chunk.

The chunk's dirty flag is set to true.

Parameters
valuethe new char value
offsetthe position to place the new value at

◆ setDirty()

void Isis::RawCubeChunk::setDirty ( bool dirty)

Sets the chunk's dirty flag, indicating whether or not the chunk's data matches the data that is on disk.

Parameters
dirtybool indicating whether the chunk is dirty or not

◆ setRawData()

void Isis::RawCubeChunk::setRawData ( QByteArray rawData)

Sets the chunk's raw data.

This size of the new raw data must match that of the chunk's current raw data buffer.

Parameters
rawDatathe raw data

References _FILEINFO_, and Isis::IException::Programmer.


The documentation for this class was generated from the following files: