OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Classes | Macros | Typedefs | Functions
shapefil.h File Reference
#include <stdio.h>

Go to the source code of this file.

Classes

struct  SAHooks
 
struct  SHPInfo
 
struct  SHPObject
 
struct  shape_tree_node
 
struct  SHPTree
 

Macros

#define TRIM_DBF_WHITESPACE
 
#define DISABLE_MULTIPATCH_MEASURE
 
#define SHPAPI_CALL
 
#define SHPAPI_CALL1(x)   x SHPAPI_CALL
 
#define SHP_CVSID(string)
 
#define SHPT_NULL   0
 
#define SHPT_POINT   1
 
#define SHPT_ARC   3
 
#define SHPT_POLYGON   5
 
#define SHPT_MULTIPOINT   8
 
#define SHPT_POINTZ   11
 
#define SHPT_ARCZ   13
 
#define SHPT_POLYGONZ   15
 
#define SHPT_MULTIPOINTZ   18
 
#define SHPT_POINTM   21
 
#define SHPT_ARCM   23
 
#define SHPT_POLYGONM   25
 
#define SHPT_MULTIPOINTM   28
 
#define SHPT_MULTIPATCH   31
 
#define SHPP_TRISTRIP   0
 
#define SHPP_TRIFAN   1
 
#define SHPP_OUTERRING   2
 
#define SHPP_INNERRING   3
 
#define SHPP_FIRSTRING   4
 
#define SHPP_RING   5
 
#define MAX_SUBNODE   4
 
#define MAX_DEFAULT_TREE_DEPTH   12
 
#define XBASE_FLDHDR_SZ   32
 

Typedefs

typedef int * SAFile
 
typedef unsigned long SAOffset
 
typedef SHPInfoSHPHandle
 
typedef struct shape_tree_node SHPTreeNode
 

Functions

void SHPAPI_CALL SASetupDefaultHooks (SAHooks *psHooks)
 
SHPHandle SHPAPI_CALL SHPOpen (const char *pszShapeFile, const char *pszAccess)
 
SHPHandle SHPAPI_CALL SHPOpenLL (const char *pszShapeFile, const char *pszAccess, SAHooks *psHooks)
 
SHPHandle SHPAPI_CALL SHPCreate (const char *pszShapeFile, int nShapeType)
 
SHPHandle SHPAPI_CALL SHPCreateLL (const char *pszShapeFile, int nShapeType, SAHooks *psHooks)
 
void SHPAPI_CALL SHPGetInfo (SHPHandle hSHP, int *pnEntities, int *pnShapeType, double *padfMinBound, double *padfMaxBound)
 
