The Gaudi Framework  v30r3 (a5ef0a68)
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 
16 {
17 public:
19  virtual ~CLibSymbolInfo();
20  BOOL DumpSymbols( LPTSTR lpszLibPathName, std::ostream& pFile );
21  std::string GetLastError() const;
22 
23 protected:
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 
34 
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
50  DWORD m_cbFile;
52 };
53 
55 
56 #endif // !defined(AFX_LIBSYMBOLINFO_H__1A7003B4_BA53_11D1_AE46_1CFB51000000__INCLUDED_)
PVOID GetBase(void)
Definition: LibSymbolInfo.h:41
std::string GetLastError() const
std::string m_strResultsString
Definition: LibSymbolInfo.h:24
MEMORY_MAPPED_FILE * PMEMORY_MAPPED_FILE
Definition: LibSymbolInfo.h:54
STL class.
DWORD GetFileSize(void)
Definition: LibSymbolInfo.h:42
BOOL Dump(LPTSTR lpszLibPathName, std::ostream &pFile)
std::string m_strErrorMsg
Definition: LibSymbolInfo.h:25
BOOL IsValid(void)
Definition: LibSymbolInfo.h:43
errMMF
Definition: LibSymbolInfo.h:33
BOOL IsFiltedSymbol(std::string &pszSymbolName)
PVOID m_pMemoryMappedFileBase
Definition: LibSymbolInfo.h:49
DWORD ConvertBigEndian(DWORD bigEndian)
STL class.
BOOL DumpSymbols(LPTSTR lpszLibPathName, std::ostream &pFile)
virtual ~CLibSymbolInfo()
BOOL IsRegularLibSymbol(PSTR pszSymbolName)