MrSID Decode SDK for Raster Reference Manual
9.0.0.3864
|
00001 /* $Id$ */ 00002 /* ////////////////////////////////////////////////////////////////////////// 00003 // // 00004 // This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue, // 00005 // Suite 200, Seattle, WA 98104. Unauthorized use or distribution // 00006 // prohibited. Access to and use of this code is permitted only under // 00007 // license from LizardTech, Inc. Portions of the code are protected by // 00008 // US and foreign patents and other filings. All Rights Reserved. // 00009 // // 00011 /* PUBLIC - C */ 00012 00013 #ifndef LT_IO_C_STREAM_H 00014 #define LT_IO_C_STREAM_H 00015 00016 #include "lt_base.h" 00017 #include "lt_lib_io.h" 00018 #include "lt_ioCallbackStreamTypes.h" 00019 00020 #if defined(LT_COMPILER_MS) 00021 #pragma warning(push,4) 00022 #endif 00023 00024 #ifdef LT_CPLUSPLUS 00025 extern "C" { 00026 #endif 00027 00035 00046 LT_STATUS lt_ioCStreamDestroy(LTIOStreamH stream); 00047 00048 00059 LT_STATUS lt_ioCStreamOpen(LTIOStreamH stream); 00060 00061 00073 LT_STATUS lt_ioCStreamClose(LTIOStreamH stream); 00074 00075 00088 lt_uint32 lt_ioCStreamRead(LTIOStreamH stream, lt_uint8* buf, lt_uint32 len); 00089 00090 00103 lt_uint32 lt_ioCStreamWrite(LTIOStreamH stream, const lt_uint8* buf, lt_uint32 len); 00104 00105 00118 LT_STATUS lt_ioCStreamSeek(LTIOStreamH stream, lt_int64 offset, LTIOSeekDir dir); 00119 00120 00131 lt_int64 lt_ioCStreamTell(LTIOStreamH stream); 00132 00133 00144 lt_uint8 lt_ioCStreamIsEOF(LTIOStreamH stream); 00145 00146 00157 lt_uint8 lt_ioCStreamIsOpen(LTIOStreamH stream); 00158 00159 00170 LTIOStreamH lt_ioCStreamDuplicate(LTIOStreamH stream); 00171 00172 00191 LTIOStreamH lt_ioCallbackStreamCreate(LTIOCallbackStream_Open open, 00192 LTIOCallbackStream_Close close, 00193 LTIOCallbackStream_Read read, 00194 LTIOCallbackStream_Write write, 00195 LTIOCallbackStream_Seek seek, 00196 LTIOCallbackStream_Tell tell, 00197 LTIOCallbackStream_IsEOF isEOF, 00198 LTIOCallbackStream_IsOpen isOpen, 00199 LTIOCallbackStream_Duplicate duplicate, 00200 void* userData); 00201 00204 #ifdef LT_CPLUSPLUS 00205 } 00206 #endif 00207 00208 #if defined(LT_COMPILER_MS) 00209 #pragma warning(pop) 00210 #endif 00211 00212 #endif