[Gdal-dev] Filling a RasterBand with a constant value?

Marcus Barnes marcus at keyholecorp.com
Fri May 2 13:51:44 EDT 2003


I would like to strengthen Frank's statement. Adding a new method to a
class breaks binary and link compatibility. Therefore if a method is
added to a class it is a major revision of the software. Not a minor or
maintenance revision. 

This is a general principle of versioning that aims to avoid "DLL Hell"
among other problems. Minor and Maintenance versions of software are
required to be link compatible. So an application that compiles against
library v1.0 will run with any version v1.x.y of that library without
recompilation or relinking.

So unless you are prepared to change GDAL to 2.0.0 across the board I
would look for a compatible means to achieve this fill effect.

Regards.
---
Marcus Barnes mailto:marcus at keyholecorp.com 
Keyhole Inc. Mt View, CA http://www.earthviewer.com
 

-----Original Message-----
From: gdal-dev-admin at remotesensing.org
[mailto:gdal-dev-admin at remotesensing.org] On Behalf Of Frank Warmerdam
Sent: Friday, May 02, 2003 7:09 AM
To: gdal-dev at remotesensing.org
Subject: Re: [Gdal-dev] Filling a RasterBand with a constant value?


Simon Perkins wrote:
> To keep things simple I'll probably just do the full band fill for 
> now. We can always add an optional rectangle argument later if there's

> a need.

Sy,

The caveat on this is any change to a method signature makes the C++ API
binary incompatible with previous versions.  Any change to the number of
arguments to a method with a C binding makes that C binding no longer
safe to call cross-version, though at least applications that don't call
it won't be affected since the signature in C won't have changed.

In many cases I prefer to include all options I would be interested in
for a method/function call at the beginning and mark some as
unimplemented in the docs if I don't want to do them right away.
Especially at the C level I want applications built on old GDAL
libraries to be safe to use with newer versions of the library.  At the
C++ level I have accepted that an application pretty much has to be
compiled against the exact same rev. of the library.

Best regards,

-- 
---------------------------------------+--------------------------------
---------------------------------------+------
I set the clouds in motion - turn up   | Frank Warmerdam,
warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent


_______________________________________________
Gdal-dev mailing list
Gdal-dev at remotesensing.org
http://remotesensing.org/mailman/listinfo/gdal-dev




More information about the Gdal-dev mailing list