GetSize(
void)
const;
116 size_tGetBits(
void)
const;
120 Uint4GetResult32(
void)
const;
124 Uint8GetResult64(
void)
const;
127 stringGetResultHex(
void)
const;
132 static voidInitTables(
void);
160 voidx_Update(
const char*
str,
size_t len);
162 voidx_Reset(EMethodDef method);
224EMethod GetMethod(
void)
const;
233 voidCalculate(
const char*
str,
size_t len);
238 static voidCalculate(
const char*
str,
size_t len, EMethod method,
Uint4&
hash);
239 static voidCalculate(
const char*
str,
size_t len, EMethod method,
Uint8&
hash);
242 voidReset(EMethod method);
270 static Uint4FarmHash32(
const char*
str,
size_t len);
272 static Uint8FarmHash64(
const char*
str,
size_t len);
317kMinimumChecksumLength = 20
328EMethod GetMethod(
void)
const;
342 returnGetResult32();
354 returnGetResultHex();
358 voidAddChars(
const char*
str,
size_t len);
359 voidAddLine(
const char* line,
size_t len);
360 voidAddLine(
const string& line);
361 voidNextLine(
void);
365 voidAddFile(
const string& file_path);
378 voidReset(EMethod method);
381 boolValidChecksumLine(
const char* line,
size_t len)
const;
382 boolValidChecksumLine(
const string& line)
const;
393 boolValidChecksumLineLong(
const char* line,
size_t len)
const;
439 virtual const char* GetErrCodeString(
void)
const override;
465 const CChecksum& GetChecksum(
void)
const;
532 size_textra_len = 0;
534extra_bytes[extra_len++] = char(
len& 0xff);
537extra.
x_Update(extra_bytes, extra_len);
618 AddLine(line.data(), line.size());
625line[0] ==
'/'&& line[1] ==
'*'&&
626line[2] ==
' '&& line[3] ==
'O'&&
640 m_Value.md5->Finalize(digest);
647 unsigned char buf[16];
650 str.insert(
str.end(), (
const char*)
buf, (
const char*)
buf+ 16);
uint32_t MurmurHash2(const void *key, int len, uint32_t seed)
uint64_t MurmurHash64A(const void *key, int len, uint64_t seed)
void MurmurHash3_x86_32(const void *key, int len, uint32_t seed, void *out)
uint32 CityHash32(const char *buf, size_t len)
uint64 CityHash64(const char *buf, size_t len)
CChecksumBase â Base class with auxiliary methods for CHash and CChecksum.
CChecksumStreamWriter â.
CChecksum â Checksum calculator.
CHash â Hash calculator.
CTempString implements a light-weight string on top of a storage buffer whose lifetime management is ...
A very basic data-write interface.
Include a standard set of the NCBI C++ Toolkit most basic headers.
Abstract reader-writer interface classes.
std::ofstream out("events_result.xml")
main entry point for tests
static const char * str(char *buf, int n)
size_t GetBits(void) const
Return size of checksum/hash in bits (32, 64).
union CChecksumBase::@940 m_Value
Checksum/Hash computation result.
size_t m_CharCount
Number of processed chars.
CNcbiOstream & WriteChecksum(CNcbiOstream &out) const
Write checksum calculation results into output stream.
EMethodDef m_Method
Current method.
string GetHexSum(void) const
Return string with checksum in hexadecimal form.
NCBI_EXCEPTION_DEFAULT(CChecksumException, CCoreException)
CMD5 * md5
Used for MD5 calculation.
void x_Free(void)
Cleanup (used in destructor and assignment operator).
EMethodDef x_GetMethod(void) const
void AddLine(const char *line, size_t len)
void Reset(void)
Reset the object to prepare it to the next checksum computation with the same method.
Uint4 v32
Used to store 32-bit results.
Uint4 v32
Used to store 32-bit results.
EMethod
Method used to compute hash.
bool ValidChecksumLine(const char *line, size_t len) const
Check for checksum line.
void Reset(EMethod method)
Reset the object to prepare it to the next computation using another method.
bool ValidChecksumLineLong(const char *line, size_t len) const
Check for checksum line.
size_t GetSize(void) const
Return size of checksum/hash in bytes, depending on used method.
Uint4 GetChecksum(void) const
Return calculated checksum.
EMethodDef
All supported methods for CHash and CCheksum.
CChecksum m_Checksum
Checksum calculator.
void x_Update(const char *str, size_t len)
Update current control sum with data provided.
void GetMD5Digest(unsigned char digest[16]) const
Return calculated MD5 digest.
NCBI_XUTIL_EXPORT CChecksum ComputeFileChecksum(const string &path, CChecksum::EMethod method)
Compute checksum for the given file.
Uint8 GetResult64(void) const
Return calculated result.
size_t m_LineCount
Number of processed lines.
const CChecksum & GetChecksum(void) const
Return checksum.
EMethod GetMethod(void) const
Get current method used to compute hash.
void AddChars(const char *str, size_t len)
Update current control sum with data provided.
Uint4 GetResult32(void) const
Return calculated result.
EMethod GetMethod(void) const
Get current method used to compute checksum.
NCBI_XUTIL_EXPORT Uint4 ComputeFileCRC32(const string &path)
Compute CRC32 checksum for the given file.
void x_Reset(EMethodDef method)
Reset the object to prepare it to the next computation using selected method.
Uint8 v64
Used to store 64-bit results.
EMethod
Method used to compute control sum.
size_t GetChecksumSize(void) const
Return size of checksum in bytes.
static Uint8 m_Seed
Unique seed used by some hash methods.
CNcbiOstream & operator<<(CNcbiOstream &out, const CChecksum &checksum)
Write checksum calculation results into output stream.
void Calculate(const CTempString str)
Calculate hash.
@ eCityHash32
CityHash, 32-bit result.
@ eFarmHash32
FarmHash, 32-bit result.
@ eNone
Undefined (for internal use).
@ eCRC32INSD
Inverted CRC32ZIP.
@ eMurmurHash2_64
MurmurHash2 for x64, 64-bit result.
@ eAdler32
A bit faster than CRC32ZIP, not recommended for small data sizes.
@ eCRC32
32-bit Cyclic Redundancy Check.
@ eMurmurHash3_32
MurmurHash3 for x86, 32-bit result.
@ eCityHash64
CityHash, 64-bit result.
@ eMurmurHash2_32
MurmurHash2 for x86, 32-bit result.
@ eCRC32ZIP
Exact zip CRC32.
@ eCRC32CKSUM
CRC32 implemented by cksum utility.
@ eFarmHash64
FarmHash, 64-bit result.
@ eMD5
Message Digest version 5.
@ eCRC32C
CRC32C (Castagnoli).
EErrCode
Error types that an application can generate.
void Write(CObjectOStream &out, TConstObjectPtr object, const CTypeRef &type)
uint32_t Uint4
4-byte (32-bit) unsigned integer
uint64_t Uint8
8-byte (64-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
ERW_Result
Result codes for I/O operations.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
#define NCBI_XNCBI_EXPORT
CMD5 - class for computing Message Digest version 5 checksums.
NCBI_XUTIL_EXPORT
Parameter to control printing diagnostic message about conversion of static array data from a differe...
string GetMD5Digest(const CChecksum &cs)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4