RasterFileDescriptor Class Reference

Describes how a raster data element is stored in a file on disk. More...

#include <RasterFileDescriptor.h>

Inheritance diagram for RasterFileDescriptor:

Inheritance graph

List of all members.

Public Member Functions

virtual void setHeaderBytes (unsigned int bytes)=0
virtual unsigned int getHeaderBytes () const =0
virtual void setTrailerBytes (unsigned int bytes)=0
virtual unsigned int getTrailerBytes () const =0
virtual void setPrelineBytes (unsigned int bytes)=0
virtual unsigned int getPrelineBytes () const =0
virtual void setPostlineBytes (unsigned int bytes)=0
virtual unsigned int getPostlineBytes () const =0
virtual void setPrebandBytes (unsigned int bytes)=0
virtual unsigned int getPrebandBytes () const =0
virtual void setPostbandBytes (unsigned int bytes)=0
virtual unsigned int getPostbandBytes () const =0
virtual void setInterleaveFormat (InterleaveFormatType format)=0
virtual InterleaveFormatType getInterleaveFormat () const =0
virtual void setBandFiles (const std::vector< std::string > &bandFiles)=0
virtual void setBandFiles (const std::vector< const Filename * > &bandFiles)=0
virtual const std::vector
< const Filename * > & 
getBandFiles () const =0
virtual void setBitsPerElement (unsigned int numBits)=0
virtual unsigned int getBitsPerElement () const =0
virtual void setRows (const std::vector< DimensionDescriptor > &rows)=0
virtual const std::vector
< DimensionDescriptor > & 
getRows () const =0
virtual DimensionDescriptor getOriginalRow (unsigned int originalNumber) const =0
virtual DimensionDescriptor getOnDiskRow (unsigned int onDiskNumber) const =0
virtual DimensionDescriptor getActiveRow (unsigned int activeNumber) const =0
virtual unsigned int getRowCount () const =0
virtual void setColumns (const std::vector< DimensionDescriptor > &columns)=0
virtual const std::vector
< DimensionDescriptor > & 
getColumns () const =0
virtual DimensionDescriptor getOriginalColumn (unsigned int originalNumber) const =0
virtual DimensionDescriptor getOnDiskColumn (unsigned int onDiskNumber) const =0
virtual DimensionDescriptor getActiveColumn (unsigned int activeNumber) const =0
virtual unsigned int getColumnCount () const =0
virtual void setBands (const std::vector< DimensionDescriptor > &bands)=0
virtual const std::vector
< DimensionDescriptor > & 
getBands () const =0
virtual DimensionDescriptor getOriginalBand (unsigned int originalNumber) const =0
virtual DimensionDescriptor getOnDiskBand (unsigned int onDiskNumber) const =0
virtual DimensionDescriptor getActiveBand (unsigned int activeNumber) const =0
virtual unsigned int getBandCount () const =0
virtual void setXPixelSize (double pixelSize)=0
virtual double getXPixelSize () const =0
virtual void setYPixelSize (double pixelSize)=0
virtual double getYPixelSize () const =0
virtual void setUnits (const Units *pUnits)=0
virtual UnitsgetUnits ()=0
virtual const UnitsgetUnits () const =0
virtual void setGcps (const std::list< GcpPoint > &gcps)=0
virtual const std::list
< GcpPoint > & 
getGcps () const =0

Static Public Member Functions

static const std::string & signalRowsChanged ()
static const std::string & signalColumnsChanged ()
static const std::string & signalBandsChanged ()
static const std::string & signalBitsPerElementChanged ()
static const std::string & signalHeaderBytesChanged ()
static const std::string & signalTrailerBytesChanged ()
static const std::string & signalPrelineBytesChanged ()
static const std::string & signalPostlineBytesChanged ()
static const std::string & signalPrebandBytesChanged ()
static const std::string & signalPostbandBytesChanged ()
static const std::string & signalInterleaveFormatChanged ()
static const std::string & signalBandFilesChanged ()
static const std::string & signalPixelSizeChanged ()
static const std::string & signalGcpsChanged ()

