Lucene++ - a full-featured, c++ search engine
API Documentation
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
include
ChecksumIndexOutput.h
Go to the documentation of this file.
1
2
// Copyright (c) 2009-2014 Alan Wright. All rights reserved.
3
// Distributable under the terms of either the Apache License (Version 2.0)
4
// or the GNU Lesser General Public License.
6
7
#ifndef CHECKSUMINDEXOUTPUT_H
8
#define CHECKSUMINDEXOUTPUT_H
9
10
#include <boost/crc.hpp>
11
#include "
IndexOutput.h
"
12
13
namespace
Lucene {
14
17
class
LPPAPI
ChecksumIndexOutput
:
public
IndexOutput
{
18
public
:
19
ChecksumIndexOutput
(
const
IndexOutputPtr
& main);
20
virtual
~
ChecksumIndexOutput
();
21
22
LUCENE_CLASS
(
ChecksumIndexOutput
);
23
24
protected
:
25
IndexOutputPtr
main;
26
boost::crc_32_type
checksum
;
27
28
public
:
31
virtual
void
writeByte(uint8_t b);
32
37
virtual
void
writeBytes(
const
uint8_t* b, int32_t offset, int32_t length);
38
40
int64_t getChecksum();
41
43
virtual
void
flush();
44
46
virtual
void
close();
47
50
virtual
int64_t getFilePointer();
51
54
virtual
void
seek(int64_t pos);
55
59
void
prepareCommit();
60
62
void
finishCommit();
63
65
virtual
int64_t length();
66
};
67
68
}
69
70
#endif
clucene.sourceforge.net