ec2e4a3f9dc120d780f437a79d16172d8e627d15
[satune.git] / src / Interpreter / alloyinterpreter.h
1 #ifndef ALLOYENC_H
2 #define ALLOYENC_H
3
4 #include "classlist.h"
5 #include "signatureenc.h"
6 #include "interpreter.h"
7 #include <iostream>
8 #include <fstream>
9
10 class AlloyInterpreter: public Interpreter{
11 public:
12         AlloyInterpreter(CSolver *solver);
13         virtual ~AlloyInterpreter();
14 protected:
15         virtual void dumpFooter();
16         virtual void dumpHeader();
17         virtual void compileRunCommand(char * command , size_t size);
18         virtual int getResult();
19         virtual void dumpAllConstraints(Vector<char *> &facts);
20         virtual string negateConstraint(string constr);
21         virtual string encodeBooleanLogic( BooleanLogic *bl);
22         virtual string encodeBooleanVar( BooleanVar *bv);
23         string encodeOperatorPredicate(BooleanPredicate *constraint);
24         virtual string processElementFunction(ElementFunction *element, ElementSig *signature);
25         virtual string operatorPredicateConstraint(CompOp op, ElementSig *elemSig1, ElementSig *elemSig2);
26 };
27
28 #endif