[Gdal-dev] DriverManager
Matthew Hanson
mhanson at photon.com
Fri Oct 15 11:20:53 EDT 2004
Thanks Frank,
I see the C implementation now, missed it before, duh.
So, is there a way to tell if GDALAllRegister has already been called?
matt
> -----Original Message-----
> From: Frank Warmerdam [mailto:warmerdam at pobox.com]
> Sent: Friday, October 15, 2004 11:12 AM
> To: Matthew Hanson
> Cc: Gdal-dev at xserve.flids.com
> Subject: Re: [Gdal-dev] DriverManager
>
> Matthew Hanson wrote:
> > Hi,
> >
> > When is the global DriverManager object created?
>
> Matt,
>
> It is created by the first call to GetGDALDriverManager(). This usually
> happens in the all register function.
>
> > I thought it would be
> > created in the GDALAllRegister function. What I wanted to do is make
> the
> > AllRegister function happen in the background in my wrapper.
> >
> > - If the AllRegister function has not been called will
> GetGDALDriverManager
> > return a 0?
>
> No, it never returns NULL.
>
> > - The declaration for GetGDALDriverManager does not occur in gdal.h (but
> > DestroyDriverManager does), but instead is in gdal_priv.h. Shouldn't it
> be
> > in the C API header?
>
> The driver manager class is a singleton, and so it's existance as a
> descrete
> object is masked by the C API. There is little point in exposing it.
>
> > - There's one global instance of DriverManager which (sorta)
> holds/manages
> > one instance of GDALDriver for each format type. Does calling
> > DestroyDriverManager end up destroying all these instances and
> deregistering
> > all the drivers?
>
> Yes.
>
> > - I'm trying to figure out the C wrapper works, there's the gdal.h with
> the
> > declarations, but how is it linked to the native C++ object functions?
>
> Linked?
>
> The gdal.h declares all the C API functions. The implementation of the
> C functions is normally found in the source files right next to the
> corresponding C++ method implementation. The produced GDAL DLL exports
> the C and C++ interface.
>
> 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
More information about the Gdal-dev
mailing list