29 #ifndef GUM_LEARNING_STRUCTURAL_CONSTRAINT_POSSIBLE_EDGES_H 30 #define GUM_LEARNING_STRUCTURAL_CONSTRAINT_POSSIBLE_EDGES_H 187 #ifndef DOXYGEN_SHOULD_SKIP_THIS 191 # define GUM_CONSTRAINT_CLASS_NAME StructuralConstraintPossibleEdges 193 # undef GUM_CONSTRAINT_CLASS_NAME 194 #endif // DOXYGEN_SHOULD_SKIP_THIS 206 #ifndef GUM_NO_INLINE bool checkArcDeletionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to remove arc (x,y)
bool checkArcReversalAlone(NodeId x, NodeId y) const
checks whether the constraints enable to reverse arc (x,y)
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
StructuralConstraintPossibleEdges()
default constructor
void addEdge(const Edge &edge)
assign a new forbidden arc
void setEdges(const EdgeSet &set)
assign a set of forbidden arcs
void setGraphAlone(const DiGraph &graph)
sets a new graph from which we will perform checkings
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
The class for notifying learning algorithms of new arc additionsThis class is convenient to know at c...
EdgeSet _PossibleEdges__possible_edges
the PossibleEdges on which we perform checks
the structural constraint for forbidding the creation of some arcs except those defined in the class ...
The class for notifying learning algorithms of arc removalsThis class is convenient to know at compil...
the base class for all structural constraints
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
void modifyGraphAlone(const ArcAddition &change)
notify the constraint of a modification of the graph
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
StructuralConstraintPossibleEdges & operator=(const StructuralConstraintPossibleEdges &from)
copy operator
Base class for all oriented graphs.
const EdgeSet & edges() const
returns the set of mandatory arcs
bool checkArcAdditionAlone(NodeId x, NodeId y) const
checks whether the constraints enable to add arc (x,y)
bool checkModificationAlone(const GraphChange &change) const
checks whether the constraints enable to perform a graph change
virtual ~StructuralConstraintPossibleEdges()
destructor
The base class for all undirected edges.
void eraseEdge(const Edge &edge)
remove a forbidden arc
The class for notifying learning algorithms of arc reversalsThis class is convenient to know at compi...
bool isAlwaysInvalidAlone(const GraphChange &change) const
indicates whether a change will always violate the constraint
Size NodeId
Type for node ids.