1 |
#ifndef ASCXX_RELATION_H |
2 |
#define ASCXX_RELATION_H |
3 |
|
4 |
#include <string> |
5 |
#include <vector> |
6 |
|
7 |
#include "simulation.h" |
8 |
|
9 |
struct Variable; |
10 |
|
11 |
#include "config.h" |
12 |
extern "C"{ |
13 |
#include <ascend/general/platform.h> |
14 |
#include <ascend/system/slv_types.h> |
15 |
#include <ascend/system/rel.h> |
16 |
} |
17 |
|
18 |
class Relation : public Instance{ |
19 |
|
20 |
private: |
21 |
Simulation *sim; |
22 |
struct rel_relation *rel; |
23 |
|
24 |
public: |
25 |
Relation(); |
26 |
Relation(const Relation &old); |
27 |
Relation(Simulation *sim, rel_relation *rel); |
28 |
|
29 |
const std::string getName() const; |
30 |
double getResidual() const; |
31 |
const std::vector<Variable> getIncidentVariables() const; |
32 |
int getNumIncidentVariables() const; |
33 |
Instanc getInstance() const; |
34 |
std::string getRelationAsString() const; |
35 |
}; |
36 |
|
37 |
#endif /* ASCXX_RELATION_H */ |