FDO .NET API Reference | Feature Data Objects |
Classes | |
class | OSGeo::FDO::Raster::DataValueCollection |
DataValueCollection is a collection of DataValue objects. More... | |
class | OSGeo::FDO::Raster::DataValueCollection::Enumerator |
DOXYGEN-IGNORE A Nested class defined to provide enumeration of Dictionary elements | |
class | OSGeo::FDO::Raster::IRasterImp |
IRasterImp specifies the data type and organization of raster data retrieved and stored. Using this class and the image extents in width and length, the binary format of the image data returned by and accepted by the IoStreamReader class can be interpreted. More... | |
class | OSGeo::FDO::Raster::IRasterPropertyDictionaryImp |
The IRasterPropertyDictionary exposes a dictionary style interface to the raster properties. Through this interface the non-standard properties of a raster image can be determined and their values can be retrieved and set. Data values are exchanged through the DataValue object to accommodate various data types, boolean, integer, double, string etc. More... | |
interface | OSGeo::FDO::Raster::OSGeo::FDO::Raster::IRaster |
The IRaster interface specifies the data type and organization of raster data retrieved and stored. Using this class and the image extents in width and length, the binary format of the image data returned by and accepted by the IoStreamReader class can be interpreted. More... | |
interface | OSGeo::FDO::Raster::OSGeo::FDO::Raster::IRasterPropertyDictionary |
The IRasterPropertyDictionary exposes a dictionary style interface to the raster properties. Through this interface the non-standard properties of a raster image can be determined and their values can be retrieved and set. Data values are exchanged through the DataValue object to accommodate various data types, boolean, integer, double, string etc. More... | |
class | OSGeo::FDO::Raster::RasterDataModel |
The RasterDataModel specifies the data type and organization of raster data retrieved and stored. Using this class and the image extents in width and length, the binary format of the image data returned by and accepted by the IStreamReader class can be interpreted. More... | |
Enumerations | |
enum | RasterDataModelType { RasterDataModelType_Unknown = FdoRasterDataModelType_Unknown, RasterDataModelType_Data = FdoRasterDataModelType_Data, RasterDataModelType_Bitonal = FdoRasterDataModelType_Bitonal, RasterDataModelType_Gray = FdoRasterDataModelType_Gray, RasterDataModelType_RGB = FdoRasterDataModelType_RGB, RasterDataModelType_RGBA = FdoRasterDataModelType_RGBA, RasterDataModelType_Palette = FdoRasterDataModelType_Palette } |
The RasterDataModelType enumeration specifies the type of data within each pixel. In all cases the data is 'packed', that is, adjacent pixels are contiguous in memory with no unused bits between them, except at the end of a row, where the row is padded to a byte boundary. For example, four bit grayscale data (BitsPerPixel=4) would be packed two pixels to a byte, and a row would be padded with four bits if the image width was odd. Tri-colour or four channel data is also organized adjacently in memory, with no intervening padding except at the ends of rows. For example, eight bit RGB (BitsPerPixel=24) occupies three bytes per pixel, and would never need padding at the end of a row. Multiband data (i.e. RGB) has the same number of bits allocated to each band, so for example RGBT data with eight bits for red, would also have eight bits for each of the three other bands totaling thirty-two bits (BitsPerPixel=32). More... | |
enum | RasterDataOrganization { RasterDataOrganization_Pixel = FdoRasterDataOrganization_Pixel, RasterDataOrganization_Row = FdoRasterDataOrganization_Row, RasterDataOrganization_Image = FdoRasterDataOrganization_Image } |
The RasterDataOrganization enumeration specifies the way pixel data is interleaved. Data is stored/retrieved in left to right, and secondarily top to bottom order within the interleave order. Tiles are also stored/retrieved in left to right, top to bottom order. For tiled data, data for one tile is completely stored/retrieved before the next tile, so for example, with 'RasterDataOrganization_Image' organization of RGB data with 24 bits per pixel, the TileSizeX by TileSizeY 8 bit data values for the red channel are stored first followed by the same number of green bytes, followed by the same number of blue bytes. This organization dependant storage should be considered when 'skipping' to the middle of an image. More... | |
enum | RasterDataType { RasterDataType_Unknown = FdoRasterDataType_Unknown, RasterDataType_UnsignedInteger = FdoRasterDataType_UnsignedInteger, RasterDataType_Integer = FdoRasterDataType_Integer, RasterDataType_Float = FdoRasterDataType_Float, RasterDataType_Double = FdoRasterDataType_Double } |
The RasterDataType enumeration specifies the type of data stored in the Raster Image. More... | |
Functions | |
__property System::Byte | get_Bounds ()[] |
Get the minimum bounding box around the curent band of the image. | |
__property System::Int32 | get_CurrentBand () |
Gets the currently active band/channel. | |
__property OSGeo::FDO::Raster::RasterDataModel * | get_DataModel () |
Gets the data model in use by this raster property. | |
__property System::Int32 | get_ImageXSize () |
Gets the size of image file in the horizontal direction in pixels (number of columns). | |
__property System::Int32 | get_ImageYSize () |
Gets the size of image file in the vertical direction in pixels (number of rows). | |
__property OSGeo::FDO::Expression::DataValue * | get_NullPixelValue () |
Gets the pixel value that represents a NULL value in the available raster stream. | |
__property System::Int32 | get_NumberOfBands () |
Gets the number of bands/channels contained in the raster image. | |
__property OSGeo::FDO::Expression::DataValue * | get_Property (System::String *name) |
Gets the value of the specified property (or its default). | |
__property OSGeo::FDO::Schema::DataType | get_PropertyDataType (System::String *name) |
Gets the data type for the specified property. | |
__property OSGeo::FDO::Expression::DataValue * | get_PropertyDefault (System::String *name) |
Gets the default value for the specified property. | |
__property OSGeo::FDO::Raster::DataValueCollection * | get_PropertyValues (System::String *name) |
Access the values of the specified enumerable property. The property must respond TRUE to IsPropertyEnumerable. | |
__property OSGeo::FDO::Common::IStreamReaderImp * | get_StreamReader () |
Get the source of image data. Image data is shipped using a paradigm similar to BLOB I/O. When fetching a raster image the GetStreamReader() method provides a IStreamReader from which the client may request the image data. The format of the image data expected is determined by the DataModel property. The data type, bit depth, tiling and organization specify the meaning of the image data. By setting the DataModel property prior to getting a reader for the data, the FDO client application can control the way data is retrieved from the FDO raster subsystem. When a tiled image is fetched, the image data will be tiled by default, unless a spatial query is used that covers a portion of a tile, in which case the image is converted to monolithic form prior to returning to the client. The client may force a monolithic image in the former case by setting the DataModel to monolithic prior to getting the stream reader. Or conversely it can request a re-tiling of the remaining sub-image by setting the DataModel property to tiled (in this case the tile origin is at the new upper left corner of the sub-image).
Note: Altering the DataModel may have significant performance issues. | |
__property System::String * | get_VerticalUnits () |
Gets the Vertical Unit of Measure corresponding to the Raster Band. The string value returned will be a considered lookup value that will be used to identify the properties of the Unit of Measure using the IGetMeasureUnits command. | |
OSGeo::FDO::Raster::IRasterPropertyDictionary * | GetAuxiliaryProperties () |
Get a dictionary style interface to the raster properties. Through this interface the non-standard properties of a raster image can be determined and their values can be retrieved and set. Data values are exchanged through the DataValue object to accommodate various data types, boolean, integer, double, string, etc. | |
System::Boolean | IsPropertyEnumerable (System::String *name) |
Predicate to determine if the property is enumerable (has more than one value). | |
System::Boolean | IsPropertyRequired (System::String *name) |
Predicate to determine if the property is required to be set. | |
__property System::Void | set_Bounds (System::Byte bounds[]) |
Set the minimum bounding box around the image. For georeferenced images, the coordinate system is specified by the spatial context in force when the object is created. The act of setting this property georeferences the image. In order to provide for non-georeferenced images, this property is Nullable (doesn't need to be set). | |
__property System::Void | set_CurrentBand (System::Int32 value) |
Sets the currently active band/channel. | |
__property System::Void | set_DataModel (OSGeo::FDO::Raster::RasterDataModel *dataModel) |
Sets the data model used by this raster property. Allowed values are only those data models that are acceptable to the SupportsDataModel capability. | |
__property System::Void | set_ImageXSize (System::Int32 size) |
Sets the size of image file in the horizontal direction in pixels (number of columns). By setting the X and Y image size properties prior to getting a reader for the data, the client application can control the density of pixels fetched by the provider, which may reduce the amount of data shipped by the reader and reduce processing time significantly. For example, a certain query in the coordinate system of the raster object class returns a IRaster object with image size 12091 by 8043. But the image only needs to be displayed in an area 1167 by 776 on the users monitor. (Note: The aspect ratios are the same because the query is constructed based on the display area).
By setting the image size to these lower values the FDO raster subsystem may be able to use a previously subsampled image where the resolution has been reduced by a factor of 4. So instead of transferring 97MB, it can transfer 6MB (a reduction by 4 in both dimensions reduces the amount of data by a factor of 16) and subsample the image again to the desired resolution in a more timely manner (less data to process means less total time), with no appreciable difference in display quality to the user. | |
__property System::Void | set_ImageYSize (System::Int32 size) |
Sets the size of image file in the vertical direction in pixels (number of rows). See SetImageXSize. | |
__property System::Void | set_NumberOfBands (System::Int32 value) |
Sets the number of bands/channels contained in the raster image. | |
__property System::Void | set_Property (System::String *name, OSGeo::FDO::Expression::DataValue *value) |
Sets the value of the specified property. | |
__property System::Void | set_PropertyValues (System::String *name, OSGeo::FDO::Raster::DataValueCollection *collection) |
Set the values of the specified enumerable property. The property must respond TRUE to IsPropertyEnumerable. Clients will need to use SetPropertyValues when creating an image with specific values for the enumerable property. An example would be setting a table of wavelength ranges corresponding to the false colour used to encode the image. | |
__property System::Void | set_StreamReader (OSGeo::FDO::Common::IStreamReaderImp *reader) |
Set the source of image data. Image data is shipped using a paradigm similar to BLOB I/O. When inserting or updating an object with a raster property, the SetStreamReader method provides a means to set a IStreamReader callback. On execution of an insert or update command, requests are made on the reader for the image data (which is supplied by the FDO client application). The format of the image data expected is determined by the DataModel property. The data type, bit depth, tiling and organization specify the meaning of the image data. By setting the DataModel property prior to setting a reader for the data, the FDO client application can control the way data is understood by, the FDO raster subsystem. | |
__property System::Void | set_VerticalUnits (System::String *units) |
Sets the Vertical Unit of Measure corresponding to the Raster Band. | |
System::Void | SetNull () |
Sets the IRaster to a null value. | |
Variables | |
public __gc __interface | IRaster |
public __gc __interface | IRasterPropertyDictionary |
|
|
The RasterDataOrganization enumeration specifies the way pixel data is interleaved. Data is stored/retrieved in left to right, and secondarily top to bottom order within the interleave order. Tiles are also stored/retrieved in left to right, top to bottom order. For tiled data, data for one tile is completely stored/retrieved before the next tile, so for example, with 'RasterDataOrganization_Image' organization of RGB data with 24 bits per pixel, the TileSizeX by TileSizeY 8 bit data values for the red channel are stored first followed by the same number of green bytes, followed by the same number of blue bytes. This organization dependant storage should be considered when 'skipping' to the middle of an image.
|
|
The RasterDataType enumeration specifies the type of data stored in the Raster Image.
|
|
Get the minimum bounding box around the curent band of the image.
|
|
Gets the currently active band/channel.
|
|
Gets the data model in use by this raster property.
|
|
Gets the size of image file in the horizontal direction in pixels (number of columns).
|
|
Gets the size of image file in the vertical direction in pixels (number of rows).
|
|
Gets the pixel value that represents a NULL value in the available raster stream.
|
|
Gets the number of bands/channels contained in the raster image.
|
|
Gets the value of the specified property (or its default).
|
|
Gets the data type for the specified property.
|
|
Gets the default value for the specified property.
|
|
Access the values of the specified enumerable property. The property must respond TRUE to IsPropertyEnumerable.
|
|
Get the source of image data. Image data is shipped using a paradigm similar to BLOB I/O. When fetching a raster image the GetStreamReader() method provides a IStreamReader from which the client may request the image data. The format of the image data expected is determined by the DataModel property. The data type, bit depth, tiling and organization specify the meaning of the image data. By setting the DataModel property prior to getting a reader for the data, the FDO client application can control the way data is retrieved from the FDO raster subsystem. When a tiled image is fetched, the image data will be tiled by default, unless a spatial query is used that covers a portion of a tile, in which case the image is converted to monolithic form prior to returning to the client. The client may force a monolithic image in the former case by setting the DataModel to monolithic prior to getting the stream reader. Or conversely it can request a re-tiling of the remaining sub-image by setting the DataModel property to tiled (in this case the tile origin is at the new upper left corner of the sub-image). Note: Altering the DataModel may have significant performance issues.
|
|
Gets the Vertical Unit of Measure corresponding to the Raster Band. The string value returned will be a considered lookup value that will be used to identify the properties of the Unit of Measure using the IGetMeasureUnits command.
|
|
Get a dictionary style interface to the raster properties. Through this interface the non-standard properties of a raster image can be determined and their values can be retrieved and set. Data values are exchanged through the DataValue object to accommodate various data types, boolean, integer, double, string, etc.
|
|
Predicate to determine if the property is enumerable (has more than one value).
|
|
Predicate to determine if the property is required to be set.
|
|
Set the minimum bounding box around the image. For georeferenced images, the coordinate system is specified by the spatial context in force when the object is created. The act of setting this property georeferences the image. In order to provide for non-georeferenced images, this property is Nullable (doesn't need to be set).
|
|
Sets the currently active band/channel.
|
|
Sets the data model used by this raster property. Allowed values are only those data models that are acceptable to the SupportsDataModel capability.
|
|
Sets the size of image file in the horizontal direction in pixels (number of columns). By setting the X and Y image size properties prior to getting a reader for the data, the client application can control the density of pixels fetched by the provider, which may reduce the amount of data shipped by the reader and reduce processing time significantly. For example, a certain query in the coordinate system of the raster object class returns a IRaster object with image size 12091 by 8043. But the image only needs to be displayed in an area 1167 by 776 on the users monitor. (Note: The aspect ratios are the same because the query is constructed based on the display area). By setting the image size to these lower values the FDO raster subsystem may be able to use a previously subsampled image where the resolution has been reduced by a factor of 4. So instead of transferring 97MB, it can transfer 6MB (a reduction by 4 in both dimensions reduces the amount of data by a factor of 16) and subsample the image again to the desired resolution in a more timely manner (less data to process means less total time), with no appreciable difference in display quality to the user.
|
|
Sets the size of image file in the vertical direction in pixels (number of rows). See SetImageXSize.
|
|
Sets the number of bands/channels contained in the raster image.
|
|
Sets the value of the specified property.
|
|
Set the values of the specified enumerable property. The property must respond TRUE to IsPropertyEnumerable. Clients will need to use SetPropertyValues when creating an image with specific values for the enumerable property. An example would be setting a table of wavelength ranges corresponding to the false colour used to encode the image.
|
|
Set the source of image data. Image data is shipped using a paradigm similar to BLOB I/O. When inserting or updating an object with a raster property, the SetStreamReader method provides a means to set a IStreamReader callback. On execution of an insert or update command, requests are made on the reader for the image data (which is supplied by the FDO client application). The format of the image data expected is determined by the DataModel property. The data type, bit depth, tiling and organization specify the meaning of the image data. By setting the DataModel property prior to setting a reader for the data, the FDO client application can control the way data is understood by, the FDO raster subsystem.
|
|
Sets the Vertical Unit of Measure corresponding to the Raster Band.
|
|
Sets the IRaster to a null value.
|
|
|
|
|
Comments or suggestions? Send us feedback. |