blob: 9c08b09f4588772bb68ec86ee1689c2df0f9d6a1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
// UniqBlocks.h
#ifndef __UNIQ_BLOCKS_H
#define __UNIQ_BLOCKS_H
#include "../../Common/MyTypes.h"
#include "../../Common/MyBuffer.h"
#include "../../Common/MyVector.h"
struct CUniqBlocks
{
CObjectVector<CByteBuffer> Bufs;
CIntVector Sorted;
CIntVector BufIndexToSortedIndex;
int AddUniq(const Byte *data, size_t size);
UInt64 GetTotalSizeInBytes() const;
void GetReverseMap();
bool IsOnlyEmpty() const
{
if (Bufs.Size() == 0)
return true;
if (Bufs.Size() > 1)
return false;
return Bufs[0].Size() == 0;
}
};
#endif
|