TrinityCore
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
 
DB2FileLoaderRegularImploperator= (DB2FileLoaderRegularImpl const &other)=delete
 
DB2FileLoaderRegularImploperator= (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
 
DB2SectionHeaderGetSection (uint32 section) const override
 
bool IsSignedField (uint32 field) const override
 
char const * GetExpectedSignMismatchReason (uint32 field) const override
 
- Public Member Functions inherited from DB2FileLoaderImpl
 DB2FileLoaderImpl ()=default
 
 DB2FileLoaderImpl (DB2FileLoaderImpl const &other)=delete
 
 DB2FileLoaderImpl (DB2FileLoaderImpl &&other) noexcept=delete
 
DB2FileLoaderImploperator= (DB2FileLoaderImpl const &other)=delete
 
DB2FileLoaderImploperator= (DB2FileLoaderImpl &&other) noexcept=delete
 
virtual ~DB2FileLoaderImpl ()=default
 
virtual 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)=0
 
virtual void SkipEncryptedSection (uint32 section)=0
 
virtual bool LoadTableData (DB2FileSource *source, uint32 section)=0
 
virtual bool LoadCatalogData (DB2FileSource *source, uint32 section)=0
 
virtual void SetAdditionalData (std::vector< uint32 > idTable, std::vector< DB2RecordCopy > copyTable, std::vector< std::vector< DB2IndexData > > parentIndexes)=0
 
virtual char * AutoProduceData (uint32 &indexTableSize, char **&indexTable)=0
 
virtual char * AutoProduceStrings (char **indexTable, uint32 indexTableSize, uint32 locale)=0
 
virtual void AutoProduceRecordCopies (uint32 records, char **indexTable, char *dataTable)=0
 
virtual DB2Record GetRecord (uint32 recordNumber) const =0
 
virtual DB2RecordCopy GetRecordCopy (uint32 copyNumber) const =0
 
virtual uint32 GetRecordCount () const =0
 
virtual uint32 GetRecordCopyCount () const =0
 
virtual uint32 GetMinId () const =0
 
virtual uint32 GetMaxId () const =0
 
virtual DB2FileLoadInfo const * GetLoadInfo () const =0
 
virtual DB2SectionHeaderGetSection (uint32 section) const =0
 
virtual bool IsSignedField (uint32 field) const =0
 
virtual char const * GetExpectedSignMismatchReason (uint32 field) const =0
 

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 >
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 204 of file DB2FileLoader.cpp.

Constructor & Destructor Documentation

◆ DB2FileLoaderRegularImpl() [1/3]

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

Definition at line 337 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()

char * DB2FileLoaderRegularImpl::AutoProduceData ( uint32 indexTableSize,
char **&  indexTable 
)
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 392 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ AutoProduceRecordCopies()

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

Implements DB2FileLoaderImpl.

Definition at line 621 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ AutoProduceStrings()

char * DB2FileLoaderRegularImpl::AutoProduceStrings ( char **  indexTable,
uint32  indexTableSize,
uint32  locale 
)
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 518 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ FillParentLookup()

void DB2FileLoaderRegularImpl::FillParentLookup ( char *  dataTable)
private

Definition at line 643 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetExpectedSignMismatchReason()

char const * DB2FileLoaderRegularImpl::GetExpectedSignMismatchReason ( uint32  field) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 1014 of file DB2FileLoader.cpp.

◆ GetFieldOffset()

uint16 DB2FileLoaderRegularImpl::GetFieldOffset ( uint32  field) const
private

Definition at line 884 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ GetLoadInfo()

DB2FileLoadInfo const * DB2FileLoaderRegularImpl::GetLoadInfo ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 975 of file DB2FileLoader.cpp.

◆ GetMaxId()

uint32 DB2FileLoaderRegularImpl::GetMaxId ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 950 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetMinId()

uint32 DB2FileLoaderRegularImpl::GetMinId ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 922 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ GetRawRecordData()

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

Implements DB2FileLoaderImpl.

Definition at line 744 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetRecord()

DB2Record DB2FileLoaderRegularImpl::GetRecord ( uint32  recordNumber) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 706 of file DB2FileLoader.cpp.

◆ GetRecordCopy()

DB2RecordCopy DB2FileLoaderRegularImpl::GetRecordCopy ( uint32  copyNumber) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 711 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetRecordCopyCount()

