TrinityCore
Loading...
Searching...
No Matches
DB2FileLoaderRegularImpl Class Referencefinal
+ Inheritance diagram for DB2FileLoaderRegularImpl:

Public Member Functions

 DB2FileLoaderRegularImpl (char const *fileName, DB2FileLoadInfo const *loadInfo, DB2Header const *header)
 
 DB2FileLoaderRegularImpl (DB2FileLoaderRegularImpl const &other)=delete
 
 DB2FileLoaderRegularImpl (DB2FileLoaderRegularImpl &&other) noexcept=delete
 
DB2FileLoaderRegularImpl & operator= (DB2FileLoaderRegularImpl const &other)=delete
 
DB2FileLoaderRegularImpl & operator= (DB2FileLoaderRegularImpl &&other) noexcept=delete
 
 ~DB2FileLoaderRegularImpl ()
 
void LoadColumnData (std::unique_ptr< DB2SectionHeader[]> sections, std::unique_ptr< DB2FieldEntry[]> fields, std::unique_ptr< DB2ColumnMeta[]> columnMeta, std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]> palletValues, std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]> palletArrayValues, std::unique_ptr< std::unordered_map< uint32, uint32 >[]> commonValues) override
 
void SkipEncryptedSection (uint32) override
 
bool LoadTableData (DB2FileSource *source, uint32 section) override
 
bool LoadCatalogData (DB2FileSource *, uint32) override
 
void SetAdditionalData (std::vector< uint32 > idTable, std::vector< DB2RecordCopy > copyTable, std::vector< std::vector< DB2IndexData > > parentIndexes) override
 
char * AutoProduceData (uint32 &indexTableSize, char **&indexTable) override
 
char * AutoProduceStrings (char **indexTable, uint32 indexTableSize, uint32 locale) override
 
void AutoProduceRecordCopies (uint32 records, char **indexTable, char *dataTable) override
 
DB2Record GetRecord (uint32 recordNumber) const override
 
DB2RecordCopy GetRecordCopy (uint32 copyNumber) const override
 
uint32 GetRecordCount () const override
 
uint32 GetRecordCopyCount () const override
 
uint32 GetMinId () const override
 
uint32 GetMaxId () const override
 
DB2FileLoadInfo const * GetLoadInfo () const override
 
DB2SectionHeader & GetSection (uint32 section) const override
 
- Public Member Functions inherited from DB2FileLoaderImpl
 DB2FileLoaderImpl ()=default
 
 DB2FileLoaderImpl (DB2FileLoaderImpl const &other)=delete
 
 DB2FileLoaderImpl (DB2FileLoaderImpl &&other) noexcept=delete
 
DB2FileLoaderImpl & operator= (DB2FileLoaderImpl const &other)=delete
 
DB2FileLoaderImpl & operator= (DB2FileLoaderImpl &&other) noexcept=delete
 
virtual ~DB2FileLoaderImpl ()=default
 

Private Member Functions

void FillParentLookup (char *dataTable)
 
uint32 GetRecordSection (uint32 recordNumber) const
 
unsigned char const * GetRawRecordData (uint32 recordNumber, uint32 const *section) const override
 
uint32 RecordGetId (uint8 const *record, uint32 recordIndex) const override
 
