Graphviz 12.1.0~dev.20240716.0947
Loading...
Searching...
No Matches
Constraint Struct Reference

A constraint determines a minimum or exact spacing required between two variables. More...

#include <constraint.h>

Collaboration diagram for Constraint:
[legend]

Public Member Functions

 Constraint (Variable *left, Variable *right, double gap)
 A constraint determines a minimum or exact spacing required between two variables.
 
 ~Constraint ()
 
double slack () const
 

Data Fields

Variableleft
 
Variableright
 
double gap
 
double lm
 
long timeStamp
 
bool active
 
bool visited
 

Friends

std::ostream & operator<< (std::ostream &os, const Constraint &c)
 

Detailed Description

Authors: Tim Dwyer tgdwy.nosp@m.er@g.nosp@m.mail..nosp@m.com

Copyright (C) 2005 Authors

This version is released under the CPL (Common Public License) with the Graphviz distribution. A version is also available under the LGPL as part of the Adaptagrams project: https://github.com/mjwybrow/adaptagrams.
If you make improvements or bug fixes to this code it would be much appreciated if you could also contribute those changes back to the Adaptagrams repository.

Definition at line 24 of file constraint.h.

Constructor & Destructor Documentation

◆ Constraint()

Constraint::Constraint ( Variable left,
Variable right,
double  gap 
)

Authors: Tim Dwyer tgdwy.nosp@m.er@g.nosp@m.mail..nosp@m.com

Copyright (C) 2005 Authors

This version is released under the CPL (Common Public License) with the Graphviz distribution. A version is also available under the LGPL as part of the Adaptagrams project: https://github.com/mjwybrow/adaptagrams.
If you make improvements or bug fixes to this code it would be much appreciated if you could also contribute those changes back to the Adaptagrams repository.

Definition at line 21 of file constraint.cpp.

References Variable::in, left, Variable::out, and right.

◆ ~Constraint()

Constraint::~Constraint ( )

Definition at line 32 of file constraint.cpp.

References Variable::in, left, Variable::out, and right.

Member Function Documentation

◆ slack()

double Constraint::slack ( ) const
inline

Definition at line 34 of file constraint.h.

References gap, left, Variable::position(), and right.

Referenced by compareConstraints(), Block::findMinInConstraint(), Blocks::mergeLeft(), Blocks::mergeRight(), and IncVPSC::satisfy().

Here is the call graph for this function:
Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const Constraint c 
)
friend

Definition at line 43 of file constraint.cpp.

Field Documentation

◆ active

bool Constraint::active

Definition at line 36 of file constraint.h.

Referenced by Block::merge(), IncVPSC::satisfy(), and Block::split().

◆ gap

double Constraint::gap

Definition at line 30 of file constraint.h.

Referenced by Block::merge(), Blocks::mergeLeft(), Blocks::mergeRight(), and slack().

◆ left

◆ lm

double Constraint::lm

Definition at line 31 of file constraint.h.

Referenced by IncVPSC::splitBlocks().

◆ right

◆ timeStamp

long Constraint::timeStamp

Definition at line 35 of file constraint.h.

Referenced by compareConstraints(), and Block::findMinInConstraint().

◆ visited

bool Constraint::visited

Definition at line 37 of file constraint.h.


The documentation for this struct was generated from the following files: