Skip to content

Releases: SpectraL519/cpp-gl

v1.0.8

28 Nov 19:56
9b3ed9c
Compare
Choose a tag to compare
  • Added the in_degree_map, out_degree_map and degree_map functions to the graph class
  • Replaced per vertex in-degree calculating in the topological_sort algorithm with the in_degree_map function

v1.0.7

28 Nov 15:53
3f185d8
Compare
Choose a tag to compare
  • Renamed the prim_mst function to edge_heap_prim_mst
  • Added the vertex_heap_prim_mst function for finding the MST of a graph
  • Added the edge_descriptor::incident_vertex_id method

v1.0.6

20 Nov 15:08
Compare
Choose a tag to compare
  • Replaced the search tree type utility with a generic algorithm return type utility
  • Added the predecessors_descriptor structure
  • Modified the basic search algorithms to return a predecessors descriptor instead of a search tree
  • Aligned tests and documentation

v1.0.5

17 Nov 16:17
Compare
Choose a tag to compare
  • Renamed the perfect binary tree generator to use regular so that the naming is not confused with it being a perfect graph
  • Renamed the pq_bfs template to pfs (priority-first search) so that it is not confused with a level by level search
  • Aligned the corresponding documentation pages

v1.0.4

14 Nov 20:09
Compare
Choose a tag to compare

Added the GL_CONFIG_FORCE_INLINE configuration macro which enables the force inlining functionality

v1.0.3

14 Nov 20:08
Compare
Choose a tag to compare
  • Renamed
    • The algorithm::detail namespace to algorithm::impl
    • The {bds/dfs}_impl functions to {bfs/dfs}
    • destination to target in the context of vertices
  • Aligned the documentation

v1.0.2

14 Nov 20:08
Compare
Choose a tag to compare
  • Goal: performance boost (std::function has a lot of overhead)
  • Modified:
    • The c_<element>_callback to check if the type is callable with the given arguments instead of being convertible to std::function
    • The algorithms to use template types instead of std::function explicitly
  • Added the c_optional_callback and c_optional_{vertex/edge}_callback concepts

v1.0.1

14 Nov 20:07
Compare
Choose a tag to compare
  • Added the final keyword to the following classes:
    • {vertex/edge}_descriptor
    • adjacency_{list/matrix}
    • graph
  • Marked the destructors of the property classes and the iterator_range class as virtual (if they are explicitly configured not to be final)

v1.0.0

14 Nov 20:07
Compare
Choose a tag to compare

Initial library release

Overview:

  • Concept-based template header-only graph library for C++20 and newer standards
  • Highly customizable and extensive core graph class which allows for the representation of directed and undirected graphs with vertex and edge properties using an adjacency list or an adjacency matrix implementation
  • Compatibility with C++ standard library tools, e.g.: range-based loops, std algorithms, the ranges library, stream operations, etc.
  • Predefined property types, topology generators and graph algorithms
  • CMake integration
  • No exteranal dependencies in the implementation
  • MIT licence

v1.0-prerelease-1

14 Nov 20:07
Compare
Choose a tag to compare
v1.0-prerelease-1 Pre-release
Pre-release

v1.0 prerelease - iteration: 1

NOTES: Added the project's documentation / user guide and made small cleanup changes in the code