## class ERChecks : public DiagramChecks

> implements checks for soft constraints on ER diagrams.

## Inheritance:

### Public Methods

  | ERChecks (Diagram *d, Graph *g)
  virtual unsigned | CheckRelationshipCoherence (string &chkbuf) relationship nodes are correctly connected.
  unsigned | CheckDoubleRelationships (string &chkbuf) name + component types are unique for relationship nodes.
  unsigned | CheckNamelessBinaryRelationships (string &chkbuf) relationship edges have an non-empty name or role name.

### Inherited from DiagramChecks:

### Public Methods

unsigned CheckNodeCount(unsigned count, int nodeType, string &chkbuf)
unsigned CheckNodeCount(unsigned min, unsigned max, int nodeType, string &chkbuf)
unsigned CheckEdgeCount(unsigned count, int edgeType, string &chkbuf)
unsigned CheckEdgeCount(unsigned min, unsigned max, int edgeType, string &chkbuf)
unsigned CheckDoubleIndexes(string &chkbuf)
unsigned CheckNamelessNodes(int nodeType, string &chkbuf)
unsigned CheckNamelessEdges(int edgeType, string &chkbuf)
unsigned CheckIllegalNodeNames(int nodeType, const string *name, string &chkbuf)
unsigned CheckIllegalEdgeNames(int edgeType, const string *name, string &chkbuf)
unsigned CheckNamelessEdges( int edgeType, int type1, int type2, string &chkbuf)
unsigned CheckDoubleNamelessEdges(int edgeType, int type1, int type2, string &chkbuf)
unsigned CheckDoubleNodes(int nodeType, string &chkbuf)
unsigned CheckConnected(int nodeType, bool index, string &chkbuf)
unsigned CheckConnected(int nodeType, int toNode, int min, int max, bool index, string &chkbuf)
unsigned CheckJunctionCoherence(int nodeType, int parenttype, int childtype, unsigned minChildren, string &chkbuf)
unsigned CheckCountEdgesFrom(int nodeType, int edgeType, unsigned min, unsigned max, bool zeroAllowed, bool index, string &chkbuf)
unsigned CheckReachability(int rootType, int nodeType, bool index, string &chkbuf)

### Protected Methods

Graph* GetGraph() const
Diagram* GetDiagram() const
unsigned CheckCount(unsigned min, unsigned max, int type, string &chkbuf, bool node)
unsigned CheckIllegalNames(int type, const string *name, string &chkbuf, bool node)

## Documentation

> implements checks for soft constraints on ER diagrams.

`ERChecks(Diagram *d, Graph *g)`

`virtual unsigned CheckRelationshipCoherence(string &chkbuf)`
  relationship nodes are correctly connected.

`unsigned CheckDoubleRelationships(string &chkbuf)`
  name + component types are unique for relationship nodes.

`unsigned CheckNamelessBinaryRelationships(string &chkbuf)`
  relationship edges have an non-empty name or role name.

Direct child classes:
  UCChecks
  SSDChecks
  CRChecks

alphabetic index hierarchy of classes

this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de