91 #define E_DEM_EMPTY 3000
93 class r_Conv_DEM :
public r_Convertor
97 static const r_Double NULL_DB;
98 static const r_Double ZERO_DB;
99 static const r_Double ZERO_DEM;
105 r_Double startx, endx, resx;
106 r_Double starty, endy, resy;
107 r_ULong flipy, flipx;
110 r_Conv_DEM(
const char* source,
const r_Minterval& lengthordomain,
const r_Type* tp)
throw(r_Error);
112 r_Conv_DEM(
const char* source,
const r_Minterval& lengthordomain,
int tp)
throw(r_Error);
114 r_convDesc& convertFrom(
const char* options = NULL) throw (r_Error);
116 r_convDesc& convertTo(const
char* options = NULL) throw (r_Error);
118 const
char* get_name() const throw();
120 r_Data_Format get_data_format() const throw();
122 r_Convertor* clone() const throw(r_Error);
125 static const r_Dimension srcIntervDim;
128 static const r_Dimension destIntervDim;
131 static
bool decodeOptions( const
char* options,
132 r_GeoBBox& collBBox) throw();
135 static
string encodeOptions(const r_GeoBBox& collBBox) throw();
138 virtual ~r_Conv_DEM(
void );
141 static
void initGeoBBox( r_GeoBBox& cBBox );
147 void checkLimits() throw(r_Error);
150 void readFromSrcStream() throw(r_Error);
151 void readToSrcStream() throw(r_Error);
152 void writeFromDestStream() throw(r_Error);
153 void writeToDestStream(ofstream& oFile) throw(r_Error);
159 static const r_ULong paramMin;
160 static const
char* paramSep;
161 static const
char* paramEq;
162 static const
char* paramFlipX;
163 static const
char* paramFlipY;
164 static const
char* paramStartX;
165 static const
char* paramEndX;
166 static const
char* paramResX;
167 static const
char* paramStartY;
168 static const
char* paramEndY;
169 static const
char* paramResY;
179 typedef vector<DEMRow> DEMRowVec;