OOP representation of Transforms
[satune.git] / src / classlist.h
1 /*      Copyright (c) 2015 Regents of the University of California
2  *
3  *      Author: Brian Demsky <bdemsky@uci.edu>
4  *
5  *      This program is free software; you can redistribute it and/or
6  *      modify it under the terms of the GNU General Public License
7  *      version 2 as published by the Free Software Foundation.
8  */
9
10 #ifndef CLASSLIST_H
11 #define CLASSLIST_H
12
13 #include "mymemory.h"
14 #include <inttypes.h>
15
16 class CSolver;
17 struct SATEncoder;
18 typedef struct SATEncoder SATEncoder;
19
20 class Boolean;
21 class BooleanOrder;
22 class BooleanVar;
23 class BooleanLogic;
24 class BooleanPredicate;
25 class ASTNode;
26 class Set;
27 class MutableSet;
28
29 class ElementFunction;
30 class ElementSet;
31 class ElementConst;
32 class Element;
33
34 class FunctionOperator;
35 class FunctionTable;
36 class Function;
37
38 class Predicate;
39 class PredicateTable;
40 class PredicateOperator;
41 class Table;
42 class Order;
43 class OrderPair;
44
45 class OrderElement;
46 class IntegerEncodingRecord;
47 class Transform;
48
49 class ElementEncoding;
50 class FunctionEncoding;
51 class OrderEncoding;
52
53 class OrderGraph;
54 class OrderNode;
55 class OrderEdge;
56
57 class Pass;
58 class Transform;
59
60 struct IncrementalSolver;
61 typedef struct IncrementalSolver IncrementalSolver;
62
63 struct TableEntry;
64 typedef struct TableEntry TableEntry;
65
66 struct OrderEncoder;
67 typedef struct OrderEncoder OrderEncoder;
68
69 class Tuner;
70 class TunableDesc;
71
72 typedef int TunableParam;
73
74 typedef unsigned int uint;
75 typedef long int int64;
76 typedef uint64_t VarType;
77 #endif