Isis Developer Reference
|
IO Handler for Isis Cubes. More...
#include <Cube.h>
Public Types | |
enum | Format { Bsq , Tile } |
These are the possible storage formats of ISIS cubes. More... | |
Public Member Functions | |
Cube () | |
Constructs a Cube object. | |
Cube (const FileName &fileName, QString access="r") | |
Construct a cube and open it for reading or reading/writing. | |
virtual | ~Cube () |
Destroys the Cube object. | |
void | fromIsd (const FileName &fileName, Pvl &label, nlohmann::json &isd, QString access) |
Initialize Cube data from a PVL label and JSON ISD. | |
void | fromIsd (const FileName &fileName, FileName &labelFile, FileName &isdFile, QString access) |
Initialize Cube data from a PVL label and JSON ISD. | |
void | fromLabel (const FileName &fileName, Pvl &label, QString access) |
Initialize Cube data from a PVL label. | |
bool | isOpen () const |
Test if a cube file has been opened/created. | |
bool | isProjected () const |
Returns true if the labels of the cube appear to have a valid mapping group. | |
bool | isReadOnly () const |
Test if the opened cube is read-only, that is write operations will fail if this is true. | |
bool | isReadWrite () const |
Test if the opened cube is read-write, that is read and write operations should succeed if this is true. | |
bool | labelsAttached () const |
Test if labels are attached. | |
void | attachSpiceFromIsd (nlohmann::json Isd) |
void | close (bool remove=false) |
Closes the cube and updates the labels. | |
Cube * | copy (FileName newFile, const CubeAttributeOutput &newFileAttributes) |
Copies the cube to the new fileName. | |
void | create (const QString &cfile) |
This method will create an isis cube for writing. | |
void | create (const QString &cfile, const CubeAttributeOutput &att) |
This method will create an isis cube for writing. | |
void | open (const QString &cfile, QString access="r") |
This method will open an existing isis cube for reading or reading/writing. | |
void | reopen (QString access="r") |
This method will reopen an isis sube for reading or reading/writing. | |
void | read (Blob &blob, const std::vector< PvlKeyword > keywords=std::vector< PvlKeyword >()) const |
This method will read data from the specified Blob object. | |
void | read (Buffer &rbuf) const |
This method will read a buffer of data from the cube as specified by the contents of the Buffer object. | |
OriginalLabel | readOriginalLabel (const QString &name="IsisCube") const |
Read the original PDS3 label from a cube. | |
CubeStretch | readCubeStretch (QString name="CubeStretch", const std::vector< PvlKeyword > keywords=std::vector< PvlKeyword >()) const |
Read a Stretch from a cube. | |
OriginalXmlLabel | readOriginalXmlLabel () const |
Read the original PDS4 label from a cube. | |
History | readHistory (const QString &name="IsisCube") const |
Read the History from the Cube. | |
ImagePolygon | readFootprint () const |
Read the footprint polygon for the Cube. | |
Table | readTable (const QString &name) |
Read a Table from the cube. | |
void | write (Blob &blob, bool overwrite=true) |
This method will write a blob of data (e.g. | |
void | write (const Table &table) |
Write a Table to the Cube. | |
void | write (const CubeStretch &cubeStretch) |
Write a Stretch to the Cube. | |
void | write (OriginalLabel &lab) |
This method will write an OriginalLabel object. | |
void | write (const OriginalXmlLabel &lab) |
This method will write an OriginalXmlLabel object. | |
void | write (History &history, const QString &name="IsisCube") |
Write an updated History to the Cube. | |
void | write (const ImagePolygon &polygon) |
Write a polygon to the Cube. | |
void | write (Buffer &wbuf) |
This method will write a buffer of data from the cube as specified by the contents of the Buffer object. | |
void | setBaseMultiplier (double base, double mult) |
Used prior to the Create method, this will specify the base and multiplier for converting 8-bit/16-bit back and forth between 32-bit: | |
void | setMinMax (double min, double max) |
Used prior to the Create method, this will compute a good base and multiplier value given the minimum/maximum range of the 32bit data. | |
void | setByteOrder (ByteOrder byteOrder) |
Used prior to the Create method, this will specify the byte order of pixels, either least or most significant byte. | |
void | setDimensions (int ns, int nl, int nb) |
Used prior to the Create method to specify the size of the cube. | |
void | setExternalDnData (FileName cubeFileWithDnData) |
Used to set external dn data to cube. | |
void | setFormat (Format format) |
Used prior to the Create method, this will specify the format of the cube, either band, sequential or tiled. | |
void | setLabelsAttached (bool attached) |
Use prior to calling create, this sets whether or not to use separate label and data files. | |
void | setLabelSize (int labelBytes) |
Used prior to the Create method, this will allocate a specific number of bytes in the label area for attached files. | |
void | setPixelType (PixelType pixelType) |
Used prior to the Create method, this will specify the output pixel type. | |
void | setVirtualBands (const QList< QString > &vbands) |
This allows the programmer to specify a subset of bands to work with. | |
void | setVirtualBands (const std::vector< QString > &vbands) |
This is a deprecated version of setVirtualBands(const QList<QString> &). | |
void | relocateDnData (FileName dnDataFile) |
Relocates the DN data for a cube to an external cube label file. | |
virtual int | bandCount () const |
Returns the number of virtual bands for the cube. | |
double | base () const |
Returns the base value for converting 8-bit/16-bit pixels to 32-bit. | |
ByteOrder | byteOrder () const |
Returns the byte order/endian-ness of the cube file. | |
Camera * | camera () |
Return a camera associated with the cube. | |
FileName | externalCubeFileName () const |
If this is an external cube label file, this will give you the cube dn file that this label references. | |
virtual QString | fileName () const |
Returns the opened cube's filename. | |
Format | format () const |
virtual Histogram * | histogram (const int &band=1, QString msg="Gathering histogram") |
This method returns a pointer to a Histogram object which allows the program to obtain and use various statistics and histogram information from the cube. | |
virtual Histogram * | histogram (const int &band, const double &validMin, const double &validMax, QString msg="Gathering histogram") |
This method returns a pointer to a Histogram object which allows the program to obtain and use various statistics and histogram information from the cube. | |
Pvl * | label () const |
Returns a pointer to the IsisLabel object associated with the cube. | |
int | labelSize (bool actual=false) const |
Returns the number of bytes used by the label. | |
int | lineCount () const |
double | multiplier () const |
Returns the multiplier value for converting 8-bit/16-bit pixels to 32-bit. | |
PixelType | pixelType () const |
virtual int | physicalBand (const int &virtualBand) const |
This method will return the physical band number given a virtual band number. | |
Projection * | projection () |
int | sampleCount () const |
Statistics * | statistics (const int &band=1, QString msg="Gathering statistics") |
This method returns a pointer to a Statistics object which allows the program to obtain and use various statistics from the cube. | |
Statistics * | statistics (const int &band, const double &validMin, const double &validMax, QString msg="Gathering statistics") |
This method returns a pointer to a Statistics object which allows the program to obtain and use various statistics from the cube. | |
bool | storesDnData () const |
This method returns a boolean value. | |
void | addCachingAlgorithm (CubeCachingAlgorithm *) |
This will add the given caching algorithm to the list of attempted caching algorithms. | |
void | clearIoCache () |
This will clear excess RAM used for quicker IO in the cube. | |
bool | deleteBlob (QString BlobName, QString BlobType) |
This method will delete a blob label object from the cube as specified by the Blob type and name. | |
void | deleteGroup (const QString &group) |
Deletes a group from the cube labels. | |
PvlGroup & | group (const QString &group) const |
Read a group from the cube into a Label. | |
bool | hasGroup (const QString &group) const |
Return if the cube has a specified group in the labels. | |
bool | hasTable (const QString &name) |
Check to see if the cube contains a pvl table by the provided name. | |
bool | hasBlob (const QString &name, const QString &type) |
Check to see if the cube contains a BLOB. | |
void | putGroup (const PvlGroup &group) |
Adds a group in a Label to the cube. | |
void | latLonRange (double &minLatitude, double &maxLatitude, double &minLongitude, double &maxLongitude) |
Returns the latitude and longitude range for the Cube. | |
IO Handler for Isis Cubes.
This class is used to open, create, read, and write data from Isis cube files.
enum Isis::Cube::Format |
These are the possible storage formats of ISIS cubes.
There is an internal IO handler for each one of these.
Enumerator | |
---|---|
Bsq | Cubes are stored in band-sequential format, that is the order of the pixels in the file (on disk) is: S1,L1,B1 S2,L1,B1 and so on until ... SN,L1,B1 S1,L2,B1 and so on until ... S1,LN,B1 S1,L1,B2 S2,L1,B2 and so on until ... S1,L1,BN The idea is the cubes are stored left-to-right, top-to-bottom, then front-to-back. |
Tile | Cubes are stored in tile format, that is the order of the pixels in the file (on disk) is BSQ within a given sub-area defined by the Tile IO handler. Typically these tiles are around 1MB for efficiency. The idea is the cubes are stored left-to-right, top-to-bottom inside the tiles (which have 1 band). The tiles are themselves in BSQ order also. Please note that this can cause cubes to be larger on disk due to the tile size not being evenly divisible into the cube size. Cube: ------------------------------ |Tile *Tile *Tile *Tile *Tile|* | 0 * 1 * 2 * 3 * 4 |* | * * * * |* |****************************|* |Tile *Tile *Tile *Tile *Tile|* | 5 * 6 * 7 * 8 * 9 |* | * * * * |* |****************************|* |Tile *Tile *Tile *Tile *Tile|* ------------------------------* * 10 * 11 * 12 * 13 * 14 * ******************************* The symbol '*' denotes tile boundaries. The symbols '-' and '|' denote cube boundaries. |
Isis::Cube::Cube | ( | const FileName & | fileName, |
QString | access = "r" ) |
Construct a cube and open it for reading or reading/writing.
fileName | Name of the cube file to open. Environment variables in the filename will be automatically expanded. |
access | Defines how the cube will be opened. Either read-only "r" or read-write "rw". |
References fileName(), and open().
void Isis::Cube::addCachingAlgorithm | ( | CubeCachingAlgorithm * | algorithm | ) |
This will add the given caching algorithm to the list of attempted caching algorithms.
The algorithms are tried in the opposite order that they were added - the first algorithm added is the last algorithm tried.
RegionalCachingAlgorithm is the only initial caching algorithm and works well for most cases. The caching algorithm only apply to the opened Cube and is reset by any changes to the open status of the Cube.
This method takes ownership of algorithm.
algorithm | The caching algorithm to add to the Cube for I/O |
References _FILEINFO_, Isis::CubeIoHandler::addCachingAlgorithm(), isOpen(), and Isis::IException::Programmer.
Referenced by Isis::DemShape::DemShape(), and Isis::ProcessMapMosaic::StartProcess().
void Isis::Cube::attachSpiceFromIsd | ( | nlohmann::json | Isd | ) |
References Isis::Spice::bodyRotation(), camera(), Isis::PvlObject::deleteObject(), Isis::Spice::getStoredNaifKeywords(), group(), Isis::Spice::instrumentPosition(), Isis::Spice::instrumentRotation(), label(), Isis::PvlObject::object(), Isis::Spice::solarLongitude(), Isis::Spice::sunPosition(), Isis::toString(), and write().
Referenced by fromIsd().
|
virtual |
Returns the number of virtual bands for the cube.
Referenced by Isis::Process::CalculateStatistics(), Isis::Camera::Camera(), Isis::Process::CheckRequirements(), copy(), Isis::CubeViewport::cubeBands(), Isis::CubeViewport::CubeViewport(), Isis::CubeViewport::getAllWhatsThisInfo(), histogram(), Isis::ImageHistogram::ImageHistogram(), Isis::OverlapStatistics::OverlapStatistics(), Isis::Reduce::Reduce(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), and statistics().
double Isis::Cube::base | ( | ) | const |
Returns the base value for converting 8-bit/16-bit pixels to 32-bit.
\[ out = in * multiplier + base \]
Referenced by copy(), and setBaseMultiplier().
ByteOrder Isis::Cube::byteOrder | ( | ) | const |
Returns the byte order/endian-ness of the cube file.
Cubes in a native byte order are quicker to read/write than those who must correct their byte order.
Referenced by setByteOrder().
Camera * Isis::Cube::camera | ( | ) |
Return a camera associated with the cube.
The generation of the camera can throw an exception, so you might want to catch errors if that interests you.
References Isis::CameraFactory::Create(), and isOpen().
Referenced by attachSpiceFromIsd(), Isis::CameraStatistics::CameraStatistics(), Isis::ImagePolygon::initCube(), Isis::JigsawSetupDialog::JigsawSetupDialog(), latLonRange(), Isis::Chip::Load(), Isis::SunShadowTool::mouseButtonPress(), Isis::PhotometricFunction::PhotometricFunction(), and Isis::CameraPointInfo::SetCube().
void Isis::Cube::clearIoCache | ( | ) |
This will clear excess RAM used for quicker IO in the cube.
This should only be called if you need hundreds of cubes opened simultaneously. The IO cache will start growing again on future IO's.
References Isis::CubeIoHandler::clearCache().
void Isis::Cube::close | ( | bool | removeIt = false | ) |
Closes the cube and updates the labels.
Optionally, it deletes the cube if requested.
removeIt | (Default value = false) Indicates if the file should be removed/deleted. |
References isOpen(), and isReadWrite().
Referenced by Isis::ProcessMosaic::EndProcess(), Isis::ImageOverlapSet::FindImageOverlaps(), fromIsd(), fromLabel(), Isis::Process::PropagateTables(), reopen(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessMosaic::StartProcess(), ~Cube(), and Isis::ProcessMosaic::~ProcessMosaic().
Cube * Isis::Cube::copy | ( | FileName | newFile, |
const CubeAttributeOutput & | newFileAttributes ) |
Copies the cube to the new fileName.
newFile | FileName |
newFileAttributes | CubeAttributeOutput |
References _FILEINFO_, Isis::PvlObject::addObject(), bandCount(), base(), Isis::CubeIoHandler::clearCache(), create(), Cube(), Isis::DetachedLabel, Isis::ExternalLabel, fileName(), Isis::PvlObject::findObject(), isOpen(), isReadWrite(), label(), labelSize(), lineCount(), multiplier(), Isis::PvlObject::object(), Isis::PvlObject::objects(), pixelType(), read(), Isis::Real, sampleCount(), setBaseMultiplier(), setByteOrder(), setDimensions(), setExternalDnData(), setFormat(), setLabelsAttached(), setLabelSize(), setMinMax(), setPixelType(), Isis::IException::Unknown, Isis::IException::User, and write().
void Isis::Cube::create | ( | const QString & | cubeFileName | ) |
This method will create an isis cube for writing.
The programmer should make appropriate calls to Set methods before invoking Create. If none are made there are internal defaults which are:
cubeFileName | Name of the cube file to open. If the extenstion ".cub" is not given it will be appended (i.e., the extension of .cub is forced). Environment variables in the filename will be automatically expanded as well. |
References _FILEINFO_, Isis::PvlObject::addObject(), Bsq, Isis::ByteOrderName(), Isis::FileName::expanded(), Isis::IException::Io, isOpen(), Isis::None, Isis::FileName::original(), Isis::PixelTypeName(), Isis::Preference::Preferences(), Isis::IException::Programmer, Isis::SizeOf(), Isis::toString(), Isis::IException::Unknown, Isis::CubeIoHandler::updateLabels(), and Isis::IException::User.
Referenced by copy(), create(), Isis::ImageImporter::createOutput(), fromLabel(), Isis::Process::SetOutputCube(), and Isis::ProcessMosaic::StartProcess().
void Isis::Cube::create | ( | const QString & | cubeFileName, |
const CubeAttributeOutput & | att ) |
This method will create an isis cube for writing.
The programmer should make appropriate calls to Set methods before invoking Create. If none are made there are internal defaults which are:
cubeFileName | Name of the cube file to open. If the extenstion ".cub" is not given it will be appended (i.e., the extension of .cub is forced). Environment variables in the filename will be automatically expanded as well. |
att | CubeAttributeOutput |
References Isis::AttachedLabel, create(), setByteOrder(), setFormat(), setLabelsAttached(), setMinMax(), and setPixelType().
bool Isis::Cube::deleteBlob | ( | QString | BlobName, |
QString | BlobType ) |
This method will delete a blob label object from the cube as specified by the Blob type and name.
If blob does not exist it will do nothing and return false.
BlobName | blob to be deleted |
BlobType | type of blob to search for (Polygon, Table, etc) |
References Isis::PvlObject::deleteObject(), Isis::PvlObject::object(), and Isis::PvlObject::objects().
Referenced by Isis::ProcessMosaic::StartProcess().
void Isis::Cube::deleteGroup | ( | const QString & | group | ) |
Deletes a group from the cube labels.
If the group does not exist nothing happens; otherwise the group is removed. This will only work on output cubes, therefore, input cubes will not be updated.
[out] | group | Name of the group to delete. |
References Isis::PvlObject::findObject(), group(), and label().
FileName Isis::Cube::externalCubeFileName | ( | ) | const |
If this is an external cube label file, this will give you the cube dn file that this label references.
References _FILEINFO_, Isis::PvlObject::findObject(), isOpen(), storesDnData(), and Isis::IException::Unknown.
Referenced by Isis::ControlPointEditWidget::createControlPoint(), Isis::Image::deleteFromDisk(), and Isis::Shape::deleteFromDisk().
|
virtual |
Returns the opened cube's filename.
This is the name of the file which contains the labels of the cube and not necessarily the cube data.
References Isis::FileName::expanded(), and isOpen().
Referenced by Isis::Workspace::addCubeViewport(), Isis::Process::CheckRequirements(), copy(), Isis::ImagePolygon::Create(), Isis::StereoTool::createPoint(), Cube(), Isis::CubeViewport::CubeViewport(), Isis::FileTool::exportToList(), fromIsd(), fromIsd(), fromLabel(), Isis::CubeViewport::getAllWhatsThisInfo(), Isis::ImagePolygon::initCube(), Isis::CubeViewport::keyPressEvent(), Isis::Chip::Load(), Isis::Chip::Load(), Isis::Chip::Load(), Isis::OverlapStatistics::OverlapStatistics(), putGroup(), readCubeStretch(), readFootprint(), readOriginalLabel(), readOriginalXmlLabel(), readTable(), Isis::AbstractPlotTool::repaintViewports(), Isis::ScatterPlotWindow::ScatterPlotWindow(), Isis::CubeViewport::setCaption(), Isis::CubeViewport::setTrackingCube(), Isis::ProcessMosaic::StartProcess(), Isis::ChipViewport::stretchFromCubeViewport(), Isis::UniversalGroundMap::UniversalGroundMap(), write(), and write().
Cube::Format Isis::Cube::format | ( | ) | const |
Referenced by setFormat().
void Isis::Cube::fromIsd | ( | const FileName & | fileName, |
FileName & | labelFile, | ||
FileName & | isdFile, | ||
QString | access ) |
Initialize Cube data from a PVL label and JSON ISD.
fileName | Name of the cube file to open. Environment variables in the filename will be automatically expanded. |
labelFile | Path to PVL label representing the new Cube label |
isdPath | Path to Ale compatible ISD |
access | Defines how the cube will be opened. Either read-only "r" or read-write "rw". |
References fileName(), fromIsd(), Isis::IException::Io, label(), and reopen().
void Isis::Cube::fromIsd | ( | const FileName & | fileName, |
Pvl & | label, | ||
nlohmann::json & | isd, | ||
QString | access ) |
Initialize Cube data from a PVL label and JSON ISD.
fileName | Name of the cube file to open. Environment variables in the filename will be automatically expanded. |
label | PVL label object representing the new Cube label |
isd | JSON object containing Ale compatible ISD |
access | Defines how the cube will be opened. Either read-only "r" or read-write "rw". |
References attachSpiceFromIsd(), close(), fileName(), fromLabel(), label(), and open().
Referenced by fromIsd().
Initialize Cube data from a PVL label.
fileName | Name of the cube file to open. Environment variables in the filename will be automatically expanded. |
label | PVL label object representing the new Cube label |
access | Defines how the cube will be opened. Either read-only "r" or read-write "rw". |
References close(), create(), fileName(), Isis::PvlObject::findObject(), label(), open(), and putGroup().
Referenced by fromIsd().
PvlGroup & Isis::Cube::group | ( | const QString & | group | ) | const |
Read a group from the cube into a Label.
If the group does not exist an exception will be thrown.
[out] | group | Name of the group to get |
References Isis::PvlObject::findObject(), group(), and label().
Referenced by attachSpiceFromIsd(), deleteGroup(), group(), hasGroup(), Isis::HiLab::HiLab(), Isis::HiCalData::load(), putGroup(), and Isis::CubeViewport::setTrackingCube().
bool Isis::Cube::hasBlob | ( | const QString & | name, |
const QString & | type ) |
Check to see if the cube contains a BLOB.
name | The name of the BLOB to search for |
type | The type of the BLOB to search for |
References label(), Isis::PvlObject::object(), and Isis::PvlObject::objects().
Referenced by Isis::CameraFactory::Create(), hasTable(), and Isis::Spice::Spice().
bool Isis::Cube::hasGroup | ( | const QString & | group | ) | const |
Return if the cube has a specified group in the labels.
[out] | group | Name of the group to check. |
References Isis::PvlObject::findObject(), group(), and label().
Referenced by Isis::CubeViewport::CubeViewport(), and latLonRange().
bool Isis::Cube::hasTable | ( | const QString & | name | ) |
Check to see if the cube contains a pvl table by the provided name.
name | The name of the pvl table to search for |
References hasBlob().
Referenced by Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera().
|
virtual |
This method returns a pointer to a Histogram object which allows the program to obtain and use various statistics and histogram information from the cube.
Cube does not retain ownership of the returned pointer - please delete it when you are done with it.
[in] | band | Returns the histogram for the specified band. If the user specifies 0 for this parameter, the method will loop through every band in the cube and accumulate a histogram from all of them |
validMin | The start of the bin range and valid data range for the histogram | |
validMax | The end of the bin range and valid data range for the histogram | |
msg | The message to display with the percent process while gathering histogram data |
ProgrammerError | Band was less than zero or more than the number of bands in the cube. |
References _FILEINFO_, bandCount(), Isis::Progress::CheckStatus(), Isis::Buffer::DoubleBuffer(), isOpen(), lineCount(), Isis::IException::Programmer, read(), Isis::LineManager::SetLine(), Isis::Progress::SetMaximumSteps(), Isis::Progress::SetText(), Isis::Buffer::size(), Isis::ValidMaximum, and Isis::ValidMinimum.
|
virtual |
This method returns a pointer to a Histogram object which allows the program to obtain and use various statistics and histogram information from the cube.
Cube does not retain ownership of the returned pointer - please delete it when you are done with it.
[in] | band | (Default value is 1) Returns the histogram for the specified band.If the user specifies 0 for this parameter, the method will loop through every band in the cube and accumulate a histogram from all of them |
msg | The message to display with the percent process while gathering histogram data |
IsisProgrammerError | Band was less than zero or more than the number of bands in the cube. |
References histogram(), Isis::ValidMaximum, and Isis::ValidMinimum.
Referenced by histogram().
bool Isis::Cube::isOpen | ( | ) | const |
Test if a cube file has been opened/created.
References open().
Referenced by addCachingAlgorithm(), camera(), close(), copy(), create(), Isis::CubeViewport::CubeViewport(), externalCubeFileName(), fileName(), histogram(), isReadOnly(), open(), projection(), read(), read(), relocateDnData(), Isis::Process::SetInputCube(), statistics(), write(), and write().
bool Isis::Cube::isProjected | ( | ) | const |
Returns true if the labels of the cube appear to have a valid mapping group.
This returning true does not guarantee that the cube can project or that the Projection() method will succeed.
References Isis::PvlObject::findObject(), and label().
bool Isis::Cube::isReadOnly | ( | ) | const |
Test if the opened cube is read-only, that is write operations will fail if this is true.
A cube must be opened in order to call this method.
References _FILEINFO_, isOpen(), and Isis::IException::Programmer.
Referenced by isReadWrite(), putGroup(), and write().
bool Isis::Cube::isReadWrite | ( | ) | const |
Test if the opened cube is read-write, that is read and write operations should succeed if this is true.
A cube must be opened in order to call this method.
References isReadOnly().
Referenced by close(), copy(), Isis::ProcessByBrick::ProcessCubeInPlace(), Isis::ProcessByBrick::StartProcess(), and Isis::ProcessByBrick::StartProcess().
Pvl * Isis::Cube::label | ( | ) | const |
Returns a pointer to the IsisLabel object associated with the cube.
Modifications made to the label will be written when the file is closed if it was opened read-write or created. Take care not to mangle the Core Object as this can produce unexpected results when a new attempt is made to open the file. This pointer is invalid as soon as the cube is closed.
Referenced by Isis::AlphaCube::AlphaCube(), Isis::ApolloMetricCamera::ApolloMetricCamera(), Isis::ApolloPanoramicCamera::ApolloPanoramicCamera(), attachSpiceFromIsd(), Isis::Camera::Camera(), Isis::CameraFactory::CameraVersion(), Isis::Chandrayaan1M3Camera::Chandrayaan1M3Camera(), Isis::ClipperNacRollingShutterCamera::ClipperNacRollingShutterCamera(), Isis::ClipperPushBroomCamera::ClipperPushBroomCamera(), Isis::ClipperWacFcCamera::ClipperWacFcCamera(), Isis::ObservationNumber::Compose(), Isis::SerialNumber::Compose(), copy(), Isis::CameraFactory::Create(), Isis::ProjectionFactory::CreateFromCube(), Isis::CrismCamera::CrismCamera(), Isis::CTXCamera::CTXCamera(), Isis::DawnFcCamera::DawnFcCamera(), Isis::DawnVirCamera::DawnVirCamera(), deleteGroup(), Isis::DemShape::DemShape(), fromIsd(), fromIsd(), fromLabel(), Isis::CubeViewport::getBandFilterName(), group(), hasBlob(), hasGroup(), Isis::HayabusaAmicaCamera::HayabusaAmicaCamera(), Isis::HayabusaNirsCamera::HayabusaNirsCamera(), Isis::HiresCamera::HiresCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::HrscCamera::HrscCamera(), Isis::Hyb2OncCamera::Hyb2OncCamera(), Isis::IdealCamera::IdealCamera(), Isis::ImageImporter::import(), Isis::Image::isFootprintable(), Isis::Shape::isFootprintable(), isProjected(), Isis::IssNACamera::IssNACamera(), Isis::IssWACamera::IssWACamera(), Isis::JunoCamera::JunoCamera(), Isis::KaguyaMiCamera::KaguyaMiCamera(), Isis::KaguyaTcCamera::KaguyaTcCamera(), Isis::Kernels::Kernels(), Isis::LoHighCamera::LoHighCamera(), Isis::LoMediumCamera::LoMediumCamera(), Isis::LroNarrowAngleCamera::LroNarrowAngleCamera(), Isis::LroWideAngleCamera::LroWideAngleCamera(), Isis::LwirCamera::LwirCamera(), Isis::MarciCamera::MarciCamera(), Isis::Mariner10Camera::Mariner10Camera(), Isis::MdisCamera::MdisCamera(), Isis::MexHrscSrcCamera::MexHrscSrcCamera(), Isis::MiniRF::MiniRF(), Isis::MocNarrowAngleCamera::MocNarrowAngleCamera(), Isis::MocWideAngleCamera::MocWideAngleCamera(), Isis::MsiCamera::MsiCamera(), Isis::NewHorizonsLeisaCamera::NewHorizonsLeisaCamera(), Isis::NewHorizonsLorriCamera::NewHorizonsLorriCamera(), Isis::NewHorizonsMvicFrameCamera::NewHorizonsMvicFrameCamera(), Isis::NewHorizonsMvicTdiCamera::NewHorizonsMvicTdiCamera(), Isis::NirCamera::NirCamera(), Isis::OsirisRexOcamsCamera::OsirisRexOcamsCamera(), Isis::OsirisRexTagcamsCamera::OsirisRexTagcamsCamera(), projection(), Isis::Process::PropagateTables(), putGroup(), read(), Isis::ProjectionFactory::RingsCreateFromCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::RosettaVirtisCamera::RosettaVirtisCamera(), Isis::Process::SetOutputCube(), Isis::ProcessMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::Spice::Spice(), Isis::SsiCamera::SsiCamera(), Isis::ProcessMosaic::StartProcess(), Isis::TgoCassisCamera::TgoCassisCamera(), Isis::ThemisIrCamera::ThemisIrCamera(), Isis::ThemisVisCamera::ThemisVisCamera(), Isis::UniversalGroundMap::UniversalGroundMap(), Isis::AlphaCube::UpdateGroup(), Isis::UvvisCamera::UvvisCamera(), Isis::VikingCamera::VikingCamera(), Isis::VimsCamera::VimsCamera(), and Isis::VoyagerCamera::VoyagerCamera().
bool Isis::Cube::labelsAttached | ( | ) | const |
Test if labels are attached.
If a cube is open, then this indicates whether or not the opened cube's labels are attached. If a cube is not open, then this indicates whether or not a cube will be created with attached labels if create(...) is called.
int Isis::Cube::labelSize | ( | bool | actual = false | ) | const |
Returns the number of bytes used by the label.
actual | True for consumed size, false for allocated size (i.e. the number of bytes in the cube set aside for the label). |
References labelSize().
Referenced by copy(), labelSize(), open(), and Isis::Process::SetOutputCube().
void Isis::Cube::latLonRange | ( | double & | minLatitude, |
double & | maxLatitude, | ||
double & | minLongitude, | ||
double & | maxLongitude ) |
Returns the latitude and longitude range for the Cube.
More accurate than the minimum and maximum latitude and longitude from the mapping group.
[out] | minLatitude | minimum latitude present in the cube |
[out] | maxLatitude | maximum latitude present in the cube |
[out] | minLongitude | minimum longitude present in the cube |
[out] | maxLongitude | maximum longitude present in the cube |
References _FILEINFO_, camera(), hasGroup(), lineCount(), projection(), sampleCount(), Isis::IException::Unknown, and Isis::IException::User.
int Isis::Cube::lineCount | ( | ) | const |
Referenced by Isis::AlphaCube::AlphaCube(), Isis::Process::CalculateStatistics(), Isis::Camera::Camera(), Isis::Process::CheckRequirements(), copy(), Isis::StereoTool::createPoint(), Isis::CubeViewport::cubeContentsChanged(), Isis::CubeViewport::cubeDataChanged(), Isis::CubeViewport::cubeLines(), Isis::CubeViewport::CubeViewport(), Isis::Enlarge::Enlarge(), Isis::ControlNetStatistics::GenerateImageStats(), Isis::CubeViewport::getAllWhatsThisInfo(), Isis::UniversalGroundMap::GroundRange(), Isis::StretchTool::histFromCube(), histogram(), Isis::ImagePolygon::initCube(), Isis::ImageExporter::initializeProcess(), latLonRange(), Isis::OverlapStatistics::OverlapStatistics(), Isis::Reduce::Reduce(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::RosettaOsirisCamera::RosettaOsirisCamera(), Isis::CameraPointInfo::SetCenter(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::CameraPointInfo::SetSample(), statistics(), Isis::StretchTool::statsFromCube(), Isis::TileManager::TileManager(), Isis::Enlarge::UpdateOutputLabel(), and Isis::Reduce::UpdateOutputLabel().
double Isis::Cube::multiplier | ( | ) | const |
Returns the multiplier value for converting 8-bit/16-bit pixels to 32-bit.
\[ out = in * multiplier + base \]
Referenced by copy().
void Isis::Cube::open | ( | const QString & | cubeFileName, |
QString | access = "r" ) |
This method will open an existing isis cube for reading or reading/writing.
Any input cube attributes following the file name will be applied.
[in] | cubeFileName | Name of the cube file to open. Environment variables in the filename will be automatically expanded. |
[in] | access | (Default value of "r") Defines how the cube will be accessed. Either read-only "r" or read-write "rw". |
References _FILEINFO_, Bsq, Isis::FileName::expanded(), Isis::PvlObject::findObject(), Isis::IException::Io, isOpen(), labelSize(), Isis::FileName::path(), Isis::IException::Programmer, and setVirtualBands().
Referenced by Isis::Workspace::addCubeViewport(), Isis::Workspace::addCubeViewportFromList(), Isis::Equalization::calculateOverlapStatistics(), Isis::CameraStatistics::CameraStatistics(), Isis::ShapeModelFactory::create(), Cube(), Isis::Equalization::errorCheck(), Isis::HiEqualization::errorCheck(), Isis::ImageOverlapSet::FindImageOverlaps(), fromIsd(), fromLabel(), Isis::GisGeometry::GisGeometry(), isOpen(), Isis::Blobber::load(), Isis::Equalization::loadInputs(), Isis::Process::PropagateTables(), reopen(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::Process::SetInputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), and Isis::ProcessMosaic::StartProcess().
|
virtual |
This method will return the physical band number given a virtual band number.
Physical and virtual bands always match unless the programmer made a call to SetVirtualBand prior to opening the cube.
virtualBand | Virtual band to translate to physical band. |
References _FILEINFO_, physicalBand(), Isis::IException::Programmer, and Isis::toString().
Referenced by Isis::CubeViewport::getAllWhatsThisInfo(), and physicalBand().
PixelType Isis::Cube::pixelType | ( | ) | const |
Referenced by copy(), Isis::CubeViewport::CubeViewport(), Isis::DemShape::DemShape(), Isis::StretchTool::histFromCube(), Isis::ImageHistogram::ImageHistogram(), Isis::ImagePolygon::initCube(), Isis::OverlapStatistics::OverlapStatistics(), Isis::ScatterPlotWindow::paint(), Isis::Reduce::Reduce(), Isis::ScatterPlotWindow::setMousePosition(), Isis::Process::SetOutputCube(), setPixelType(), and Isis::StretchTool::statsFromCube().
Projection * Isis::Cube::projection | ( | ) |
References Isis::ProjectionFactory::CreateFromCube(), isOpen(), and label().
Referenced by Isis::CubeViewport::CubeViewport(), Isis::DemShape::DemShape(), Isis::ImagePolygon::initCube(), latLonRange(), Isis::Chip::Load(), Isis::OverlapStatistics::OverlapStatistics(), and Isis::ProcessMapMosaic::StartProcess().
void Isis::Cube::putGroup | ( | const PvlGroup & | group | ) |
Adds a group in a Label to the cube.
If the group already exists in the cube it will be completely overwritten. This will only work on output cubes, therefore, input cubes will not be updated.
[in] | group | Label containing the group to put. |
References _FILEINFO_, fileName(), Isis::PvlObject::findObject(), group(), isReadOnly(), label(), Isis::PvlContainer::name(), and Isis::IException::Programmer.
Referenced by fromLabel(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), and Isis::ProcessMapMosaic::SetOutputCube().
void Isis::Cube::read | ( | Blob & | blob, |
const std::vector< PvlKeyword > | keywords = std::vector<PvlKeyword>() ) const |
This method will read data from the specified Blob object.
[in] | blob | The Blob data to be loaded |
References _FILEINFO_, Isis::CubeIoHandler::dataFileMutex(), isOpen(), label(), and Isis::IException::Programmer.
Referenced by Isis::CubeViewport::bluePixel(), Isis::Process::CalculateStatistics(), copy(), Isis::CSMCamera::CSMCamera(), Isis::InterestOperator::FindOverlapByImageFootPrint(), Isis::CubeViewport::grayPixel(), Isis::CubeViewport::greenPixel(), Isis::StretchTool::histFromCube(), histogram(), Isis::ImageHistogram::ImageHistogram(), Isis::DemShape::localRadius(), Isis::Nearest::operator()(), Isis::Average::operator()(), Isis::OverlapStatistics::OverlapStatistics(), Isis::ScatterPlotWindow::paint(), Isis::Process::PropagateTables(), readCubeStretch(), readFootprint(), readHistory(), readOriginalLabel(), readOriginalXmlLabel(), readTable(), Isis::CubeViewport::redPixel(), Isis::HistogramTool::refreshPlot(), Isis::ScatterPlotWindow::setMousePosition(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBrick::StartProcess(), statistics(), and Isis::StretchTool::statsFromCube().
void Isis::Cube::read | ( | Buffer & | bufferToFill | ) | const |
This method will read a buffer of data from the cube as specified by the contents of the Buffer object.
bufferToFill | Buffer to be loaded |
References _FILEINFO_, isOpen(), Isis::IException::Programmer, and Isis::CubeIoHandler::read().
CubeStretch Isis::Cube::readCubeStretch | ( | QString | name = "CubeStretch", |
const std::vector< PvlKeyword > | keywords = std::vector<PvlKeyword>() ) const |
Read a Stretch from a cube.
name | The name of the Stretch Blob |
keywords | A set of keywords and values to match in the Stretch Blob label. This can be used to read the stretch for a specific band. |
References _FILEINFO_, fileName(), read(), and Isis::IException::User.
ImagePolygon Isis::Cube::readFootprint | ( | ) | const |
Read the footprint polygon for the Cube.
References _FILEINFO_, fileName(), read(), and Isis::IException::User.
Referenced by Isis::ImageOverlapSet::FindImageOverlaps(), and Isis::UniversalGroundMap::GroundRange().
History Isis::Cube::readHistory | ( | const QString & | name = "IsisCube" | ) | const |
OriginalLabel Isis::Cube::readOriginalLabel | ( | const QString & | name = "IsisCube" | ) | const |
Read the original PDS3 label from a cube.
name | The name of the OriginalLabel Blob |
References _FILEINFO_, fileName(), read(), and Isis::IException::User.
OriginalXmlLabel Isis::Cube::readOriginalXmlLabel | ( | ) | const |
Read the original PDS4 label from a cube.
References _FILEINFO_, fileName(), read(), and Isis::IException::User.
Table Isis::Cube::readTable | ( | const QString & | name | ) |
Read a Table from the cube.
name | The name of the Table to read |
References _FILEINFO_, fileName(), Isis::IException::Programmer, and read().
Referenced by Isis::Blobber::load().
void Isis::Cube::relocateDnData | ( | FileName | dnDataFile | ) |
Relocates the DN data for a cube to an external cube label file.
dnDataFile | FileName to relocate the dn data to |
References _FILEINFO_, Isis::PvlObject::findObject(), isOpen(), Isis::FileName::original(), reopen(), and Isis::IException::Unknown.
void Isis::Cube::reopen | ( | QString | access = "r" | ) |
This method will reopen an isis sube for reading or reading/writing.
If access requested is read/write and the open fails, open as read only and throw error.
[in] | access | (QString) Type of access needed (read or read/write |
References _FILEINFO_, close(), Isis::FileName::expanded(), open(), and Isis::IException::Programmer.
Referenced by fromIsd(), relocateDnData(), and Isis::FileTool::save().
int Isis::Cube::sampleCount | ( | ) | const |
Referenced by Isis::AlphaCube::AlphaCube(), Isis::Camera::Camera(), Isis::Process::CheckRequirements(), copy(), Isis::StereoTool::createPoint(), Isis::CubeViewport::cubeContentsChanged(), Isis::CubeViewport::cubeDataChanged(), Isis::CubeViewport::cubeSamples(), Isis::CubeViewport::CubeViewport(), Isis::Enlarge::Enlarge(), Isis::ControlNetStatistics::GenerateImageStats(), Isis::CubeViewport::getAllWhatsThisInfo(), Isis::UniversalGroundMap::GroundRange(), Isis::StretchTool::histFromCube(), Isis::ImagePolygon::initCube(), Isis::ImageExporter::initializeProcess(), latLonRange(), Isis::ProcessExportPds::LineBytes(), Isis::OverlapStatistics::OverlapStatistics(), Isis::Reduce::Reduce(), Isis::ProcessMapMosaic::RingsSetOutputCube(), Isis::CameraPointInfo::SetCenter(), Isis::CameraPointInfo::SetLine(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::StretchTool::statsFromCube(), Isis::TileManager::TileManager(), Isis::Enlarge::UpdateOutputLabel(), and Isis::Reduce::UpdateOutputLabel().
void Isis::Cube::setBaseMultiplier | ( | double | base, |
double | mult ) |
Used prior to the Create method, this will specify the base and multiplier for converting 8-bit/16-bit back and forth between 32-bit:
\[ 32-bit pixel = 8-bit/16-bit pixel * multiplier + base \]
base | Additive constant. |
mult | Multiplicative constant. |
References base().
Referenced by copy(), and Isis::Process::SetOutputCube().
void Isis::Cube::setByteOrder | ( | ByteOrder | byteOrder | ) |
Used prior to the Create method, this will specify the byte order of pixels, either least or most significant byte.
byteOrder | An enumeration of either Msb or Lsb. |
References byteOrder().
Referenced by copy(), create(), and Isis::Process::SetOutputCube().
void Isis::Cube::setDimensions | ( | int | ns, |
int | nl, | ||
int | nb ) |
Used prior to the Create method to specify the size of the cube.
If not invoked, a 512 x 512 x 1 cube will be created.
ns | Number of samples |
nl | Number of lines |
nb | Number of bands |
References _FILEINFO_, and Isis::IException::Programmer.
Referenced by copy(), Isis::ImageImporter::createOutput(), Isis::Process::SetOutputCube(), Isis::ProcessMosaic::StartProcess(), and Isis::Chip::Write().
void Isis::Cube::setExternalDnData | ( | FileName | cubeFileWithDnData | ) |
void Isis::Cube::setFormat | ( | Format | format | ) |
Used prior to the Create method, this will specify the format of the cube, either band, sequential or tiled.
If not invoked, a tiled file will be created.
format | An enumeration of either Bsq or Tile. |
References format().
Referenced by copy(), create(), Isis::ImageExporter::initializeProcess(), and Isis::Process::SetOutputCube().
void Isis::Cube::setLabelsAttached | ( | bool | attach | ) |
Use prior to calling create, this sets whether or not to use separate label and data files.
attach | If false, the labels and data will be in separate files. |
Referenced by copy(), create(), and Isis::Process::SetOutputCube().
void Isis::Cube::setLabelSize | ( | int | labelBytes | ) |
Used prior to the Create method, this will allocate a specific number of bytes in the label area for attached files.
If not invoked, 65536 bytes will be reserved by default.
[in] | labelBytes | Number of bytes to reserve for label space. |
Referenced by copy(), and Isis::Process::SetOutputCube().
void Isis::Cube::setMinMax | ( | double | min, |
double | max ) |
Used prior to the Create method, this will compute a good base and multiplier value given the minimum/maximum range of the 32bit data.
For example, min=0.0 and max=1.0 of 32-bit pixels will ensure the base and multiplier will cause the data to be spread out fully in the 8=bit or 16-bit range.
min | Minimum 32-bit pixel. |
max | Maximum 32-bit pixel. |
References Isis::SignedWord, Isis::UnsignedByte, Isis::UnsignedWord, Isis::VALID_MAX1, Isis::VALID_MAX2, Isis::VALID_MAXU2, Isis::VALID_MIN1, Isis::VALID_MIN2, and Isis::VALID_MINU2.
Referenced by copy(), create(), and Isis::Process::SetOutputCube().
void Isis::Cube::setPixelType | ( | PixelType | pixelType | ) |
Used prior to the Create method, this will specify the output pixel type.
If not invoked, the pixel type will be Real.
pixelType | An enumeration of the pixelType desired in the output cube. See PixelType documentation for more information. |
References pixelType().
Referenced by copy(), create(), Isis::Process::SetOutputCube(), and Isis::ProcessMosaic::StartProcess().
void Isis::Cube::setVirtualBands | ( | const QList< QString > & | vbands | ) |
This allows the programmer to specify a subset of bands to work with.
This works with both read and write operations, but is typically only used for reading. This is helpful because users can specify which bands from an input cube they want to work with. For example, if the user only wants to work with band 5 out of a 10 band cube, this can be accommodated.
[in] | vbands | A vector of strings containing the virtual bands. The vector must contain integers in string form (e.g., "5", "10", "1"). |
References Isis::CubeIoHandler::setVirtualBands(), and Isis::toInt().
Referenced by Isis::Workspace::addCubeViewport(), Isis::Workspace::addCubeViewportFromList(), open(), Isis::Process::SetInputCube(), and setVirtualBands().
void Isis::Cube::setVirtualBands | ( | const std::vector< QString > & | vbands | ) |
This is a deprecated version of setVirtualBands(const QList<QString> &).
[in] | vbands | A vector of strings containing the virtual bands. The vector must contain integers in string form (e.g., "5", "10", "1"). |
References setVirtualBands().
Statistics * Isis::Cube::statistics | ( | const int & | band, |
const double & | validMin, | ||
const double & | validMax, | ||
QString | msg = "Gathering statistics" ) |
This method returns a pointer to a Statistics object which allows the program to obtain and use various statistics from the cube.
Cube does not retain ownership of the returned pointer - please delete it when you are done with it.
band | Returns the statistics for the specified band. If the user specifies 0 for this parameter, the method will loop through every band in the cube and accumulate statistics from each band seperately |
validMin | |
validMax | |
msg |
References _FILEINFO_, bandCount(), Isis::Progress::CheckStatus(), Isis::Buffer::DoubleBuffer(), isOpen(), lineCount(), Isis::IException::Programmer, read(), Isis::LineManager::SetLine(), Isis::Progress::SetMaximumSteps(), Isis::Progress::SetText(), and Isis::Buffer::size().
Statistics * Isis::Cube::statistics | ( | const int & | band = 1, |
QString | msg = "Gathering statistics" ) |
This method returns a pointer to a Statistics object which allows the program to obtain and use various statistics from the cube.
Cube does not retain ownership of the returned pointer - please delete it when you are done with it.
[in] | band | (Default value is 1) Returns the statistics for the specified band.If the user specifies 0 for this parameter, the method will loop through every band in the cube and accumulate statistics from each band seperately |
msg | The message to display with the percent process while gathering statistics |
References statistics(), Isis::ValidMaximum, and Isis::ValidMinimum.
Referenced by statistics().
bool Isis::Cube::storesDnData | ( | ) | const |
void Isis::Cube::write | ( | Blob & | blob, |
bool | overwrite = true ) |
This method will write a blob of data (e.g.
History, Table, etc) to the cube as specified by the contents of the Blob object.
blob | data to be written |
References _FILEINFO_, Isis::CubeIoHandler::dataFileMutex(), Isis::FileName::expanded(), fileName(), Isis::CubeIoHandler::getDataSize(), Isis::IException::Io, isOpen(), Isis::PvlContainer::name(), and Isis::IException::Programmer.
Referenced by attachSpiceFromIsd(), copy(), Isis::Process::SetOutputCube(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBrick::StartProcess(), write(), write(), write(), write(), write(), write(), and Isis::Process::WriteHistory().
void Isis::Cube::write | ( | Buffer & | bufferToWrite | ) |
This method will write a buffer of data from the cube as specified by the contents of the Buffer object.
bufferToWrite | Buffer to be written. |
References _FILEINFO_, fileName(), isOpen(), isReadOnly(), Isis::IException::Programmer, Isis::IException::Unknown, and Isis::CubeIoHandler::write().
void Isis::Cube::write | ( | const CubeStretch & | cubeStretch | ) |
void Isis::Cube::write | ( | const ImagePolygon & | polygon | ) |
Write a polygon to the Cube.
The polygon will be written to the Cube as a BLOB and can be accessed using Cube::readFootprint.
References write().
void Isis::Cube::write | ( | const OriginalXmlLabel & | lab | ) |
This method will write an OriginalXmlLabel object.
to the cube as specified by the contents of the Blob object.
Original | xml label data to be written |
References write().
void Isis::Cube::write | ( | const Table & | table | ) |
The Table will be written to the Cube as a BLOB and can be accessed using Cube::readTable.
table | The table to write to the Cube |
References Isis::Table::toBlob(), and write().
void Isis::Cube::write | ( | History & | history, |
const QString & | name = "IsisCube" ) |
Write an updated History to the Cube.
The History will be written to the Cube as a BLOB and can be accessed using Cube::readHistory.
history | The history to write to the Cube. |
name | The name for the history BLOB. This is used for backwards compatibility with cubes from before the History BLOB name was standardized. |
References Isis::History::toBlob(), and write().
void Isis::Cube::write | ( | OriginalLabel & | lab | ) |
This method will write an OriginalLabel object.
to the cube as specified by the contents of the Blob object.
Original | label data to be written |
References write().