]> git.tdb.fi Git - builder.git/blob - source/csourcefile.h
Reload includes from CSourceFiles when they are modified
[builder.git] / source / csourcefile.h
1 #ifndef CSOURCEFILE_H_
2 #define CSOURCEFILE_H_
3
4 #include "sourcefile.h"
5
6 /**
7 Represents a C or C++ source file.
8 */
9 class CSourceFile: public SourceFile
10 {
11 public:
12         typedef std::list<std::string> IncludeList;
13
14 private:
15         IncludeList includes;
16
17 public:
18         CSourceFile(Builder &, const Msp::FS::Path &);
19         CSourceFile(Builder &, const Component &, const Msp::FS::Path &);
20
21         virtual const char *get_type() const { return "CSourceFile"; }
22         const IncludeList &get_includes() const { return includes; }
23 private:
24         virtual void find_dependencies();
25         virtual void modified();
26 };
27
28 #endif