~ubuntu-branches/debian/sid/gdal/sid

« back to all changes in this revision

Viewing changes to alg/gdal_alg_priv.h

  • Committer: Package Import Robot
  • Author(s): Francesco Paolo Lovergine
  • Date: 2012-05-07 15:04:42 UTC
  • mfrom: (5.5.16 experimental)
  • Revision ID: package-import@ubuntu.com-20120507150442-2eks97loeh6rq005
Tags: 1.9.0-1
* Ready for sid, starting transition.
* All symfiles updated to latest builds.
* Added dh_numpy call in debian/rules to depend on numpy ABI.
* Policy bumped to 3.9.3, no changes required.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/******************************************************************************
2
 
 * $Id: gdal_alg_priv.h 18522 2010-01-11 18:07:15Z mloskot $
 
2
 * $Id: gdal_alg_priv.h 22502 2011-06-04 21:33:58Z rouault $
3
3
 *
4
4
 * Project:  GDAL Image Processing Algorithms
5
5
 * Purpose:  Prototypes and definitions for various GDAL based algorithms:
117
117
    void     Clear();
118
118
};
119
119
 
 
120
#ifdef OGR_ENABLED
 
121
/************************************************************************/
 
122
/*                          Polygon Enumerator                          */
 
123
/*                                                                      */
 
124
/*              Buffers has float values instead og GInt32              */
 
125
/************************************************************************/
 
126
class GDALRasterFPolygonEnumerator
 
127
 
 
128
{
 
129
private:
 
130
    void     MergePolygon( int nSrcId, int nDstId );
 
131
    int      NewPolygon( float fValue );
 
132
 
 
133
public:  // these are intended to be readonly.
 
134
 
 
135
    GInt32   *panPolyIdMap;
 
136
    float    *pafPolyValue;
 
137
 
 
138
    int      nNextPolygonId;
 
139
    int      nPolyAlloc;
 
140
 
 
141
    int      nConnectedness;
 
142
 
 
143
public:
 
144
             GDALRasterFPolygonEnumerator( int nConnectedness=4 );
 
145
            ~GDALRasterFPolygonEnumerator();
 
146
 
 
147
    void     ProcessLine( float *pafLastLineVal, float *pafThisLineVal,
 
148
                          GInt32 *panLastLineId,  GInt32 *panThisLineId,
 
149
                          int nXSize );
 
150
 
 
151
    void     CompleteMerges();
 
152
 
 
153
    void     Clear();
 
154
};
 
155
#endif
 
156
 
 
157
typedef void* (*GDALTransformDeserializeFunc)( CPLXMLNode *psTree );
 
158
 
 
159
void* GDALRegisterTransformDeserializer(const char* pszTransformName,
 
160
                                       GDALTransformerFunc pfnTransformerFunc,
 
161
                                       GDALTransformDeserializeFunc pfnDeserializeFunc);
 
162
void GDALUnregisterTransformDeserializer(void* pData);
 
163
 
 
164
/************************************************************************/
 
165
/*      Float comparison function.                                      */
 
166
/************************************************************************/
 
167
 
 
168
/**
 
169
 * Units in the Last Place. This specifies how big an error we are willing to
 
170
 * accept in terms of the value of the least significant digit of the floating
 
171
 * point number’s representation. MAX_ULPS can also be interpreted in terms of
 
172
 * how many representable floats we are willing to accept between A and B. 
 
173
 */
 
174
#define MAX_ULPS 10
 
175
 
 
176
GBool GDALFloatEquals(float A, float B);
 
177
 
120
178
#endif /* ndef GDAL_ALG_PRIV_H_INCLUDED */