Protected Member Functions

virtual ~RasterFileDescriptor ()


Detailed Description

Describes how a raster data element is stored in a file on disk.

In addition to the information stored in the FileDescriptor base class, this class contains information pertinent to how raster data elements are stored in files on disk.

This subclass of Subject will notify upon the following conditions:

See also:
RasterElement, RasterDataDescriptor

Definition at line 39 of file RasterFileDescriptor.h.


Constructor & Destructor Documentation

virtual RasterFileDescriptor::~RasterFileDescriptor (  )  [protected, virtual]

This should be destroyed by calling ObjectFactory::destroyObject.

Definition at line 751 of file RasterFileDescriptor.h.


Member Function Documentation

static const std::string& RasterFileDescriptor::signalRowsChanged (  )  [static]

Emitted when the rows change with boost::any<std::vector<DimensionDescriptor> > containing the new rows.

See also:
setRows()

Definition at line 49 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalColumnsChanged (  )  [static]

Emitted when the columns change with boost::any<std::vector<DimensionDescriptor> > containing the new columns.

See also:
setColumns()

Definition at line 58 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalBandsChanged (  )  [static]

Emitted when the bands change with boost::any<std::vector<DimensionDescriptor> > containing the new bands.

See also:
setBands()

Definition at line 67 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalBitsPerElementChanged (  )  [static]

Emitted when the number of bits per element changes with boost::any<unsigned int> containing the new number of bits per element.

See also:
setBitsPerElement()

Definition at line 75 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalHeaderBytesChanged (  )  [static]

Emitted when the number of header bytes changes with boost::any<unsigned int> containing the new number of header bytes.

See also:
setHeaderBytes()

Definition at line 83 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalTrailerBytesChanged (  )  [static]

Emitted when the number of trailer bytes changes with boost::any<unsigned int> containing the new number of trailer bytes.

See also:
setTrailerBytes()

Definition at line 91 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalPrelineBytesChanged (  )  [static]

Emitted when the number of preline bytes changes with boost::any<unsigned int> containing the new number of preline bytes.

See also:
setPrelineBytes()

Definition at line 99 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalPostlineBytesChanged (  )  [static]

Emitted when the number of postline bytes changes with boost::any<unsigned int> containing the new number of postline bytes.

See also:
setPostlineBytes()

Definition at line 107 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalPrebandBytesChanged (  )  [static]

Emitted when the number of preband bytes changes with boost::any<unsigned int> containing the new number of preband bytes.

See also:
setPrebandBytes()

Definition at line 115 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalPostbandBytesChanged (  )  [static]

Emitted when the number of postband bytes changes with boost::any<unsigned int> containing the new number of postband bytes.

See also:
setPostbandBytes()

Definition at line 123 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalInterleaveFormatChanged (  )  [static]

Emitted when the interleave format changes with boost::any<InterleaveFormatType> containing the new interleave format.

See also:
setInterleaveFormat()

Definition at line 132 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalBandFilesChanged (  )  [static]

Emitted when the band files change with boost::any<std::vector<const Filename*> > containing the new band files.

See also:
setBandFiles()

Definition at line 141 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalPixelSizeChanged (  )  [static]

Emitted when the X or Y pixel size changes.

No value is associated with this signal.

See also:
setXPixelSize(), setYPixelSize()

Definition at line 150 of file RasterFileDescriptor.h.

static const std::string& RasterFileDescriptor::signalGcpsChanged (  )  [static]

Emitted when the GCPs change with boost::any<std::list<GcpPoint> > containing the new GCPs.

See also:
setGcps()

Definition at line 158 of file RasterFileDescriptor.h.

virtual void RasterFileDescriptor::setHeaderBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of file header bytes.

Parameters:
bytes The number of bytes allocated for header information in the data set file.
Subject Notifications:
This method notifies signalHeaderBytesChanged() if the given number of header bytes is different than the current number of header bytes.

virtual unsigned int RasterFileDescriptor::getHeaderBytes (  )  const [pure virtual]

