Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a template parameter to the BGL solver classes for generically specifying the event visitors to use in the search. Since the event visitors themselves do not inherit from a single base class, they can only be specified and stored within the search class using an additional template parameter. This makes the instantiation of the BGL search classes more difficult, but prevents the need for creating separate class instances for every useful combination of event visitors that a search might need.
In order to make the BGL search classes a little more user-friendly, the
BGLDijkstraSVSESolverD/F
andBGLDijkstraSVDESolverD/F
typedefs represent the configuration of the "most effective" solvers (currently using the early terminator event visitor). Additionally a few macros were created for explicitly instantiating template classes for a Cartesian product of template parameters (i.e. float types with event visitor types), so the instantiation of each solver with every combination of float type with event visitor does not have to be manually specified.Addresses #79