gdal_wrap.cpp

来自「支持各种栅格图像和矢量图像读取的库」· C++ 代码 · 共 2,170 行 · 第 1/5 页

CPP
2,170
字号
SWIGINTERN void CPLXMLNode_AddXMLSibling(CPLXMLNode *self,CPLXMLNode *psNewSibling){        return CPLAddXMLSibling( self, psNewSibling );    }SWIGINTERN CPLXMLNode *CPLXMLNode_CreateXMLElementAndValue(CPLXMLNode *self,char const *pszName,char const *pszValue){        return CPLCreateXMLElementAndValue( self, pszName, pszValue );                                     }SWIGINTERN CPLXMLNode *CPLXMLNode_CloneXMLTree(CPLXMLNode *self,CPLXMLNode *psTree){        return CPLCloneXMLTree( psTree );    }SWIGINTERN int CPLXMLNode_SetXMLValue(CPLXMLNode *self,char const *pszPath,char const *pszValue){        return CPLSetXMLValue( self,  pszPath, pszValue );               }SWIGINTERN void CPLXMLNode_StripXMLNamespace(CPLXMLNode *self,char const *pszNamespace,int bRecurse){        CPLStripXMLNamespace( self, pszNamespace, bRecurse );                      }SWIGINTERN char const *GDALMajorObjectShadow_GetDescription(GDALMajorObjectShadow *self){    return GDALGetDescription( self );  }SWIGINTERN void GDALMajorObjectShadow_SetDescription(GDALMajorObjectShadow *self,char const *pszNewDesc){    GDALSetDescription( self, pszNewDesc );  }SWIGINTERN char **GDALMajorObjectShadow_GetMetadata_Dict(GDALMajorObjectShadow *self,char const *pszDomain=""){    return GDALGetMetadata( self, pszDomain );  }SWIGINTERN char **GDALMajorObjectShadow_GetMetadata_List(GDALMajorObjectShadow *self,char const *pszDomain=""){    return GDALGetMetadata( self, pszDomain );  }SWIGINTERN CPLErr GDALMajorObjectShadow_SetMetadata__SWIG_0(GDALMajorObjectShadow *self,char **papszMetadata,char const *pszDomain=""){    return GDALSetMetadata( self, papszMetadata, pszDomain );  }SWIGINTERN CPLErr GDALMajorObjectShadow_SetMetadata__SWIG_1(GDALMajorObjectShadow *self,char *pszMetadataString,char const *pszDomain=""){    char *tmpList[2];    tmpList[0] = pszMetadataString;    tmpList[1] = 0;    return GDALSetMetadata( self, tmpList, pszDomain );  }SWIGINTERN GDALDatasetShadow *GDALDriverShadow_Create(GDALDriverShadow *self,char const *name,int xsize,int ysize,int bands=1,GDALDataType eType=GDT_Byte,char **options=0){    GDALDatasetShadow* ds = (GDALDatasetShadow*) GDALCreate( self, name, xsize, ysize, bands, eType, options );    return ds;  }SWIGINTERN GDALDatasetShadow *GDALDriverShadow_CreateCopy(GDALDriverShadow *self,char const *name,GDALDatasetShadow *src,int strict=1,char **options=0){    GDALDatasetShadow *ds = (GDALDatasetShadow*) GDALCreateCopy(self, name, src, strict, options, 0, 0 );    return ds;  }SWIGINTERN int GDALDriverShadow_Delete(GDALDriverShadow *self,char const *name){    return GDALDeleteDataset( self, name );  }SWIGINTERN int GDALDriverShadow_Register(GDALDriverShadow *self){    return GDALRegisterDriver( self );  }SWIGINTERN void GDALDriverShadow_Deregister(GDALDriverShadow *self){    GDALDeregisterDriver( self );  }char const *GDALDriverShadow_ShortName_get( GDALDriverShadow *h ) {  return GDALGetDriverShortName( h );}char const *GDALDriverShadow_LongName_get( GDALDriverShadow *h ) {  return GDALGetDriverLongName( h );}char const *GDALDriverShadow_HelpTopic_get( GDALDriverShadow *h ) {  return GDALGetDriverHelpTopic( h );}SWIGINTERN GDAL_GCP *new_GDAL_GCP(double x=0.0,double y=0.0,double z=0.0,double pixel=0.0,double line=0.0,char const *info="",char const *id=""){    GDAL_GCP *self = (GDAL_GCP*) CPLMalloc( sizeof( GDAL_GCP ) );    self->dfGCPX = x;    self->dfGCPY = y;    self->dfGCPZ = z;    self->dfGCPPixel = pixel;    self->dfGCPLine = line;    self->pszInfo =  CPLStrdup( (info == 0) ? "" : info );    self->pszId = CPLStrdup( (id==0)? "" : id );    return self;  }SWIGINTERN void delete_GDAL_GCP(GDAL_GCP *self){    if ( self->pszInfo )      CPLFree( self->pszInfo );    if ( self->pszId )      CPLFree( self->pszId );    CPLFree( self );  }double GDAL_GCP_GCPX_get( GDAL_GCP *h ) {  return h->dfGCPX;}void GDAL_GCP_GCPX_set( GDAL_GCP *h, double val ) {  h->dfGCPX = val;}double GDAL_GCP_GCPY_get( GDAL_GCP *h ) {  return h->dfGCPY;}void GDAL_GCP_GCPY_set( GDAL_GCP *h, double val ) {  h->dfGCPY = val;}double GDAL_GCP_GCPZ_get( GDAL_GCP *h ) {  return h->dfGCPZ;}void GDAL_GCP_GCPZ_set( GDAL_GCP *h, double val ) {  h->dfGCPZ = val;}double GDAL_GCP_GCPPixel_get( GDAL_GCP *h ) {  return h->dfGCPPixel;}void GDAL_GCP_GCPPixel_set( GDAL_GCP *h, double val ) {  h->dfGCPPixel = val;}double GDAL_GCP_GCPLine_get( GDAL_GCP *h ) {  return h->dfGCPLine;}void GDAL_GCP_GCPLine_set( GDAL_GCP *h, double val ) {  h->dfGCPLine = val;}const char * GDAL_GCP_Info_get( GDAL_GCP *h ) {  return h->pszInfo;}void GDAL_GCP_Info_set( GDAL_GCP *h, const char * val ) {  if ( h->pszInfo )     CPLFree( h->pszInfo );  h->pszInfo = CPLStrdup(val);}const char * GDAL_GCP_Id_get( GDAL_GCP *h ) {  return h->pszId;}void GDAL_GCP_Id_set( GDAL_GCP *h, const char * val ) {  if ( h->pszId )     CPLFree( h->pszId );  h->pszId = CPLStrdup(val);}/* Duplicate, but transposed names for C# because *  the C# module outputs backwards names*/double GDAL_GCP_get_GCPX( GDAL_GCP *h ) {  return h->dfGCPX;}void GDAL_GCP_set_GCPX( GDAL_GCP *h, double val ) {  h->dfGCPX = val;}double GDAL_GCP_get_GCPY( GDAL_GCP *h ) {  return h->dfGCPY;}void GDAL_GCP_set_GCPY( GDAL_GCP *h, double val ) {  h->dfGCPY = val;}double GDAL_GCP_get_GCPZ( GDAL_GCP *h ) {  return h->dfGCPZ;}void GDAL_GCP_set_GCPZ( GDAL_GCP *h, double val ) {  h->dfGCPZ = val;}double GDAL_GCP_get_GCPPixel( GDAL_GCP *h ) {  return h->dfGCPPixel;}void GDAL_GCP_set_GCPPixel( GDAL_GCP *h, double val ) {  h->dfGCPPixel = val;}double GDAL_GCP_get_GCPLine( GDAL_GCP *h ) {  return h->dfGCPLine;}void GDAL_GCP_set_GCPLine( GDAL_GCP *h, double val ) {  h->dfGCPLine = val;}const char * GDAL_GCP_get_Info( GDAL_GCP *h ) {  return h->pszInfo;}void GDAL_GCP_set_Info( GDAL_GCP *h, const char * val ) {  if ( h->pszInfo )     CPLFree( h->pszInfo );  h->pszInfo = CPLStrdup(val);}const char * GDAL_GCP_get_Id( GDAL_GCP *h ) {  return h->pszId;}void GDAL_GCP_set_Id( GDAL_GCP *h, const char * val ) {  if ( h->pszId )     CPLFree( h->pszId );  h->pszId = CPLStrdup(val);}staticCPLErr DSReadRaster_internal( GDALDatasetShadow *obj,                             int xoff, int yoff, int xsize, int ysize,                            int buf_xsize, int buf_ysize,                            GDALDataType buf_type,                            int *buf_size, char **buf,                            int band_list, int *pband_list ){  *buf_size = buf_xsize * buf_ysize * (GDALGetDataTypeSize( buf_type ) / 8) * band_list;  *buf = (char*) malloc( *buf_size );  CPLErr result = GDALDatasetRasterIO(obj, GF_Read, xoff, yoff, xsize, ysize,                                (void*) *buf, buf_xsize, buf_ysize, buf_type,                                band_list, pband_list, 0, 0, 0 );  if ( result != CE_None ) {    free( *buf );    *buf = 0;    *buf_size = 0;  }  return result;}SWIGINTERN void delete_GDALDatasetShadow(GDALDatasetShadow *self){    if ( GDALDereferenceDataset( self ) <= 0 ) {      GDALClose(self);    }  }SWIGINTERN GDALDriverShadow *GDALDatasetShadow_GetDriver(GDALDatasetShadow *self){    return (GDALDriverShadow*) GDALGetDatasetDriver( self );  }SWIGINTERN GDALRasterBandShadow *GDALDatasetShadow_GetRasterBand(GDALDatasetShadow *self,int nBand){    return (GDALRasterBandShadow*) GDALGetRasterBand( self, nBand );  }SWIGINTERN char const *GDALDatasetShadow_GetProjection(GDALDatasetShadow *self){    return GDALGetProjectionRef( self );  }SWIGINTERN char const *GDALDatasetShadow_GetProjectionRef(GDALDatasetShadow *self){    return GDALGetProjectionRef( self );  }SWIGINTERN CPLErr GDALDatasetShadow_SetProjection(GDALDatasetShadow *self,char const *prj){    return GDALSetProjection( self, prj );  }SWIGINTERN void GDALDatasetShadow_GetGeoTransform(GDALDatasetShadow *self,double argout[6]){    if ( GDALGetGeoTransform( self, argout ) != 0 ) {      argout[0] = 0.0;      argout[1] = 1.0;      argout[2] = 0.0;      argout[3] = 0.0;      argout[4] = 0.0;      argout[5] = 1.0;    }  }SWIGINTERN CPLErr GDALDatasetShadow_SetGeoTransform(GDALDatasetShadow *self,double argin[6]){    return GDALSetGeoTransform( self, argin );  }SWIGINTERN int GDALDatasetShadow_BuildOverviews(GDALDatasetShadow *self,char const *resampling="NEAREST",int overviewlist=0,int *pOverviews=0){    return GDALBuildOverviews( self, resampling, overviewlist, pOverviews, 0, 0, 0, 0);  }SWIGINTERN int GDALDatasetShadow_GetGCPCount(GDALDatasetShadow *self){    return GDALGetGCPCount( self );  }SWIGINTERN char const *GDALDatasetShadow_GetGCPProjection(GDALDatasetShadow *self){    return GDALGetGCPProjection( self );  }SWIGINTERN void GDALDatasetShadow_GetGCPs(GDALDatasetShadow *self,int *nGCPs,GDAL_GCP const **pGCPs){    *nGCPs = GDALGetGCPCount( self );    *pGCPs = GDALGetGCPs( self );  }SWIGINTERN CPLErr GDALDatasetShadow_SetGCPs(GDALDatasetShadow *self,int nGCPs,GDAL_GCP const *pGCPs,char const *pszGCPProjection){    return GDALSetGCPs( self, nGCPs, pGCPs, pszGCPProjection );  }SWIGINTERN void GDALDatasetShadow_FlushCache(GDALDatasetShadow *self){    GDALFlushCache( self );  }SWIGINTERN CPLErr GDALDatasetShadow_AddBand(GDALDatasetShadow *self,GDALDataType datatype=GDT_Byte,char **options=0){    return GDALAddBand( self, datatype, options );  }SWIGINTERN CPLErr GDALDatasetShadow_WriteRaster(GDALDatasetShadow *self,int xoff,int yoff,int xsize,int ysize,int buf_len,char *buf_string,int *buf_xsize=0,int *buf_ysize=0,GDALDataType *buf_type=0,int band_list=0,int *pband_list=0){    int nxsize = (buf_xsize==0) ? xsize : *buf_xsize;    int nysize = (buf_ysize==0) ? ysize : *buf_ysize;    GDALDataType ntype;    if ( buf_type != 0 ) {      ntype = (GDALDataType) *buf_type;    } else {      int lastband = GDALGetRasterCount( self ) - 1;      ntype = GDALGetRasterDataType( GDALGetRasterBand( self, lastband ) );    }    bool myBandList = false;    int nBandCount;    int *pBandList;    if ( band_list != 0 ) {      myBandList = false;      nBandCount = band_list;      pBandList = pband_list;    }    else {      myBandList = true;      nBandCount = GDALGetRasterCount( self );      pBandList = (int*) CPLMalloc( sizeof(int) * nBandCount );      for( int i = 0; i< nBandCount; ++i ) {        pBandList[i] = i;      }    }    return GDALDatasetRasterIO( self, GF_Write, xoff, yoff, xsize, ysize,                                (void*) buf_string, nxsize, nysize, ntype,                                band_list, pband_list, 0, 0, 0 );    if ( myBandList ) {       CPLFree( pBandList );    }  }SWIGINTERN CPLErr GDALDatasetShadow_ReadRaster(GDALDatasetShadow *self,int xoff,int yoff,int xsize,int ysize,int *buf_len,char **buf,int *buf_xsize=0,int *buf_ysize=0,GDALDataType *buf_type=0,int band_list=0,int *pband_list=0){    int nxsize = (buf_xsize==0) ? xsize : *buf_xsize;    int nysize = (buf_ysize==0) ? ysize : *buf_ysize;    GDALDataType ntype;    if ( buf_type != 0 ) {      ntype = (GDALDataType) *buf_type;    } else {      int lastband = GDALGetRasterCount( self ) - 1;      ntype = GDALGetRasterDataType( GDALGetRasterBand( self, lastband ) );    }    bool myBandList = false;    int nBandCount;    int *pBandList;    if ( band_list != 0 ) {      myBandList = false;      nBandCount = band_list;      pBandList = pband_list;    }    else {      myBandList = true;      nBandCount = GDALGetRasterCount( self );      pBandList = (int*) CPLMalloc( sizeof(int) * nBandCount );      for( int i = 0; i< nBandCount; ++i ) {        pBandList[i] = i;      }    }                                return DSReadRaster_internal( self, xoff, yoff, xsize, ysize,                                nxsize, nysize, ntype,                                buf_len, buf,                                 nBandCount, pBandList);    if ( myBandList ) {       CPLFree( pBandList );    }}int GDALDatasetShadow_RasterXSize_get( GDALDatasetShadow *h ) {  return GDALGetRasterXSize( h );}int GDALDatasetShadow_RasterYSize_get( GDALDatasetShadow *h ) {  return GDALGetRasterYSize( h );}int GDALDatasetShadow_RasterCount_get( GDALDatasetShadow *h ) {  return GDALGetRasterCount( h );}staticCPLErr ReadRaster_internal( GDALRasterBandShadow *obj,                             int xoff, int yoff, int xsize, int ysize,                            int buf_xsize, int buf_ysize,                            GDALDataType buf_type,                            int *buf_size, char **buf ){  *buf_size = buf_xsize * buf_ysize * GDALGetDataTypeSize( buf_type ) / 8;  *buf = (char*) malloc( *buf_size );  CPLErr result =  GDALRasterIO( obj, GF_Read, xoff, yoff, xsize, ysize,                                 (void *) *buf, buf_xsize, buf_ysize,                                 buf_type, 0, 0 );  if ( result != CE_None ) {    free( *buf );    *buf = 0;    *buf_size = 0;  }  return result;}staticCPLErr WriteRaster_internal( GDALRasterBandShadow *obj,                             int xoff, int yoff, int xsize, int ysize,                             int buf_xsize, int buf_ysize,                             GDALDataType buf_type,                             int buf_size, char *buffer ){    if ( buf_size < buf_xsize * buf_ysize * GDALGetDataTypeSize( buf_type) /8 ) {      return CE_Failure;    }    return GDALRasterIO( obj, GF_Write, xoff, yoff, xsize, ysize, 		        (void *) buffer, buf_xsize, buf_ysize, buf_type, 0, 0 );}SWIGINTERN void GDALRasterBandShadow_GetBlockSize(GDALRasterBandShadow *self,int *pnBlockXSize,int *pnBlockYSize){      GDALGetBlockSize(self, pnBlockXSize, pnBlockYSize);  }SWIGINTERN GDALColorInterp GDALRasterBandShadow_GetRasterColorInterpretation(GDALRasterBandShadow *self){    return GDALGetRasterColorInterpretation( self );  }SWIGINTERN CPLErr GDALRasterBandShadow_SetRasterColorInterpretation(GDALRasterBandShadow *self,GDALColorInterp val){    return GDALSetRasterColorInterpretation( self, val );  }SWIGINTERN void GDALRasterBandShadow_GetNoDataValue(GDALRasterBandShadow *self,double *val,int *hasval){    *val = GDALGetRasterNoDataValue( self, hasval );  }SWIGINTERN CPLErr GDALRasterBandShadow_SetNoDataValue(GDALRasterBandShadow *self,double d){    return GDALSetRasterNoDataValue( self, d );  }SWIGINTERN void GDALRasterBandShadow_GetMinimum(GDALRasterBandShadow *self,double *val,int *hasval){    *val = GDALGetRasterMinimum( self, hasval );  }SWIGINTERN void GDALRasterBandShadow_GetMaximum(GDALRasterBandShadow *self,double *val,int *hasval){    *val = GDALGetRasterMaximum( self, hasval );  }SWIGINTERN void GDALRasterBandShadow_GetOffset(GDALRasterBandShadow *self,double *val,int *hasval){    *val = GDALGetRasterOffset( self, hasval );  }SWIGINTERN void GDALRasterBandShadow_GetScale(GDALRasterBandShadow *self,double *val,int *hasval){    *val = GDALGetRasterScale( self, hasval );  }SWIGINTERN CPLErr GDALRasterBandShadow_GetStatistics(GDALRasterBandShadow *self,int approx_ok,int force,double *min,double *max,double *mean,double *stddev){    return GDALGetRasterStatistics( self, approx_ok, force, 				    min, max, mean, stddev );  }SWIGINTERN CPLErr GDALRasterBandShadow_SetStatistics(GDALRasterBandShadow *self,double min,double max,double mean,double stddev){    return GDALSetRasterStatistics( self, min, max, mean, stddev );  }SWIGINTERN int GDALRasterBandShadow_GetOverviewCount(GDALRasterBandShadow *self){    return GDALGetOverviewCount( self );  }SWIGINTERN GDALRasterBandShadow *GDALRasterBandShadow_GetOverview(GDALRasterBandShadow *self,int i){    return (GDALRasterBandShadow*) GDALGetOverview( self, i );  }SWIGINTERN int GDALRasterBandShadow_Checksum(GDALRasterBandShadow *self,int xoff=0,int yoff=0,int *xsize=0,int *ysize=0){    int nxsize = (xsize!=0) ? *xsize : GDALGetRasterBandXSize( self );    int nysize = (ysize!=0) ? *ysize : GDALGetRasterBandYSize( self );    return GDALChecksumImage( self, xoff, yoff, nxsize, nysize );  }SWIGINTERN void GDALRasterBandShadow_ComputeRasterMinMax(GDALRasterBandShadow *self,double argout[2],int approx_ok=0){    GDALComputeRasterMinMax( self, approx_ok, argout );  }SWIGINTERN void GDALRasterBandShadow_ComputeBandStats(GDALRasterBandShadow *self,double argout[2],int samplestep=1){    GDALComputeBandStats( self, samplestep, argout+0, argout+1,                           NULL, NULL );  }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?