Returns the number of file header bytes.

Returns:
The number of bytes allocated for header information in the data set file.

virtual void RasterFileDescriptor::setTrailerBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of file trailer bytes.

Parameters:
bytes The number of bytes allocated for trailer information in the data set file.
Subject Notifications:
This method notifies signalTrailerBytesChanged() if the given number of trailer bytes is different than the current number of trailer bytes.

virtual unsigned int RasterFileDescriptor::getTrailerBytes (  )  const [pure virtual]

Returns the number of file trailer bytes.

Returns:
The number of bytes allocated for trailer information in the data set file.

virtual void RasterFileDescriptor::setPrelineBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of preline bytes.

Preline bytes refer to the number of bytes preceding each line of data values in the data file. Preline bytes apply to files with data stored in any interleave format.

Parameters:
bytes The number of bytes allocated preceding each line of data values in the data set file.
Subject Notifications:
This method notifies signalPrelineBytesChanged() if the given number of preline bytes is different than the current number of preline bytes.

virtual unsigned int RasterFileDescriptor::getPrelineBytes (  )  const [pure virtual]

Returns the number of preline bytes.

Preline bytes refer to the number of bytes preceding each line of data values in the data file. Preline bytes apply to files with data stored in any interleave format.

Returns:
The number of bytes allocated preceding each line of data values in the data set file.

virtual void RasterFileDescriptor::setPostlineBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of postline bytes.

Postline bytes refer to the number of bytes following each line of data values in the data file. Postline bytes apply to files with data stored in any interleave format.

Parameters:
bytes The number of bytes allocated following each line of data values in the data set file.
Subject Notifications:
This method notifies signalPostlineBytesChanged() if the given number of postline bytes is different than the current number of postline bytes.

virtual unsigned int RasterFileDescriptor::getPostlineBytes (  )  const [pure virtual]

Returns the number of postline bytes.

Postline bytes refer to the number of bytes following each line of data values in the data file. Postline bytes apply to files with data stored in any interleave format.

Returns:
The number of bytes allocated following each line of data values in the data set file.

virtual void RasterFileDescriptor::setPrebandBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of preband bytes.

Preband bytes refer to the number of bytes preceding each band of data values in the data file. Preband bytes apply only to files with data stored in the BSQ interleave format with all bands stored in a single file.

Parameters:
bytes The number of bytes allocated preceding each band of data values in the data set file.
Subject Notifications:
This method notifies signalPrebandBytesChanged() if the given number of preband bytes is different than the current number of preband bytes.
See also:
InterleaveFormatType

virtual unsigned int RasterFileDescriptor::getPrebandBytes (  )  const [pure virtual]

Returns the number of preband bytes.

Preband bytes refer to the number of bytes preceding each band of data values in the data file. Preband bytes apply only to files with data stored in the BSQ interleave format with all bands stored in a single file.

Returns:
The number of bytes allocated preceding each band of data values in the data set file.
See also:
InterleaveFormatType

virtual void RasterFileDescriptor::setPostbandBytes ( unsigned int  bytes  )  [pure virtual]

Sets the number of postband bytes.

Postband bytes refer to the number of bytes following each band of data values in the data file. Postband bytes apply only to files with data stored in the BSQ interleave format with all bands stored in a single file.

Parameters:
bytes The number of bytes allocated following each band of data values in the data set file.
Subject Notifications:
This method notifies signalPostbandBytesChanged() if the given number of postband bytes is different than the current number of postband bytes.
See also:
InterleaveFormatType

virtual unsigned int RasterFileDescriptor::getPostbandBytes (  )  const [pure virtual]

Returns the number of postband bytes.

Postband bytes refer to the number of bytes following each band of data values in the data file. Postband bytes apply only to files with data stored in the BSQ interleave format with all bands stored in a single file.

Returns:
The number of bytes allocated following each band of data values in the data set file.
See also:
InterleaveFormatType

virtual void RasterFileDescriptor::setInterleaveFormat ( InterleaveFormatType  format  )  [pure virtual]

Sets the interleave format of the data.

