MrSID Decode SDK for Raster Reference Manual
9.5.1.4427
Main Page
Namespaces
Classes
Files
Examples
File List
File Members
lt_ioMemStream.h
Go to the documentation of this file.
1
/* $Id$ */
2
/* //////////////////////////////////////////////////////////////////////////
3
// //
4
// This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue, //
5
// Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
6
// prohibited. Access to and use of this code is permitted only under //
7
// license from LizardTech, Inc. Portions of the code are protected by //
8
// US and foreign patents and other filings. All Rights Reserved. //
9
// //
11
/* PUBLIC */
12
13
14
#ifndef LT_IO_MEM_STREAM_H
15
#define LT_IO_MEM_STREAM_H
16
17
#include "
lt_ioStreamInf.h
"
18
19
LT_BEGIN_NAMESPACE
( LizardTech )
20
21
22
27
class
LTIOMemStream
: public
LTIOStreamInf
28
{
29
public
:
30
LTIOMemStream
();
31
virtual
~
LTIOMemStream
();
32
43
virtual
LT_STATUS
initialize(
void
* data,
lt_uint32
size );
44
52
virtual
LT_STATUS
initialize(
lt_uint32
size );
55
virtual
bool
isEOF();
56
virtual
bool
isOpen();
57
virtual
LT_STATUS
open();
58
virtual
LT_STATUS
close();
59
virtual
lt_uint32
read(
lt_uint8
*pDest,
lt_uint32
numBytes );
60
virtual
lt_uint32
write(
const
lt_uint8
*pSrc,
lt_uint32
numBytes );
61
virtual
LT_STATUS
seek( lt_int64 offset,
LTIOSeekDir
origin );
62
virtual
lt_int64 tell();
63
virtual
LTIOStreamInf* duplicate();
64
virtual
LT_STATUS
getLastError()
const
;
65
virtual
const
char
* getID()
const
;
66
67
protected
:
68
70
lt_uint8
*
m_data
;
71
73
lt_uint32
m_size
;
74
76
lt_uint32
m_cur
;
77
79
bool
m_ownsData
;
80
82
bool
m_isOpen
;
83
84
bool
m_isEOF
;
85
};
86
87
88
LT_END_NAMESPACE
( LizardTech )
89
90
91
#endif // LT_IO_MEM_STREAM_H
LizardTech