SHPObject SHPAPI_CALL1SHPReadObject (SHPHandle hSHP, int iShape);int SHPAPI_CALL SHPWriteObject(SHPHandle hSHP, int iShape, SHPObject *psObject
 
void SHPAPI_CALL SHPDestroyObject (SHPObject *psObject)
 
void SHPAPI_CALL SHPComputeExtents (SHPObject *psObject)
 
SHPObject SHPAPI_CALL1SHPCreateObject (int nSHPType, int nShapeId, int nParts, const int *panPartStart, const int *panPartType, int nVertices, const double *padfX, const double *padfY, const double *padfZ, const double *padfM);SHPObject SHPAPI_CALL1(*) SHPCreateSimpleObject(int nSHPType, int nVertices, const double *padfX, const double *padfY, const double *padfZ
 
int SHPAPI_CALL SHPRewindObject (SHPHandle hSHP, SHPObject *psObject)
 
void SHPAPI_CALL SHPClose (SHPHandle hSHP)
 
void SHPAPI_CALL SHPWriteHeader (SHPHandle hSHP)
 
const char SHPAPI_CALL1SHPTypeName (int nSHPType);const char SHPAPI_CALL1(*) SHPPartTypeName(int nPartType
 
SHPTree SHPAPI_CALL1SHPCreateTree (SHPHandle hSHP, int nDimension, int nMaxDepth, double *padfBoundsMin, double *padfBoundsMax);void SHPAPI_CALL SHPDestroyTree(SHPTree *hTree
 
int SHPAPI_CALL SHPWriteTree (SHPTree *hTree, const char *pszFilename)
 
SHPTree SHPAPI_CALL SHPReadTree (const char *pszFilename)
 
int SHPAPI_CALL SHPTreeAddObject (SHPTree *hTree, SHPObject *psObject)
 
int SHPAPI_CALL SHPTreeAddShapeId (SHPTree *hTree, SHPObject *psObject)
 
int SHPAPI_CALL SHPTreeRemoveShapeId (SHPTree *hTree, int nShapeId)
 
void SHPAPI_CALL SHPTreeTrimExtraNodes (SHPTree *hTree)
 
int SHPAPI_CALL1SHPTreeFindLikelyShapes (SHPTree *hTree, double *padfBoundsMin, double *padfBoundsMax, int *);int SHPAPI_CALL SHPCheckBoundsOverlap(double *, double *, double *, double *, int
 
int SHPAPI_CALL1SHPSearchDiskTree (FILE *fp, double *padfBoundsMin, double *padfBoundsMax, int *pnShapeCount);typedef struct{ SAHooks sHooks;SAFile fp;int nRecords;int nRecordLength;int nHeaderLength;int nFields;int *panFieldOffset;int *panFieldSize;int *panFieldDecimals;char *pachFieldType;char *pszHeader;int nCurrentRecord;int bCurrentRecordModified;char *pszCurrentRecord;int nWorkFieldLength;char *pszWorkField;int bNoHeader;int bUpdated;double dfDoubleField;} DBFInfo;typedef DBFInfo *DBFHandle;typedef enum { FTString, FTInteger, FTDouble, FTLogical, FTInvalid} DBFFieldType;#define XBASE_FLDHDR_SZDBFHandle SHPAPI_CALL DBFOpen(const char *pszDBFFile, const char *pszAccess
 
DBFHandle SHPAPI_CALL DBFOpenLL (const char *pszDBFFile, const char *pszAccess, SAHooks *psHooks)
 
DBFHandle SHPAPI_CALL DBFCreate (const char *pszDBFFile)
 
DBFHandle SHPAPI_CALL DBFCreateLL (const char *pszDBFFile, SAHooks *psHooks)
 
int SHPAPI_CALL DBFGetFieldCount (DBFHandle psDBF)
 
int SHPAPI_CALL DBFGetRecordCount (DBFHandle psDBF)
 
int SHPAPI_CALL DBFAddField (DBFHandle hDBF, const char *pszFieldName, DBFFieldType eType, int nWidth, int nDecimals)
 
int SHPAPI_CALL DBFAddNativeFieldType (DBFHandle hDBF, const char *pszFieldName, char chType, int nWidth, int nDecimals)
 
DBFFieldType SHPAPI_CALL DBFGetFieldInfo (DBFHandle psDBF, int iField, char *pszFieldName, int *pnWidth, int *pnDecimals)
 
int SHPAPI_CALL DBFGetFieldIndex (DBFHandle psDBF, const char *pszFieldName)
 
int SHPAPI_CALL DBFReadIntegerAttribute (DBFHandle hDBF, int iShape, int iField)
 
double SHPAPI_CALL DBFReadDoubleAttribute (DBFHandle hDBF, int iShape, int iField)
 
const char SHPAPI_CALL1DBFReadStringAttribute (DBFHandle hDBF, int iShape, int iField);const char SHPAPI_CALL1(*) DBFReadLogicalAttribute(DBFHandle hDBF, int iShape, int iField
 
int SHPAPI_CALL DBFIsAttributeNULL (DBFHandle hDBF, int iShape, int iField)
 
int SHPAPI_CALL DBFWriteIntegerAttribute (DBFHandle hDBF, int iShape, int iField, int nFieldValue)
 
int SHPAPI_CALL DBFWriteDoubleAttribute (DBFHandle hDBF, int iShape, int iField, double dFieldValue)
 
int SHPAPI_CALL DBFWriteStringAttribute (DBFHandle hDBF, int iShape, int iField, const char *pszFieldValue)
 
int SHPAPI_CALL DBFWriteNULLAttribute (DBFHandle hDBF, int iShape, int iField)
 
int SHPAPI_CALL DBFWriteLogicalAttribute (DBFHandle hDBF, int iShape, int iField, const char lFieldValue)
 
int SHPAPI_CALL DBFWriteAttributeDirectly (DBFHandle psDBF, int hEntity, int iField, void *pValue)
 
const char SHPAPI_CALL1DBFReadTuple (DBFHandle psDBF, int hEntity);int SHPAPI_CALL DBFWriteTuple(DBFHandle psDBF, int hEntity, void *pRawTuple
 
int SHPAPI_CALL DBFIsRecordDeleted (DBFHandle psDBF, int iShape)
 
int SHPAPI_CALL DBFMarkRecordDeleted (DBFHandle psDBF, int iShape, int bIsDeleted)
 
DBFHandle SHPAPI_CALL DBFCloneEmpty (DBFHandle psDBF, const char *pszFilename)
 
void SHPAPI_CALL DBFClose (DBFHandle hDBF)
 
void SHPAPI_CALL DBFUpdateHeader (DBFHandle hDBF)
 
char SHPAPI_CALL DBFGetNativeFieldType (DBFHandle hDBF, int iField)
 

Macro Definition Documentation

◆ DISABLE_MULTIPATCH_MEASURE

#define DISABLE_MULTIPATCH_MEASURE

Definition at line 129 of file shapefil.h.

◆ MAX_DEFAULT_TREE_DEPTH

#define MAX_DEFAULT_TREE_DEPTH   12

Definition at line 366 of file shapefil.h.

◆ MAX_SUBNODE

#define MAX_SUBNODE   4

Definition at line 363 of file shapefil.h.

◆ SHP_CVSID

#define SHP_CVSID (   string)
Value:
static char cpl_cvsid[] = string; \
static char *cvsid_aw() { return( cvsid_aw() ? ((char *) NULL) : cpl_cvsid ); }

Definition at line 183 of file shapefil.h.

◆ SHPAPI_CALL

#define SHPAPI_CALL

Definition at line 170 of file shapefil.h.

◆ SHPAPI_CALL1

#define SHPAPI_CALL1 (   x)    x SHPAPI_CALL

Definition at line 175 of file shapefil.h.

◆ SHPP_FIRSTRING

#define SHPP_FIRSTRING   4

Definition at line 270 of file shapefil.h.

◆ SHPP_INNERRING

#define SHPP_INNERRING   3

Definition at line 269 of file shapefil.h.

Referenced by ossimShapeObject::getPartByName().

◆ SHPP_OUTERRING

#define SHPP_OUTERRING   2

Definition at line 268 of file shapefil.h.

Referenced by ossimShapeObject::getPartByName().

◆ SHPP_RING

#define SHPP_RING   5

◆ SHPP_TRIFAN

#define SHPP_TRIFAN   1

Definition at line 267 of file shapefil.h.

Referenced by ossimShapeObject::getPartByName().

◆ SHPP_TRISTRIP

#define SHPP_TRISTRIP   0

Definition at line 266 of file shapefil.h.

Referenced by ossimShapeObject::getPartByName().

◆ SHPT_ARC

#define SHPT_ARC   3

Definition at line 247 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ SHPT_ARCM

#define SHPT_ARCM   23

Definition at line 255 of file shapefil.h.

◆ SHPT_ARCZ

#define SHPT_ARCZ   13

Definition at line 251 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ SHPT_MULTIPATCH

#define SHPT_MULTIPATCH   31

Definition at line 258 of file shapefil.h.

◆ SHPT_MULTIPOINT

#define SHPT_MULTIPOINT   8

Definition at line 249 of file shapefil.h.

◆ SHPT_MULTIPOINTM

#define SHPT_MULTIPOINTM   28

Definition at line 257 of file shapefil.h.

◆ SHPT_MULTIPOINTZ

#define SHPT_MULTIPOINTZ   18

Definition at line 253 of file shapefil.h.

◆ SHPT_NULL

#define SHPT_NULL   0

◆ SHPT_POINT

#define SHPT_POINT   1

Definition at line 246 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ SHPT_POINTM

#define SHPT_POINTM   21

Definition at line 254 of file shapefil.h.

◆ SHPT_POINTZ

#define SHPT_POINTZ   11

Definition at line 250 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ SHPT_POLYGON

#define SHPT_POLYGON   5

Definition at line 248 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ SHPT_POLYGONM

#define SHPT_POLYGONM   25

Definition at line 256 of file shapefil.h.

◆ SHPT_POLYGONZ

#define SHPT_POLYGONZ   15

Definition at line 252 of file shapefil.h.

Referenced by ossimEsriShapeFileFilter::loadShapeFile().

◆ TRIM_DBF_WHITESPACE

#define TRIM_DBF_WHITESPACE

Definition at line 122 of file shapefil.h.

◆ XBASE_FLDHDR_SZ

#define XBASE_FLDHDR_SZ   32

Typedef Documentation

◆ SAFile

typedef int* SAFile

Definition at line 192 of file shapefil.h.

◆ SAOffset

typedef unsigned long SAOffset

Definition at line 195 of file shapefil.h.

◆ SHPHandle

typedef SHPInfo* SHPHandle

Definition at line 240 of file shapefil.h.

◆ SHPTreeNode

typedef struct shape_tree_node SHPTreeNode

Function Documentation

◆ DBFAddField()

int SHPAPI_CALL DBFAddField ( DBFHandle  hDBF,
const char *  pszFieldName,
DBFFieldType  eType,
int  nWidth,
int  nDecimals 
)

◆ DBFAddNativeFieldType()

int SHPAPI_CALL DBFAddNativeFieldType ( DBFHandle  hDBF,
const char *  pszFieldName,
char  chType,
int  nWidth,
int  nDecimals 
)

◆ DBFCloneEmpty()

DBFHandle SHPAPI_CALL DBFCloneEmpty ( DBFHandle  psDBF,
const char *  pszFilename 
)

◆ DBFClose()

void SHPAPI_CALL DBFClose ( DBFHandle  hDBF)

◆ DBFCreate()

DBFHandle SHPAPI_CALL DBFCreate ( const char *  pszDBFFile)

◆ DBFCreateLL()

DBFHandle SHPAPI_CALL DBFCreateLL ( const char *  pszDBFFile,
SAHooks psHooks 
)

◆ DBFGetFieldCount()

int SHPAPI_CALL DBFGetFieldCount ( DBFHandle  psDBF)

◆ DBFGetFieldIndex()

int SHPAPI_CALL DBFGetFieldIndex ( DBFHandle  psDBF,
const char *  pszFieldName 
)

◆ DBFGetFieldInfo()

DBFFieldType SHPAPI_CALL DBFGetFieldInfo ( DBFHandle  psDBF,
int  iField,
char *  pszFieldName,
int *  pnWidth,
int *  pnDecimals 
)

◆ DBFGetNativeFieldType()

char SHPAPI_CALL DBFGetNativeFieldType ( DBFHandle  hDBF,
int  iField 
)

◆ DBFGetRecordCount()

int SHPAPI_CALL DBFGetRecordCount ( DBFHandle  psDBF)

◆ DBFIsAttributeNULL()

int SHPAPI_CALL DBFIsAttributeNULL ( DBFHandle  hDBF,
int  iShape,
int  iField 
)

◆ DBFIsRecordDeleted()

int SHPAPI_CALL DBFIsRecordDeleted ( DBFHandle  psDBF,
int  iShape 
)

◆ DBFMarkRecordDeleted()

int SHPAPI_CALL DBFMarkRecordDeleted ( DBFHandle  psDBF,
int  iShape,
int  bIsDeleted 
)

◆ DBFOpenLL()

DBFHandle SHPAPI_CALL DBFOpenLL ( const char *  pszDBFFile,
const char *  pszAccess,
SAHooks psHooks 
)

◆ DBFReadDoubleAttribute()

double SHPAPI_CALL DBFReadDoubleAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField 
)

◆ DBFReadIntegerAttribute()

int SHPAPI_CALL DBFReadIntegerAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField 
)

◆ DBFReadStringAttribute()

const char SHPAPI_CALL1* DBFReadStringAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField 
) const

◆ DBFReadTuple()

const char SHPAPI_CALL1* DBFReadTuple ( DBFHandle  psDBF,
int  hEntity 
)

◆ DBFUpdateHeader()

void SHPAPI_CALL DBFUpdateHeader ( DBFHandle  hDBF)

◆ DBFWriteAttributeDirectly()

int SHPAPI_CALL DBFWriteAttributeDirectly ( DBFHandle  psDBF,
int  hEntity,
int  iField,
void *  pValue 
)

◆ DBFWriteDoubleAttribute()

int SHPAPI_CALL DBFWriteDoubleAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField,
double  dFieldValue 
)

◆ DBFWriteIntegerAttribute()

int SHPAPI_CALL DBFWriteIntegerAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField,
int  nFieldValue 
)

◆ DBFWriteLogicalAttribute()

int SHPAPI_CALL DBFWriteLogicalAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField,
const char  lFieldValue 
)

◆ DBFWriteNULLAttribute()

int SHPAPI_CALL DBFWriteNULLAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField 
)