Parameters:
format The interleave format in which the values in the data set are stored in the file on disk.
Subject Notifications:
This method notifies signalInterleaveFormatChanged() if the given interleave format is different than the current interleave format.

virtual InterleaveFormatType RasterFileDescriptor::getInterleaveFormat (  )  const [pure virtual]

Returns the interleave format of the data.

Returns:
The interleave format in which the values in the data set are stored in the file on disk.

virtual void RasterFileDescriptor::setBandFiles ( const std::vector< std::string > &  bandFiles  )  [pure virtual]

Sets the filenames for each band of a BSQ multiple-file data set.

Band files apply only to data sets stored in the BSQ interleave format with each band stored in a separate file.

This is a convenience method that calls the setBandFiles(const std::vector<const Filename*>&) method.

Parameters:
bandFiles The filenames for each band of data of a BSQ multiple-file data set.
Subject Notifications:
This method notifies signalBandFilesChanged() if the given band files are different than the current band files.
See also:
InterleaveFormatType

virtual void RasterFileDescriptor::setBandFiles ( const std::vector< const Filename * > &  bandFiles  )  [pure virtual]

Sets the filenames for each band of a BSQ multiple-file data set.

Band files apply only to data sets stored in the BSQ interleave format with each band stored in a separate file.

Parameters:
bandFiles The filenames for each band of data of a BSQ multiple-file data set.
Subject Notifications:
This method notifies signalBandFilesChanged() if the given band files are different than the current band files.
See also:
InterleaveFormatType

virtual const std::vector<const Filename*>& RasterFileDescriptor::getBandFiles (  )  const [pure virtual]

Returns the filenames for each band of a BSQ multiple-file data set.

Band files apply only to data sets stored in the BSQ interleave format with each band stored in a separate file.

Returns:
The filenames for each band of data of a BSQ multiple-file data set.
See also:
InterleaveFormatType

virtual void RasterFileDescriptor::setBitsPerElement ( unsigned int  numBits  )  [pure virtual]

Sets the number of bits used for each pixel element value.

Parameters:
numBits The number of bits per element.
Subject Notifications:
This method notifies signalBitsPerElementChanged() if the given number of bits per element is different than the current number of bits per element.

virtual unsigned int RasterFileDescriptor::getBitsPerElement (  )  const [pure virtual]

Returns the number of bits used for each pixel element value.

Returns:
The number of bits per element.

virtual void RasterFileDescriptor::setRows ( const std::vector< DimensionDescriptor > &  rows  )  [pure virtual]

Sets the rows for the data as they are stored in the file on disk.

These rows may differ from the rows in a corresponding RasterDataDescriptor in that they contain row objects for each row in the file on disk regardless of the imported rows.

Parameters:
rows A vector of DimensionDescriptors containing one instance for each row of data in the file on disk.
Subject Notifications:
This method notifies signalRowsChanged() if the given rows are different than the current rows.
See also:
DimensionDescriptor

virtual const std::vector<DimensionDescriptor>& RasterFileDescriptor::getRows (  )  const [pure virtual]

Returns the rows for the data as they are stored in the file on disk.

Returns:
A vector of DimensionDescriptors containing one instance for each row of data in the file on disk.

virtual DimensionDescriptor RasterFileDescriptor::getOriginalRow ( unsigned int  originalNumber  )  const [pure virtual]

Returns the row object containing a given original number.

Parameters:
originalNumber The zero-based original number for which to get the row object.
Returns:
The row object that has the given original number. An invalid DimensionDescriptor is returned if a row object does not exist with the given original number.

virtual DimensionDescriptor RasterFileDescriptor::getOnDiskRow ( unsigned int  onDiskNumber  )  const [pure virtual]

Returns the row object containing a given on-disk number.

Parameters:
onDiskNumber The zero-based on-disk number for which to get the row object.
Returns:
The row object that has the given on-disk number. An invalid DimensionDescriptor is returned if a row object does not exist with the given on-disk number.

virtual DimensionDescriptor RasterFileDescriptor::getActiveRow ( unsigned int  activeNumber  )  const [pure virtual]

