| The Gaudi Framework v30r0 (c919700c)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

LibSymbolInfo.h
Go to the documentation of this file.
1 // LibSymbolInfo.h: interface for the CLibSymbolInfo class.
2 //
4
5 #if !defined( AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_ )
6 #define AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_
7
8 #include <iostream>
9 #include <string>
10
11 #include <assert.h>
12 #include <stdio.h>
13 #include <windows.h>
14
15 class CLibSymbolInfo
16 {
17 public:
18 CLibSymbolInfo();
19 virtual ~CLibSymbolInfo();
20 BOOL DumpSymbols( LPTSTR lpszLibPathName, std::ostream& pFile );
21 std::string GetLastError() const;
22
23 protected:
24 std::string m_strResultsString;
25 std::string m_strErrorMsg;
26
27 BOOL Dump( LPTSTR lpszLibPathName, std::ostream& pFile );
28 BOOL IsRegularLibSymbol( PSTR pszSymbolName );
29 BOOL IsFiltedSymbol( std::string& pszSymbolName );
30 DWORD ConvertBigEndian( DWORD bigEndian );
31 };
32
33 enum errMMF { errMMF_NoError, errMMF_FileOpen, errMMF_FileMapping, errMMF_MapView };
34
35 class MEMORY_MAPPED_FILE
36 {
37 public:
38 MEMORY_MAPPED_FILE( PSTR pszFileName );
39 ~MEMORY_MAPPED_FILE( void );
40
41 PVOID GetBase( void ) { return m_pMemoryMappedFileBase; }
42 DWORD GetFileSize( void ) { return m_cbFile; }
43 BOOL IsValid( void ) { return errMMF_NoError == m_errCode; }
44 errMMF GetErrorType() { return m_errCode; }
45
46 private:
47 HANDLE m_hFile;
48 HANDLE m_hFileMapping; // Handle of memory mapped file
49 PVOID m_pMemoryMappedFileBase;
50 DWORD m_cbFile;
51 errMMF m_errCode;
52 };
53
54 typedef MEMORY_MAPPED_FILE* PMEMORY_MAPPED_FILE;
55
56 #endif // !defined(AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_)
MEMORY_MAPPED_FILE::GetBase
PVOID GetBase(void)
Definition: LibSymbolInfo.h:41
CLibSymbolInfo::GetLastError
std::string GetLastError() const
Definition: LibSymbolInfo.cpp:176
errMMF_FileOpen
Definition: LibSymbolInfo.h:33
CLibSymbolInfo::CLibSymbolInfo
CLibSymbolInfo()
Definition: LibSymbolInfo.cpp:21
errMMF_MapView
Definition: LibSymbolInfo.h:33
CLibSymbolInfo::m_strResultsString
std::string m_strResultsString
Definition: LibSymbolInfo.h:24
PMEMORY_MAPPED_FILE
MEMORY_MAPPED_FILE * PMEMORY_MAPPED_FILE
Definition: LibSymbolInfo.h:54
std::string
STL class.
MEMORY_MAPPED_FILE::GetErrorType
errMMF GetErrorType()
Definition: LibSymbolInfo.h:44
MEMORY_MAPPED_FILE::GetFileSize
DWORD GetFileSize(void)
Definition: LibSymbolInfo.h:42
CLibSymbolInfo
Definition: LibSymbolInfo.h:15
CLibSymbolInfo::Dump
BOOL Dump(LPTSTR lpszLibPathName, std::ostream &pFile)
Definition: LibSymbolInfo.cpp:61
errMMF_FileMapping
Definition: LibSymbolInfo.h:33
CLibSymbolInfo::m_strErrorMsg
std::string m_strErrorMsg
Definition: LibSymbolInfo.h:25
MEMORY_MAPPED_FILE::IsValid
BOOL IsValid(void)
Definition: LibSymbolInfo.h:43
MEMORY_MAPPED_FILE
Definition: LibSymbolInfo.h:35
MEMORY_MAPPED_FILE::m_cbFile
DWORD m_cbFile
Definition: LibSymbolInfo.h:50
MEMORY_MAPPED_FILE::m_errCode
errMMF m_errCode
Definition: LibSymbolInfo.h:51
errMMF
errMMF
Definition: LibSymbolInfo.h:33
MEMORY_MAPPED_FILE::m_hFile
HANDLE m_hFile
Definition: LibSymbolInfo.h:47
CLibSymbolInfo::IsFiltedSymbol
BOOL IsFiltedSymbol(std::string &pszSymbolName)
Definition: LibSymbolInfo.cpp:147
MEMORY_MAPPED_FILE::m_pMemoryMappedFileBase
PVOID m_pMemoryMappedFileBase
Definition: LibSymbolInfo.h:49
CLibSymbolInfo::ConvertBigEndian
DWORD ConvertBigEndian(DWORD bigEndian)
Definition: LibSymbolInfo.cpp:164
MEMORY_MAPPED_FILE::m_hFileMapping
HANDLE m_hFileMapping
Definition: LibSymbolInfo.h:48
std::ostream
STL class.
CLibSymbolInfo::DumpSymbols
BOOL DumpSymbols(LPTSTR lpszLibPathName, std::ostream &pFile)
Definition: LibSymbolInfo.cpp:37
errMMF_NoError
Definition: LibSymbolInfo.h:33
CLibSymbolInfo::~CLibSymbolInfo
virtual ~CLibSymbolInfo()
Definition: LibSymbolInfo.cpp:23
CLibSymbolInfo::IsRegularLibSymbol
BOOL IsRegularLibSymbol(PSTR pszSymbolName)
Definition: LibSymbolInfo.cpp:134