◆ DBFWriteStringAttribute()

int SHPAPI_CALL DBFWriteStringAttribute ( DBFHandle  hDBF,
int  iShape,
int  iField,
const char *  pszFieldValue 
)

◆ SASetupDefaultHooks()

void SHPAPI_CALL SASetupDefaultHooks ( SAHooks psHooks)

◆ SHPClose()

void SHPAPI_CALL SHPClose ( SHPHandle  hSHP)

Referenced by ossimShapeFile::close().

◆ SHPComputeExtents()

void SHPAPI_CALL SHPComputeExtents ( SHPObject psObject)

◆ SHPCreate()

SHPHandle SHPAPI_CALL SHPCreate ( const char *  pszShapeFile,
int  nShapeType 
)

◆ SHPCreateLL()

SHPHandle SHPAPI_CALL SHPCreateLL ( const char *  pszShapeFile,
int  nShapeType,
SAHooks psHooks 
)

◆ SHPCreateObject()

SHPObject SHPAPI_CALL1* SHPCreateObject ( int  nSHPType,
int  nShapeId,
int  nParts,
const int *  panPartStart,
const int *  panPartType,
int  nVertices,
const double *  padfX,
const double *  padfY,
const double *  padfZ,
const double *  padfM 
) const

◆ SHPCreateTree()

SHPTree SHPAPI_CALL1* SHPCreateTree ( SHPHandle  hSHP,
int  nDimension,
int  nMaxDepth,
double *  padfBoundsMin,
double *  padfBoundsMax 
)

◆ SHPDestroyObject()

void SHPAPI_CALL SHPDestroyObject ( SHPObject psObject)

◆ SHPGetInfo()

void SHPAPI_CALL SHPGetInfo ( SHPHandle  hSHP,
int *  pnEntities,
int *  pnShapeType,
double *  padfMinBound,
double *  padfMaxBound 
)

◆ SHPOpen()

SHPHandle SHPAPI_CALL SHPOpen ( const char *  pszShapeFile,
const char *  pszAccess 
)

Referenced by ossimShapeFile::open().

◆ SHPOpenLL()

SHPHandle SHPAPI_CALL SHPOpenLL ( const char *  pszShapeFile,
const char *  pszAccess,
SAHooks psHooks 
)

◆ SHPReadObject()

SHPObject SHPAPI_CALL1* SHPReadObject ( SHPHandle  hSHP,
int  iShape 
)

◆ SHPReadTree()

SHPTree SHPAPI_CALL SHPReadTree ( const char *  pszFilename)

◆ SHPRewindObject()

int SHPAPI_CALL SHPRewindObject ( SHPHandle  hSHP,
SHPObject psObject 
)