Returns the row object containing a given active number.

Parameters:
activeNumber The zero-based active number for which to get the row object.
Returns:
The row object that has the given active number. An invalid DimensionDescriptor is returned if a row object does not exist with the given active number.

virtual unsigned int RasterFileDescriptor::getRowCount (  )  const [pure virtual]

Returns the number of rows as they are stored in the file on disk.

This is a convenience method that returns getRows().size().

Returns:
The number of rows as they are stored in the file on disk.

virtual void RasterFileDescriptor::setColumns ( const std::vector< DimensionDescriptor > &  columns  )  [pure virtual]

Sets the columns for the data as they are stored in the file on disk.

These columns may differ from the columns in a corresponding RasterDataDescriptor in that they contain columns objects for each column in the file on disk regardless of the imported columns.

Parameters:
columns A vector of DimensionDescriptors containing one instance for each column of data in the file on disk.
Subject Notifications:
This method notifies signalColumnsChanged() if the given columns are different than the current columns.
See also:
DimensionDescriptor

virtual const std::vector<DimensionDescriptor>& RasterFileDescriptor::getColumns (  )  const [pure virtual]

Returns the columns for the data as they are stored in the file on disk.

Returns:
A vector of DimensionDescriptors containing one instance for each column of data in the file on disk.

virtual DimensionDescriptor RasterFileDescriptor::getOriginalColumn ( unsigned int  originalNumber  )  const [pure virtual]

Returns the column object containing a given original number.

Parameters:
originalNumber The zero-based original number for which to get the column object.
Returns:
The column object that has the given original number. An invalid DimensionDescriptor is returned if a column object does not exist with the given original number.

virtual DimensionDescriptor RasterFileDescriptor::getOnDiskColumn ( unsigned int  onDiskNumber  )  const [pure virtual]

Returns the column object containing a given on-disk number.

Parameters:
onDiskNumber The zero-based on-disk number for which to get the column object.
Returns:
The column object that has the given on-disk number. An invalid DimensionDescriptor is returned if a column object does not exist with the given on-disk number.

virtual DimensionDescriptor RasterFileDescriptor::getActiveColumn ( unsigned int  activeNumber  )  const [pure virtual]

Returns the column object containing a given active number.

Parameters:
activeNumber The zero-based active number for which to get the column object.
Returns:
The column object that has the given active number. An invalid DimensionDescriptor is returned if a column object does not exist with the given active number.

virtual unsigned int RasterFileDescriptor::getColumnCount (  )  const [pure virtual]

Returns the number of columns as they are stored in the file on disk.

This is a convenience method that returns getColumns().size().

Returns:
The number of columns as they are stored in the file on disk.

virtual void RasterFileDescriptor::setBands ( const std::vector< DimensionDescriptor > &  bands  )  [pure virtual]

Sets the bands for the data as they are stored in the file on disk.

These bands may differ from the bands in a corresponding RasterDataDescriptor in that they contain band objects for each band in the file on disk regardless of the imported bands.

Parameters:
bands A vector of DimensionDescriptors containing one instance for each band of data in the file on disk.
Subject Notifications:
This method notifies signalBandsChanged() if the given bands are different than the current bands.
See also:
DimensionDescriptor

virtual const std::vector<DimensionDescriptor>& RasterFileDescriptor::getBands (  )  const [pure virtual]

Returns the bands for the data as they are stored in the file on disk.

Returns:
A vector of DimensionDescriptors containing one instance for each band of data in the file on disk.

virtual DimensionDescriptor RasterFileDescriptor::getOriginalBand ( unsigned int  originalNumber  )  const [pure virtual]

Returns the band object containing a given original number.

Parameters:
originalNumber The zero-based original number for which to get the band object.
Returns:
The band object that has the given original number. An invalid DimensionDescriptor is returned if a band object does not exist with the given original number.

virtual DimensionDescriptor RasterFileDescriptor::getOnDiskBand ( unsigned int  onDiskNumber  )  const [pure virtual]

