53 #ifndef GUM_LEARNING_GRAPH_CHANGES_GENERATOR_4_UNDIGRAPH_H 54 #define GUM_LEARNING_GRAPH_CHANGES_GENERATOR_4_UNDIGRAPH_H 107 template <
typename STRUCT_CONSTRAINT >
172 STRUCT_CONSTRAINT&
constraint() const noexcept;
212 #if defined(_OPENMP) && !defined(GUM_DEBUG_MODE)
The base class for all GraphChangesGenerators for undirected structures.
The basic class for computing the next graph changes possible in an undirected structure learning alg...
void _createChanges()
create the set of legal and illegal changes from a given graph
void notifyGetCompleted()
notifies the generator that we have parsed all its legal changes
the classes to account for structure changes in a graph
void setGraph(const UndiGraph &graph)
sets a new graph from which the operator will compute possible changes
virtual ~GraphChangesGenerator4UndiGraph()
destructor
iterator begin() const
returns an (unsafe) iterator on the beginning of the list of operators
unsigned int getMaxNumberOfThreads()
Returns the maximum number of threads at any time.
STRUCT_CONSTRAINT * _constraint
a reference on the structural constraint used to restrict the changes
Base classes for undirected graphs.
gum is the global namespace for all aGrUM entities
GraphChangesGenerator4UndiGraph(STRUCT_CONSTRAINT &constraint)
default constructor
iterator const_iterator
the const iterator for parsing the list of graph change operators
Representation of a setA Set is a structure that contains arbitrary elements.
The class for notifying learning algorithms of edge removalsThis class is convenient to know at compi...
UndiGraph _graph
the graph on which we generate operators
void clearChanges() noexcept
empty the set of possible change operators that can be applied
Set< GraphChange > _legal_changes
the current set of operators
typename Set< GraphChange >::const_iterator iterator
the iterator for parsing the list of possible graph change operators
The class for notifying learning algorithms of new edge additionsThis class is convenient to know at ...
Size __max_threads_number
the max number of threads authorized
void setMaxNbThreads(Size nb) noexcept
sets the maximum number of threads used to compute the set of changes
Unsafe iterators for the Set class.
STRUCT_CONSTRAINT & constraint() const noexcept
returns the constraint that is used by the generator
Base class for undirected graphs.
GraphChangesGenerator4UndiGraph< STRUCT_CONSTRAINT > & operator=(const GraphChangesGenerator4UndiGraph< STRUCT_CONSTRAINT > &from)
copy operator
std::size_t Size
In aGrUM, hashed values are unsigned long int.
void modifyGraph(const EdgeAddition &change)
notify the operator set of a change applied to the graph
The basic class for computing the next graph changes possible in an undirected structure learning alg...
const iterator & end() const
returns an (unsafe) iterator on the end of the list of operators