◆ SHPSearchDiskTree()

int SHPAPI_CALL1* SHPSearchDiskTree ( FILE *  fp,
double *  padfBoundsMin,
double *  padfBoundsMax,
int *  pnShapeCount 
) const

◆ SHPTreeAddObject()

int SHPAPI_CALL SHPTreeAddObject ( SHPTree hTree,
SHPObject psObject 
)

◆ SHPTreeAddShapeId()

int SHPAPI_CALL SHPTreeAddShapeId ( SHPTree hTree,
SHPObject psObject 
)

◆ SHPTreeFindLikelyShapes()

int SHPAPI_CALL1* SHPTreeFindLikelyShapes ( SHPTree hTree,
double *  padfBoundsMin,
double *  padfBoundsMax,
int *   
)

◆ SHPTreeRemoveShapeId()

int SHPAPI_CALL SHPTreeRemoveShapeId ( SHPTree hTree,
int  nShapeId 
)

◆ SHPTreeTrimExtraNodes()

void SHPAPI_CALL SHPTreeTrimExtraNodes ( SHPTree hTree)

◆ SHPTypeName()

const char SHPAPI_CALL1* SHPTypeName ( int  nSHPType) const

◆ SHPWriteHeader()

void SHPAPI_CALL SHPWriteHeader ( SHPHandle  hSHP)

◆ SHPWriteTree()

int SHPAPI_CALL SHPWriteTree ( SHPTree hTree,
const char *  pszFilename 
)