ns-3 Direct Code Execution
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
elf-dependencies.h
Go to the documentation of this file.
1 #ifndef ELF_DEPENDENCIES_H
2 #define ELF_DEPENDENCIES_H
3 
4 #include <string>
5 #include <vector>
6 #include <list>
7 
8 namespace ns3 {
9 
11 {
12 public:
13  struct Dependency
14  {
15  std::string required;
16  std::string found;
17  };
18  typedef std::vector<struct Dependency>::const_iterator Iterator;
19 
20  ElfDependencies (std::string filename);
21 
22  Iterator Begin (void) const;
23  Iterator End (void) const;
24 
25 private:
26  std::list<std::string> Split (std::string input, std::string sep) const;
27  std::list<std::string> GetSearchDirectories (void) const;
28  bool Exists (std::string filename) const;
29  bool SearchFile (std::string filename, std::string *dirname) const;
30  std::vector<struct Dependency> GatherDependencies (std::string fullname) const;
31  std::vector<struct Dependency> NewGather (std::string sName, std::string fullname) const;
32 
33  std::vector<struct Dependency> m_deps;
34 };
35 
36 } // namespace ns3
37 
38 
39 #endif /* ELF_DEPENDENCIES_H */