![]() |
Isis 3 Developer Reference
|
#include <Blob.h>
Public Member Functions | |
Blob (const QString &name, const QString &type) | |
Constructs a Blob object using a name and type. More... | |
Blob (const QString &name, const QString &type, const QString &file) | |
Constructs a Blob object using a name, type, and reading Pvl values from a file. More... | |
Blob (const Blob &other) | |
This copies the blob object. More... | |
Blob & | operator= (const Blob &other) |
This makes the two blob objects exactly the same (copies the blob) More... | |
virtual | ~Blob () |
Destroys the Blob object. More... | |
QString | Type () const |
Accessor method that returns a string containing the Blob type. More... | |
QString | Name () const |
Accessor method that returns a string containing the Blob name. More... | |
int | Size () const |
Accessor method that returns the number of bytes in the blob data. More... | |
PvlObject & | Label () |
Accessor method that returns a PvlObject containing the Blob label. More... | |
void | Read (const QString &file) |
This method reads Pvl values from a specified file. More... | |
void | Read (const QString &file, const Pvl &pvlLabels) |
This method reads the given a file and labels. More... | |
virtual void | Read (const Pvl &pvl, std::istream &is) |
This method reads the Blob data from an open input file stream. More... | |
void | Write (const QString &file) |
Write the blob data out to a file. More... | |
void | Write (Pvl &pvl, std::fstream &stm, const QString &detachedFileName="") |
Write the blob data out to a Pvl object. More... | |
Protected Member Functions | |
void | Find (const Pvl &pvl) |
This method searches the given Pvl for the Blob by the Blob's type and name. More... | |
virtual void | ReadInit () |
This virtual method for classes that inherit Blob. More... | |
virtual void | ReadData (std::istream &is) |
Read binary data from an input stream into the Blob object. More... | |
virtual void | WriteInit () |
This virtual method for classes that inherit Blob. More... | |
virtual void | WriteData (std::fstream &os) |
Writes blob data to a stream. More... | |
Protected Attributes | |
PvlObject | p_blobPvl |
Pvl Blob object. More... | |
QString | p_blobName |
Name of the Blob object. More... | |
char * | p_buffer |
Buffer blob data is stored in. More... | |
BigInt | p_startByte |
Byte blob data starts at in buffer. More... | |
int | p_nbytes |
Size of blob data (in bytes) More... | |
QString | p_type |
Type of data stored in the buffer. More... | |
QString | p_detached |
Used for reading detached blobs. More... | |
QString | p_labelFile |
The file containing the labels. More... | |
Isis::Blob::Blob | ( | const QString & | name, |
const QString & | type | ||
) |
Constructs a Blob object using a name and type.
name | The blob name |
type | The blob type |
Isis::Blob::Blob | ( | const QString & | name, |
const QString & | type, | ||
const QString & | file | ||
) |
Constructs a Blob object using a name, type, and reading Pvl values from a file.
name | The blob name |
type | The blob type |
file | The filename to read from. |
References Isis::FileName::expanded().
Isis::Blob::Blob | ( | const Blob & | other | ) |
This copies the blob object.
other | Blob to be copied |
References p_blobName, p_blobPvl, p_buffer, p_detached, p_labelFile, p_nbytes, p_startByte, and p_type.
|
virtual |
Destroys the Blob object.
|
protected |
This method searches the given Pvl for the Blob by the Blob's type and name.
If found, the start byte, number of bytes are read from the Pvl. Also, if a keyword label pointer is found, the filename for the detached blob is stored and the pointer is removed from the blob pvl.
pvl | The Pvl to be searched |
References _FILEINFO_, Isis::PvlContainer::isNamed(), Isis::PvlObject::object(), Isis::PvlObject::objects(), and Isis::FileName::path().
PvlObject & Isis::Blob::Label | ( | ) |
Accessor method that returns a PvlObject containing the Blob label.
Referenced by Isis::SpiceRotation::CacheLabel(), Isis::SpicePosition::LoadCache(), and Isis::SpiceRotation::LoadCache().
QString Isis::Blob::Name | ( | ) | const |
Accessor method that returns a string containing the Blob name.
Referenced by Isis::Shape::isFootprintable(), Isis::Image::isFootprintable(), Isis::SpicePosition::LoadCache(), and Isis::Cube::write().
This makes the two blob objects exactly the same (copies the blob)
other | Blob to be copied |
References p_blobName, p_blobPvl, p_buffer, p_detached, p_labelFile, p_nbytes, p_startByte, and p_type.
void Isis::Blob::Read | ( | const QString & | file | ) |
This method reads Pvl values from a specified file.
file | The filename to read from. |
iException::Io | - Unable to open file |
iException::Pvl | - Invalid label format |
References _FILEINFO_, and Isis::Pvl::read().
Referenced by Isis::History::History(), Isis::OriginalLabel::OriginalLabel(), Isis::OriginalXmlLabel::OriginalXmlLabel(), Isis::History::Read(), Isis::Cube::read(), and Isis::Table::Table().
void Isis::Blob::Read | ( | const QString & | file, |
const Pvl & | pvlLabels | ||
) |
This method reads the given a file and labels.
file | The filename to read from. |
pvlLabels | A Pvl containing the label information. |
iException::Io | - Unable to open file |
References _FILEINFO_, and Isis::Message::FileOpen().
|
virtual |
This method reads the Blob data from an open input file stream.
pvl | A Pvl containing the label information. |
istm | The input file stream containing the blob data to be read. |
iException::Io | - Unable to open file |
Reimplemented in Isis::History.
References _FILEINFO_, and Isis::Message::FileOpen().
|
protectedvirtual |
Read binary data from an input stream into the Blob object.
stream | The input stream to read from. |
IException::Io | - Error reading data from stream |
Reimplemented in Isis::ImagePolygon, Isis::Table, and Isis::OriginalXmlLabel.
References _FILEINFO_.
Referenced by Isis::OriginalXmlLabel::ReadData().
|
protectedvirtual |
This virtual method for classes that inherit Blob.
It is not defined in the Blob class.
Reimplemented in Isis::Table.
int Isis::Blob::Size | ( | ) | const |
Accessor method that returns the number of bytes in the blob data.
QString Isis::Blob::Type | ( | ) | const |
Accessor method that returns a string containing the Blob type.
Referenced by Isis::Shape::isFootprintable(), Isis::Image::isFootprintable(), and Isis::Cube::write().
void Isis::Blob::Write | ( | const QString & | file | ) |
Write the blob data out to a file.
file | The filename to write to. |
IException::Io | - Unable to open file |
IException::Io | - Error preparing to write data to file |
IException::Io | - Error creating file |
References _FILEINFO_, Isis::PvlObject::addObject(), Isis::PvlObject::findObject(), Isis::toString(), and Isis::Pvl::write().
Referenced by Isis::Cube::write().
void Isis::Blob::Write | ( | Pvl & | pvl, |
std::fstream & | stm, | ||
const QString & | detachedFileName = "" |
||
) |
Write the blob data out to a Pvl object.
pvl | The pvl object to update |
stm | stream to write data to |
detachedFileName | If the stream is detached from the labels give the name of the file |
References Isis::PvlObject::addObject(), Isis::PvlContainer::name(), Isis::PvlObject::object(), Isis::PvlObject::objects(), and Isis::toString().
|
protectedvirtual |
Writes blob data to a stream.
stream | Output steam blob data will be written to |
IException::Io | - Error writing data to stream |
Reimplemented in Isis::ImagePolygon, Isis::Table, and Isis::OriginalXmlLabel.
References _FILEINFO_.
|
protectedvirtual |
This virtual method for classes that inherit Blob.
It is not defined in the Blob class.
Reimplemented in Isis::ImagePolygon, Isis::Table, Isis::History, Isis::OriginalLabel, and Isis::OriginalXmlLabel.
|
protected |
Name of the Blob object.
Referenced by Blob(), Isis::Table::operator+=(), operator=(), Isis::Table::ReadData(), and Isis::ImagePolygon::ReadData().
|
protected |
|
protected |
Buffer blob data is stored in.
Referenced by Blob(), Isis::GisBlob::GisBlob(), operator=(), Isis::OriginalXmlLabel::ReadData(), Isis::History::ReturnHist(), Isis::OriginalLabel::ReturnLabels(), Isis::GisBlob::setPolygon(), Isis::History::WriteInit(), and Isis::OriginalLabel::WriteInit().
|
protected |
Used for reading detached blobs.
Referenced by Blob(), and operator=().
|
protected |
The file containing the labels.
Referenced by Blob(), and operator=().
|
protected |
Size of blob data (in bytes)
Referenced by Blob(), Isis::GisBlob::GisBlob(), operator=(), Isis::OriginalXmlLabel::ReadData(), Isis::ImagePolygon::ReadData(), Isis::History::ReturnHist(), Isis::OriginalLabel::ReturnLabels(), Isis::GisBlob::setPolygon(), Isis::ImagePolygon::WriteData(), Isis::OriginalXmlLabel::WriteInit(), Isis::History::WriteInit(), Isis::OriginalLabel::WriteInit(), Isis::Table::WriteInit(), and Isis::ImagePolygon::WriteInit().
|
protected |
Byte blob data starts at in buffer.
Referenced by Blob(), operator=(), Isis::Table::ReadData(), and Isis::ImagePolygon::ReadData().
|
protected |
Type of data stored in the buffer.
Referenced by Blob(), operator=(), and Isis::ImagePolygon::ReadData().
U.S. Department of the Interior | U.S. Geological Survey ISIS | Privacy & Disclaimers | Astrogeology Research Program To contact us, please post comments and questions on the USGS Astrogeology Discussion Board To report a bug, or suggest a feature go to: ISIS Github File Modified: 07/12/2023 23:36:58 |