uint32 DB2FileLoaderRegularImpl::GetRecordCopyCount ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 724 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ GetRecordCount()

uint32 DB2FileLoaderRegularImpl::GetRecordCount ( ) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 719 of file DB2FileLoader.cpp.

◆ GetRecordSection()

uint32 DB2FileLoaderRegularImpl::GetRecordSection ( uint32  recordNumber) const
private

Definition at line 729 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSection()

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

Implements DB2FileLoaderImpl.

Definition at line 980 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ IsSignedField()

bool DB2FileLoaderRegularImpl::IsSignedField ( uint32  field) const
overridevirtual

Implements DB2FileLoaderImpl.

Definition at line 985 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ LoadCatalogData()

bool DB2FileLoaderRegularImpl::LoadCatalogData ( DB2FileSource ,
uint32   
)
inlineoverridevirtual

Implements DB2FileLoaderImpl.

Definition at line 219 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 345 of file DB2FileLoader.cpp.

◆ LoadTableData()

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

Implements DB2FileLoaderImpl.

Definition at line 356 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ 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 913 of file DB2FileLoader.cpp.

◆ RecordCreateDetachedFieldOffsets()

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

Implements DB2FileLoaderImpl.

Definition at line 908 of file DB2FileLoader.cpp.

◆ RecordDestroyFieldOffsets()

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

Implements DB2FileLoaderImpl.

Definition at line 918 of file DB2FileLoader.cpp.

◆ RecordGetFloat()

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

Implements DB2FileLoaderImpl.

Definition at line 788 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ RecordGetId()

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

Implements DB2FileLoaderImpl.

Definition at line 755 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RecordGetInt32()

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

Implements DB2FileLoaderImpl.

Definition at line 778 of file DB2FileLoader.cpp.

◆ RecordGetPackedValue()

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

Definition at line 878 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ RecordGetString()

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

Implements DB2FileLoaderImpl.

Definition at line 793 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RecordGetUInt16()

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

Implements DB2FileLoaderImpl.

Definition at line 768 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ RecordGetUInt32()

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

Implements DB2FileLoaderImpl.

Definition at line 773 of file DB2FileLoader.cpp.

◆ RecordGetUInt64()

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

Implements DB2FileLoaderImpl.

Definition at line 783 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ RecordGetUInt8()

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

Implements DB2FileLoaderImpl.

Definition at line 763 of file DB2FileLoader.cpp.

+ Here is the caller graph for this function:

◆ RecordGetVarInt()

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

Definition at line 802 of file DB2FileLoader.cpp.

+ Here is the call graph for this function:

◆ SetAdditionalData()

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

Implements DB2FileLoaderImpl.

Definition at line 381 of file DB2FileLoader.cpp.

◆ SkipEncryptedSection()

void DB2FileLoaderRegularImpl::SkipEncryptedSection ( uint32  )
inlineoverridevirtual

Implements DB2FileLoaderImpl.

Definition at line 217 of file DB2FileLoader.cpp.

Member Data Documentation

◆ _columnMeta

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

Definition at line 261 of file DB2FileLoader.cpp.

◆ _commonValues

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

Definition at line 264 of file DB2FileLoader.cpp.

◆ _copyTable

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

Definition at line 266 of file DB2FileLoader.cpp.

◆ _data

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

Definition at line 258 of file DB2FileLoader.cpp.

◆ _fileName

char const* DB2FileLoaderRegularImpl::_fileName
private

Definition at line 255 of file DB2FileLoader.cpp.

◆ _header

DB2Header const* DB2FileLoaderRegularImpl::_header
private

Definition at line 257 of file DB2FileLoader.cpp.

◆ _idTable

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

Definition at line 265 of file DB2FileLoader.cpp.

◆ _loadInfo

DB2FileLoadInfo const* DB2FileLoaderRegularImpl::_loadInfo
private

Definition at line 256 of file DB2FileLoader.cpp.

◆ _palletArrayValues

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

Definition at line 263 of file DB2FileLoader.cpp.

◆ _palletValues

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

Definition at line 262 of file DB2FileLoader.cpp.

◆ _parentIndexes

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

Definition at line 267 of file DB2FileLoader.cpp.

◆ _sections

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

Definition at line 260 of file DB2FileLoader.cpp.

◆ _stringTable

uint8* DB2FileLoaderRegularImpl::_stringTable
private

Definition at line 259 of file DB2FileLoader.cpp.


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