00001
00002
00003
00004
00005
00006
00007
00008
00009
00011
00012
00013 #ifndef LTI_CAPI_H
00014 #define LTI_CAPI_H
00015
00016 #include "lti_types.h"
00017 #include "lti_metadataTypes.h"
00018 #include "lt_ioCStream.h"
00019
00020 #ifdef LT_CPLUSPLUS
00021 extern "C" {
00022 #endif
00023
00024 #if defined(LT_COMPILER_MS)
00025 #pragma warning(push,4)
00026 #endif
00027
00028
00041 #define LT_STS_CAPI_BASE ((LT_STATUS)52000)
00042 #define LT_STS_CAPI_BadParam ((LT_STATUS)52001)
00043 #define LT_STS_CAPI_MAX ((LT_STATUS)52099)
00044
00050 typedef void* LTICImageH;
00051
00052
00068 LT_STATUS ltic_getVersion(lt_uint32* major,
00069 lt_uint32* minor,
00070 lt_uint32* revision,
00071 lt_uint32* build,
00072 const char** branch);
00073
00087 LT_STATUS ltic_getMrSIDGeneration(const char *fileName,
00088 int *generation,
00089 int *raster);
00090
00105 LT_STATUS ltic_openMrSIDImageFile(LTICImageH* image,
00106 const char* fileName);
00107
00122 LT_STATUS ltic_openMrSIDImageStream(LTICImageH* image,
00123 LTIOStreamH stream);
00124
00139 LT_STATUS ltic_openJP2ImageFile(LTICImageH* image,
00140 const char* fileName);
00141
00156 LT_STATUS ltic_openJP2ImageStream(LTICImageH* image,
00157 LTIOStreamH stream);
00158
00173 LT_STATUS ltic_openNITFImageFile(LTICImageH* image,
00174 const char* fileName);
00175
00187 LT_STATUS ltic_closeImage(LTICImageH image);
00188
00200 lt_uint32 ltic_getWidth(const LTICImageH image);
00201
00213 lt_uint32 ltic_getHeight(const LTICImageH image);
00214
00224 LT_STATUS ltic_getDimsAtMag(LTICImageH image,
00225 double magnification,
00226 lt_uint32 *width,
00227 lt_uint32 *height);
00228
00240 LTIColorSpace ltic_getColorSpace(const LTICImageH image);
00241
00253 lt_uint16 ltic_getNumBands(const LTICImageH image);
00254
00266 LTIDataType ltic_getDataType(const LTICImageH image);
00267
00279 double ltic_getMinMagnification(const LTICImageH image);
00280
00292 double ltic_getMaxMagnification(const LTICImageH image);
00293
00307 lt_uint8 ltic_isMrSIDLocked(const LTICImageH image);
00308
00322 LT_STATUS ltic_setMrSIDPassword(LTICImageH image, const lt_utf8* passwd);
00323
00335 double ltic_getGeoXOrigin(const LTICImageH image);
00336
00348 double ltic_getGeoYOrigin(const LTICImageH image);
00349
00361 double ltic_getGeoXResolution(const LTICImageH image);
00362
00374 double ltic_getGeoYResolution(const LTICImageH image);
00375
00387 double ltic_getGeoXRotation(const LTICImageH image);
00388
00400 double ltic_getGeoYRotation(const LTICImageH image);
00401
00422 LT_STATUS ltic_decode(LTICImageH image,
00423 double xUpperLeft,
00424 double yUpperLeft,
00425 double width,
00426 double height,
00427 double magnification,
00428 void** buffers);
00429
00443 lt_uint32 ltic_getNumMetadataRecords(LTICImageH image);
00444
00463 LT_STATUS ltic_getMetadataRecord(LTICImageH image,
00464 lt_uint32 recordNum,
00465 const char** tag,
00466 LTIMetadataDataType* datatype,
00467 lt_uint32* numDims,
00468 const lt_uint32** dims,
00469 const void** data);
00470
00471 #ifdef LT_CPLUSPLUS
00472 }
00473 #endif
00474
00475 #if defined(LT_COMPILER_MS)
00476 #pragma warning(pop)
00477 #endif
00478
00479 #endif