Here are the classes, structs, unions and interfaces with brief descriptions:
| BeliefPropagator | Object that maintains and updates the state of belief propagation |
| BipartiteFunctionOracle | Weight oracle for bipartite graphs with weight function |
| BipartiteMatrixOracle | Weight oracle that explictly stores the weight matrix for bipartite graph |
| BMatchingProblem | Object representing a b-matching problem |
| EuclideanDistance | Weight function that returns negative Euclidean distance |
| FunctionOracle | Weight oracle that returns weights computed via a function between node descriptors of a unipartite graph |
| IndexHeap | |
| InnerProduct | Weight function that computes the inner product between node descriptor vectors |
| IntDoubleMap | Lightweight hash set class for storing ints Simple hash table with quadratic probing |
| IntSet | Lightweight hash set class for storing ints Simple hash table with quadratic probing |
| MatrixOracle | Weight oracle that explicitly stores weight matrix of unipartite graph |
| OscillationDetector | Agent for detecting non-converging oscillation in BP Objects of this class compare state vectors to previously seen state vectors If any vectors are repeating, oscillation is possible. This class uses a hashed checksum to compare state vectors (cheap) then uses explicit state comparisons (expensive) when collisions are detected in checksums |
| SparseMatrix< T > | Object for storing nonzero entries of a sparse matrix |
| threadParam | |
| WeightFunction | Weight function superclass Objects of this class contain a method that computes an edge weight given the node descriptors |
| WeightOracle | Superclass for weight oracles that provide weights for edges |
| WOThreadParam | |