Exemplo n.º 1
0
 private void SetDataProviderByFile(string fname, params string[] options)
 {
     try
     {
         _dataProvider     = GeoDataDriver.Open(fname, enumDataProviderAccess.ReadOnly, options) as IRasterDataProvider;
         _dataProviderCopy = GeoDataDriver.Open(fname, enumDataProviderAccess.ReadOnly, options) as IRasterDataProvider;
         CheckDataProvider();
         _width           = _dataProviderCopy.Width;
         _heigth          = _dataProviderCopy.Height;
         _bandCount       = _dataProviderCopy.BandCount;
         _readPixelHelper = new ReadPixelHelper(_dataProviderCopy);
     }
     catch (Exception ex)
     {
         throw new CreateDataProviderFailedByFileName(fname, ex);
     }
     if (_dataProvider == null)
     {
         throw new CreateDataProviderFailedByFileName(fname);
     }
 }
Exemplo n.º 2
0
 public void Dispose()
 {
     if (_readPixelHelper != null)
     {
         _readPixelHelper.Dispose();
         _readPixelHelper = null;
     }
     if (_tileBitmapProvider != null)
     {
         _tileBitmapProvider.Dispose();
         _tileBitmapProvider = null;
     }
     if (_bitmap != null)
     {
         _bitmap.Dispose();
         _bitmap = null;
     }
     if (_dataProviderCopy != null)
     {
         IUpdateCoordEnvelope u = _dataProviderCopy as IUpdateCoordEnvelope;
         if (u != null)
         {
             u.IsStoreHeaderChanged = false;
         }
         _dataProviderCopy.Dispose();
         _dataProviderCopy = null;
     }
     if (_dataProvider != null)
     {
         _dataProvider.Dispose();
         _dataProvider = null;
     }
     if (_firstBitmap != null)
     {
         _firstBitmap.Dispose();
         _firstBitmap = null;
     }
     _envelope = null;
     _canvas   = null;
 }