uint8 RecordGetUInt8 (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
uint16 RecordGetUInt16 (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
uint32 RecordGetUInt32 (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
int32 RecordGetInt32 (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
uint64 RecordGetUInt64 (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
float RecordGetFloat (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
char const * RecordGetString (uint8 const *record, uint32 field, uint32 arrayIndex) const override
 
template<typename T >
T RecordGetVarInt (uint8 const *record, uint32 field, uint32 arrayIndex) const
 
uint64 RecordGetPackedValue (uint8 const *packedRecordData, uint32 bitWidth, uint32 bitOffset) const
 
uint16 GetFieldOffset (uint32 field) const
 
std::size_t * RecordCreateDetachedFieldOffsets (std::size_t *oldOffsets) const override
 
std::size_t * RecordCopyDetachedFieldOffsets (std::size_t *oldOffsets) const override
 
void RecordDestroyFieldOffsets (std::size_t *&fieldOffsets) const override
 

Private Attributes

char const * _fileName
 
DB2FileLoadInfo const * _loadInfo
 
DB2Header const * _header
 
std::unique_ptr< uint8[]> _data
 
uint8 * _stringTable
 
std::unique_ptr< DB2SectionHeader[]> _sections
 
std::unique_ptr< DB2ColumnMeta[]> _columnMeta
 
std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]> _palletValues
 
std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]> _palletArrayValues
 
std::unique_ptr< std::unordered_map< uint32, uint32 >[]> _commonValues
 
std::vector< uint32 > _idTable
 
std::vector< DB2RecordCopy > _copyTable
 
std::vector< std::vector< DB2IndexData > > _parentIndexes
 

Detailed Description

Definition at line 205 of file DB2FileLoader.cpp.

Constructor & Destructor Documentation

◆ DB2FileLoaderRegularImpl() [1/3]

DB2FileLoaderRegularImpl::DB2FileLoaderRegularImpl ( char const *  fileName,
DB2FileLoadInfo const *  loadInfo,
DB2Header const *  header 
)

Definition at line 334 of file DB2FileLoader.cpp.

◆ DB2FileLoaderRegularImpl() [2/3]

DB2FileLoaderRegularImpl::DB2FileLoaderRegularImpl ( DB2FileLoaderRegularImpl const &  other)
delete

◆ DB2FileLoaderRegularImpl() [3/3]

DB2FileLoaderRegularImpl::DB2FileLoaderRegularImpl ( DB2FileLoaderRegularImpl &&  other)
deletenoexcept

◆ ~DB2FileLoaderRegularImpl()

DB2FileLoaderRegularImpl::~DB2FileLoaderRegularImpl ( )
default

Member Function Documentation

◆ AutoProduceData()

◆ AutoProduceRecordCopies()

void DB2FileLoaderRegularImpl::AutoProduceRecordCopies ( uint32  records,
char **  indexTable,
char *  dataTable 
)
overridevirtual

◆ AutoProduceStrings()

◆ FillParentLookup()

◆ GetFieldOffset()

uint16 DB2FileLoaderRegularImpl::GetFieldOffset ( uint32  field) const
private

◆ GetLoadInfo()

DB2FileLoadInfo const * DB2FileLoaderRegularImpl::GetLoadInfo ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 980 of file DB2FileLoader.cpp.

References _loadInfo.

◆ GetMaxId()

uint32 DB2FileLoaderRegularImpl::GetMaxId ( ) const
overridevirtual

◆ GetMinId()

uint32 DB2FileLoaderRegularImpl::GetMinId ( ) const
overridevirtual

◆ GetRawRecordData()

unsigned char const * DB2FileLoaderRegularImpl::GetRawRecordData ( uint32  recordNumber,
uint32 const *  section 
) const
overrideprivatevirtual

◆ GetRecord()

DB2Record DB2FileLoaderRegularImpl::GetRecord ( uint32  recordNumber) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 698 of file DB2FileLoader.cpp.

References DB2FileLoaderImpl::DB2Record.

◆ GetRecordCopy()

DB2RecordCopy DB2FileLoaderRegularImpl::GetRecordCopy ( uint32  copyNumber) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 703 of file DB2FileLoader.cpp.

References _copyTable, and GetRecordCopyCount().

Referenced by AutoProduceRecordCopies(), GetMaxId(), and GetMinId().

◆ GetRecordCopyCount()

uint32 DB2FileLoaderRegularImpl::GetRecordCopyCount ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 716 of file DB2FileLoader.cpp.

References _copyTable.

Referenced by AutoProduceRecordCopies(), GetMaxId(), GetMinId(), and GetRecordCopy().

◆ GetRecordCount()

uint32 DB2FileLoaderRegularImpl::GetRecordCount ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 711 of file DB2FileLoader.cpp.

References _header, and DB2Header::RecordCount.

◆ GetRecordSection()

uint32 DB2FileLoaderRegularImpl::GetRecordSection ( uint32  recordNumber) const
private

◆ GetSection()

DB2SectionHeader & DB2FileLoaderRegularImpl::GetSection ( uint32  section) const
overridevirtual

◆ LoadCatalogData()

bool DB2FileLoaderRegularImpl::LoadCatalogData ( DB2FileSource *  ,
uint32   
)
inlineoverridevirtual

Implements DB2FileLoaderImpl.

Definition at line 220 of file DB2FileLoader.cpp.

◆ LoadColumnData()

void DB2FileLoaderRegularImpl::LoadColumnData ( std::unique_ptr< DB2SectionHeader[]>  sections,
std::unique_ptr< DB2FieldEntry[]>  fields,
std::unique_ptr< DB2ColumnMeta[]>  columnMeta,
std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]>  palletValues,
std::unique_ptr< std::unique_ptr< DB2PalletValue[]>[]>  palletArrayValues,
std::unique_ptr< std::unordered_map< uint32, uint32 >[]>  commonValues 
)
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 342 of file DB2FileLoader.cpp.

References _columnMeta, _commonValues, _palletArrayValues, _palletValues, and _sections.

◆ LoadTableData()

bool DB2FileLoaderRegularImpl::LoadTableData ( DB2FileSource *  source,
uint32  section 
)
overridevirtual

◆ operator=() [1/2]

DB2FileLoaderRegularImpl & DB2FileLoaderRegularImpl::operator= ( DB2FileLoaderRegularImpl &&  other)
deletenoexcept

◆ operator=() [2/2]

DB2FileLoaderRegularImpl & DB2FileLoaderRegularImpl::operator= ( DB2FileLoaderRegularImpl const &  other)
delete

◆ RecordCopyDetachedFieldOffsets()

std::size_t * DB2FileLoaderRegularImpl::RecordCopyDetachedFieldOffsets ( std::size_t *  oldOffsets) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 918 of file DB2FileLoader.cpp.

◆ RecordCreateDetachedFieldOffsets()

std::size_t * DB2FileLoaderRegularImpl::RecordCreateDetachedFieldOffsets ( std::size_t *  oldOffsets) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 913 of file DB2FileLoader.cpp.

◆ RecordDestroyFieldOffsets()

void DB2FileLoaderRegularImpl::RecordDestroyFieldOffsets ( std::size_t *&  fieldOffsets) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 923 of file DB2FileLoader.cpp.

◆ RecordGetFloat()

float DB2FileLoaderRegularImpl::RecordGetFloat ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 793 of file DB2FileLoader.cpp.

Referenced by AutoProduceData().

◆ RecordGetId()

uint32 DB2FileLoaderRegularImpl::RecordGetId ( uint8 const *  record,
uint32  recordIndex 
) const
overrideprivatevirtual

◆ RecordGetInt32()

int32 DB2FileLoaderRegularImpl::RecordGetInt32 ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 783 of file DB2FileLoader.cpp.

◆ RecordGetPackedValue()

uint64 DB2FileLoaderRegularImpl::RecordGetPackedValue ( uint8 const *  packedRecordData,
uint32  bitWidth,
uint32  bitOffset 
) const
private

Definition at line 883 of file DB2FileLoader.cpp.

Referenced by RecordGetVarInt().

◆ RecordGetString()

char const * DB2FileLoaderRegularImpl::RecordGetString ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

◆ RecordGetUInt16()

uint16 DB2FileLoaderRegularImpl::RecordGetUInt16 ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 773 of file DB2FileLoader.cpp.

Referenced by AutoProduceData().

◆ RecordGetUInt32()

uint32 DB2FileLoaderRegularImpl::RecordGetUInt32 ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 778 of file DB2FileLoader.cpp.

◆ RecordGetUInt64()

uint64 DB2FileLoaderRegularImpl::RecordGetUInt64 ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 788 of file DB2FileLoader.cpp.

Referenced by AutoProduceData().

◆ RecordGetUInt8()

uint8 DB2FileLoaderRegularImpl::RecordGetUInt8 ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
overrideprivatevirtual

Implements DB2FileLoaderImpl.

Definition at line 768 of file DB2FileLoader.cpp.

Referenced by AutoProduceData().

◆ RecordGetVarInt()

template<typename T >
T DB2FileLoaderRegularImpl::RecordGetVarInt ( uint8 const *  record,
uint32  field,
uint32  arrayIndex 
) const
private

◆ SetAdditionalData()

void DB2FileLoaderRegularImpl::SetAdditionalData ( std::vector< uint32 >  idTable,
std::vector< DB2RecordCopy >  copyTable,
std::vector< std::vector< DB2IndexData > >  parentIndexes 
)
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 378 of file DB2FileLoader.cpp.

References _copyTable, _idTable, and _parentIndexes.

◆ SkipEncryptedSection()

void DB2FileLoaderRegularImpl::SkipEncryptedSection ( uint32  )
inlineoverridevirtual

Implements DB2FileLoaderImpl.

Definition at line 218 of file DB2FileLoader.cpp.

Member Data Documentation

◆ _columnMeta

std::unique_ptr<DB2ColumnMeta[]> DB2FileLoaderRegularImpl::_columnMeta
private

Definition at line 260 of file DB2FileLoader.cpp.

Referenced by GetFieldOffset(), LoadColumnData(), and RecordGetVarInt().

◆ _commonValues

std::unique_ptr<std::unordered_map<uint32, uint32>[]> DB2FileLoaderRegularImpl::_commonValues
private

Definition at line 263 of file DB2FileLoader.cpp.

Referenced by LoadColumnData(), and RecordGetVarInt().

◆ _copyTable

std::vector<DB2RecordCopy> DB2FileLoaderRegularImpl::_copyTable
private

◆ _data

std::unique_ptr<uint8[]> DB2FileLoaderRegularImpl::_data
private

Definition at line 257 of file DB2FileLoader.cpp.

Referenced by GetRawRecordData(), LoadTableData(), and RecordGetVarInt().

◆ _fileName

char const* DB2FileLoaderRegularImpl::_fileName
private

◆ _header

◆ _idTable

std::vector<uint32> DB2FileLoaderRegularImpl::_idTable
private

Definition at line 264 of file DB2FileLoader.cpp.

Referenced by RecordGetId(), and SetAdditionalData().

◆ _loadInfo

DB2FileLoadInfo const* DB2FileLoaderRegularImpl::_loadInfo
private

◆ _palletArrayValues

std::unique_ptr<std::unique_ptr<DB2PalletValue[]>[]> DB2FileLoaderRegularImpl::_palletArrayValues
private

Definition at line 262 of file DB2FileLoader.cpp.

Referenced by LoadColumnData(), and RecordGetVarInt().

◆ _palletValues

std::unique_ptr<std::unique_ptr<DB2PalletValue[]>[]> DB2FileLoaderRegularImpl::_palletValues
private

Definition at line 261 of file DB2FileLoader.cpp.

Referenced by LoadColumnData(), and RecordGetVarInt().

◆ _parentIndexes

std::vector<std::vector<DB2IndexData> > DB2FileLoaderRegularImpl::_parentIndexes
private

Definition at line 266 of file DB2FileLoader.cpp.

Referenced by AutoProduceData(), FillParentLookup(), and SetAdditionalData().

◆ _sections

std::unique_ptr<DB2SectionHeader[]> DB2FileLoaderRegularImpl::_sections
private

Definition at line 259 of file DB2FileLoader.cpp.

Referenced by GetSection(), LoadColumnData(), and LoadTableData().

◆ _stringTable

uint8* DB2FileLoaderRegularImpl::_stringTable
private

Definition at line 258 of file DB2FileLoader.cpp.

Referenced by AutoProduceStrings(), and LoadTableData().


The documentation for this class was generated from the following file: