Merging with branch master and fixing bugs
[satune.git] / src / ASTTransform / pass.h
1 /* 
2  * File:   pass.h
3  * Author: hamed
4  *
5  * Created on August 28, 2017, 6:23 PM
6  */
7
8 #ifndef PASS_H
9 #define PASS_H
10 #include "classlist.h"
11 #include "mymemory.h"
12 #include "structs.h"
13 #include "tunable.h"
14 #include "csolver.h"
15
16 class Pass{
17 public:
18         Pass(Tunables _tunable, TunableDesc* _desc);
19         virtual ~Pass();
20         virtual inline bool canExecutePass(CSolver* This, uint type=0){
21                 return GETVARTUNABLE(This->getTuner(), type, tunable, tunableDesc);
22         }
23         MEMALLOC;
24 protected:
25         Tunables tunable;
26         TunableDesc* tunableDesc;
27 };
28
29
30 #endif /* PASS_H */
31