#include </builds/gaudi/Gaudi/GaudiKernel/src/Util/LibSymbolInfo.h>
Definition at line 25 of file LibSymbolInfo.h.
◆ CLibSymbolInfo()
CLibSymbolInfo::CLibSymbolInfo |
( |
| ) |
|
◆ ~CLibSymbolInfo()
CLibSymbolInfo::~CLibSymbolInfo |
( |
| ) |
|
|
virtual |
◆ ConvertBigEndian()
DWORD CLibSymbolInfo::ConvertBigEndian |
( |
DWORD |
bigEndian | ) |
|
|
protected |
Definition at line 168 of file LibSymbolInfo.cpp.
171 temp |= bigEndian >> 24;
172 temp |= ( ( bigEndian & 0x00FF0000 ) >> 8 );
173 temp |= ( ( bigEndian & 0x0000FF00 ) << 8 );
174 temp |= ( ( bigEndian & 0x000000FF ) << 24 );
◆ Dump()
BOOL CLibSymbolInfo::Dump |
( |
LPTSTR |
lpszLibPathName, |
|
|
std::ostream & |
pFile |
|
) |
| |
|
protected |
Definition at line 70 of file LibSymbolInfo.cpp.
75 if (
FALSE == libFile.IsValid() ) {
83 PSTR pArchiveStartString = (PSTR)libFile.GetBase();
85 if ( 0 !=
strncmp( pArchiveStartString, IMAGE_ARCHIVE_START, IMAGE_ARCHIVE_START_SIZE ) ) {
92 PIMAGE_ARCHIVE_MEMBER_HEADER pMbrHdr;
93 pMbrHdr =
MakePtr( PIMAGE_ARCHIVE_MEMBER_HEADER, pArchiveStartString, IMAGE_ARCHIVE_START_SIZE );
96 PDWORD pcbSymbols = (PDWORD)( pMbrHdr + 1 );
104 PDWORD pMemberOffsets = pcbSymbols + 1;
108 PSTR pszSymbolName =
MakePtr( PSTR, pMemberOffsets, 4 * cSymbols );
113 for (
unsigned i = 0; i < cSymbols; i++ ) {
124 string symbol( pszSymbolName );
131 pszSymbolName +=
strlen( pszSymbolName ) + 1;
◆ DumpSymbols()
BOOL CLibSymbolInfo::DumpSymbols |
( |
LPTSTR |
lpszLibPathName, |
|
|
std::ostream & |
pFile |
|
) |
| |
Definition at line 47 of file LibSymbolInfo.cpp.
48 if ( lpszLibPathName == NULL || pFile.
bad() ) {
49 assert( lpszLibPathName != NULL );
50 assert( pFile.
good() );
55 if ( !
Dump( lpszLibPathName, pFile ) )
return FALSE;
◆ GetLastError()
string CLibSymbolInfo::GetLastError |
( |
| ) |
const |
◆ IsFiltedSymbol()
BOOL CLibSymbolInfo::IsFiltedSymbol |
( |
std::string & |
pszSymbolName | ) |
|
|
protected |
Definition at line 152 of file LibSymbolInfo.cpp.
153 if ( symbolName.compare( 0, 2,
"__" ) == 0 )
return FALSE;
154 if ( symbolName.compare( 0, 3,
"??_" ) == 0 && symbolName[3] !=
'0' )
156 if ( symbolName[0] ==
'_' ) {
157 symbolName.erase( 0, 1 );
160 if ( symbolName.find(
"detail@boost" ) != string::npos )
return FALSE;
161 if ( symbolName.find(
"details@boost" ) != string::npos )
return FALSE;
◆ IsRegularLibSymbol()
BOOL CLibSymbolInfo::IsRegularLibSymbol |
( |
PSTR |
pszSymbolName | ) |
|
|
protected |
Definition at line 140 of file LibSymbolInfo.cpp.
141 if ( 0 ==
strncmp( pszSymbolName,
"__IMPORT_DESCRIPTOR_", 20 ) )
return FALSE;
143 if ( 0 ==
strncmp( pszSymbolName,
"__NULL_IMPORT_DESCRIPTOR", 24 ) )
return FALSE;
145 if (
strstr( pszSymbolName,
"_NULL_THUNK_DATA" ) )
return FALSE;
◆ m_strErrorMsg
◆ m_strResultsString
The documentation for this class was generated from the following files: