Continueed playing around with the buildsystem.
[aesalon.git] / include / monitor / analyzer / ExecutableAnalyzer.h
blobea01a7ed7ef3db5a4d7c208a7b406c151271853a
1 /**
2 Aesalon, a tool to visualize a program's behaviour at run-time.
3 Copyright (C) 2010, Aesalon Development Team.
5 Aesalon is distributed under the terms of the GNU GPLv3. For more
6 licensing information, see the file LICENSE included with the distribution.
8 @file include/monitor/analyzer/ExecutableAnalyzer.h
12 #ifndef AesalonMonitor_Analyzer_ExecutableAnalyzer_H
13 #define AesalonMonitor_Analyzer_ExecutableAnalyzer_H
15 #include "AbstractAnalyzer.h"
17 namespace Monitor {
18 namespace Analyzer {
20 class ExecutableAnalyzer : public AbstractAnalyzer {
21 protected:
22 std::string m_filename;
23 public:
24 ExecutableAnalyzer(std::string filename);
25 virtual ~ExecutableAnalyzer();
27 /** Config vault items are of the form SymbolName:SymbolAddress.
29 virtual Config::Vault *analyzerVault() = 0;
31 /** Analyzes an executable by trying various processing methods.
32 @return A configuration vault, or NULL if @a filename could not be parsed.
34 static Config::Vault *analyzeExecutable(std::string filename);
37 } // namespace Analyzer
38 } // namespace Monitor
40 #endif