Returns the band object containing a given on-disk number.

Parameters:
onDiskNumber The zero-based on-disk number for which to get the band object.
Returns:
The band object that has the given on-disk number. An invalid DimensionDescriptor is returned if a band object does not exist with the given on-disk number.

virtual DimensionDescriptor RasterFileDescriptor::getActiveBand ( unsigned int  activeNumber  )  const [pure virtual]

Returns the band object containing a given active number.

Parameters:
activeNumber The zero-based active number for which to get the band object.
Returns:
The band object that has the given active number. An invalid DimensionDescriptor is returned if a band object does not exist with the given active number.

virtual unsigned int RasterFileDescriptor::getBandCount (  )  const [pure virtual]

Returns the number of bands as they are stored in the file on disk.

This is a convenience method that returns getBands().size().

Returns:
The number of bands as they are stored in the file on disk.

virtual void RasterFileDescriptor::setXPixelSize ( double  pixelSize  )  [pure virtual]

Sets the pixel size of each column in the data set.

By default, each row and column has a pixel size of 1.0, thereby producing a size ratio of 1.0, which indicates that the pixel appears as a square in the view. Calling this method with a value other than 1.0 allows for non-square pixels, which may represent the true nature of the data.

Parameters:
pixelSize The pixel size for each column in the data set.
Subject Notifications:
This method notifies signalPixelSizeChanged() if the given column pixel size is different than the current column pixel size.

virtual double RasterFileDescriptor::getXPixelSize (  )  const [pure virtual]

Returns the pixel size of each column in the data set.

Returns:
The column pixel size.
See also:
setXPixelSize()

virtual void RasterFileDescriptor::setYPixelSize ( double  pixelSize  )  [pure virtual]

Sets the pixel size of each row in the data set.

By default, each row and column has a pixel size of 1.0, thereby producing a size ratio of 1.0, which indicates that the pixel appears as a square in the view. Calling this method with a value other than 1.0 allows for non-square pixels, which may represent the true nature of the data.

Parameters:
pixelSize The pixel size for each row in the data set.
Subject Notifications:
This method notifies signalPixelSizeChanged() if the given row pixel size is different than the current row pixel size.

virtual double RasterFileDescriptor::getYPixelSize (  )  const [pure virtual]

Returns the pixel size of each row in the data set.

Returns:
The row pixel size.
See also:
setYPixelSize()

virtual void RasterFileDescriptor::setUnits ( const Units pUnits  )  [pure virtual]

Sets the units the values in the data set.

Parameters:
pUnits The units of the values in the data set.
Subject Notifications:
This method notifies Subject::signalModified() if the given units object is different than the current units object.

virtual Units* RasterFileDescriptor::getUnits (  )  [pure virtual]

Returns a pointer to the data's units object.

Returns:
A pointer to the data's units object.

virtual const Units* RasterFileDescriptor::getUnits (  )  const [pure virtual]

Returns read-only access to the data's units object.

Returns:
A const pointer to the data's units object. The units represented by the returned pointer should not be modified. To modify the values, call the non-const version of getUnits().

virtual void RasterFileDescriptor::setGcps ( const std::list< GcpPoint > &  gcps  )  [pure virtual]

Sets GCPs associated with the data in the file on disk.

GCPs can be used to represent geocoordinate information for a particular data set.

On import, an importer will typically set the GCPs after reading geocoordinate information from a file. Then, after importing is complete, if a SpatialDataView is created the GCPs are used to create a GcpList element and corresponding GcpLayer that is automatically displayed in the view.

On export, an object executing the exporter can set the geocoordinate information that the exporter should use when saving the data to disk.

Parameters:
gcps The GCPs associated with the data.
Subject Notifications:
This method notifies signalGcpsChanged() if the given GCPs are different than the current GCPs.

virtual const std::list<GcpPoint>& RasterFileDescriptor::getGcps (  )  const [pure virtual]

Returns the GCPs associated with the data.

Returns:
The GCPs associated with the data.


Software Development Kit - Opticks 4.9.0 Build 16218