MrSID Decode SDK for Raster Reference Manual
9.1.0.4045
Main Page
Namespaces
Classes
Files
Examples
File List
File Members
lti_imageWriter.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
#ifndef LTI_IMAGEWRITER_H
14
#define LTI_IMAGEWRITER_H
15
16
// lt_lib_mrsid_core
17
#include "
lti_types.h
"
18
19
#include <stdlib.h>
20
21
LT_BEGIN_NAMESPACE
(LizardTech)
22
23
24
31
class
LTIImageWriter
32
{
33
LT_DISALLOW_COPY_CONSTRUCTOR(LTIImageWriter);
34
public
:
35
virtual
~LTIImageWriter();
36
53
virtual
LT_STATUS
write(
const
LTIScene
& scene);
54
69
virtual
LT_STATUS
writeBegin(
const
LTIScene
& scene) = 0;
70
84
virtual
LT_STATUS
writeStrip(
LTISceneBuffer
& stripBuffer,
85
const
LTIScene
& stripScene) = 0;
86
98
virtual
LT_STATUS
writeEnd(
void
) = 0;
99
111
virtual
LT_STATUS
deleteOutput(
void
) = 0;
112
123
LT_STATUS
setStripHeight(
lt_uint32
stripHeight);
124
132
lt_uint32
getStripHeight(
void
)
const
;
133
144
virtual
lt_uint32
getDefaultStripHeight(
void
)
const
;
145
155
virtual
lt_int64 getEncodingCost(
const
LTIScene
& scene)
const
;
156
171
void
setProgressDelegate(
LTIProgressDelegate
* delegate);
172
187
void
setInterruptDelegate(
LTIInterruptDelegate
* delegate);
188
189
196
const
LTIImageStage
*getSourceImageStage(
void
)
const
;
197
211
LTIProgressDelegate
* getProgressDelegate(
void
)
const
;
212
226
LTIInterruptDelegate
* getInterruptDelegate(
void
)
const
;
227
238
virtual
LT_STATUS
setEncodingApplication(
const
char
*name,
239
const
char
*version,
240
const
char
*comment = NULL);
241
protected
:
242
LTIImageWriter(
void
);
251
LT_STATUS
init(
LTIImageStage
*imageStage);
252
LT_STATUS
writeCleanup(
LT_STATUS
sts);
253
254
LTIImageStage
*
m_image
;
255
256
private
:
257
LT_STATUS
checkDelegates(
const
LTIScene
& fullScene,
258
const
LTIScene
* currScene,
259
bool
atEnd);
260
261
lt_uint32
m_stripHeight;
262
263
LTIProgressDelegate
* m_progressDelegate;
264
LTIInterruptDelegate
* m_interruptDelegate;
265
};
266
267
268
LT_END_NAMESPACE
(LizardTech)
269
270
271
#endif // LTI_IMAGEWRITER_H
LizardTech