Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode > Class Template Reference

Path container which stores explicit paths and distances between path nodes. More...

#include <shortest_paths.h>

Inheritance diagram for operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >:
operations_research::DistanceContainer< NodeIndex, kNilNode >

Public Types

using Base = DistanceContainer<NodeIndex, kNilNode>
 

Public Member Functions

 InMemoryCompactPathContainer ()
 
 InMemoryCompactPathContainer (const InMemoryCompactPathContainer &)=delete
 This type is neither copyable nor movable.
 
InMemoryCompactPathContaineroperator= (const InMemoryCompactPathContainer &)=delete
 
 ~InMemoryCompactPathContainer () override=default
 
void Initialize (const std::vector< NodeIndex > &sources, const std::vector< NodeIndex > &destinations, NodeIndex num_nodes) override
 
NodeIndex GetPenultimateNodeInPath (NodeIndex from, NodeIndex to) const override
 
void GetPath (NodeIndex from, NodeIndex to, std::vector< NodeIndex > *path) const override
 
void StoreSingleSourcePaths (NodeIndex from, const std::vector< NodeIndex > &predecessor_in_path_tree, const std::vector< PathDistance > &distance_to_destination) override
 
- Public Member Functions inherited from operations_research::DistanceContainer< NodeIndex, kNilNode >
 DistanceContainer ()
 
 DistanceContainer (const DistanceContainer &)=delete
 This type is neither copyable nor movable.
 
DistanceContaineroperator= (const DistanceContainer &)=delete
 
 ~DistanceContainer () override=default
 
void Initialize (const std::vector< NodeIndex > &sources, const std::vector< NodeIndex > &destinations, NodeIndex num_nodes) override
 
PathDistance GetDistance (NodeIndex from, NodeIndex to) const override
 
NodeIndex GetPenultimateNodeInPath (NodeIndex, NodeIndex) const override
 
void GetPath (NodeIndex, NodeIndex, std::vector< NodeIndex > *) const override
 
void StoreSingleSourcePaths (NodeIndex from, const std::vector< NodeIndex > &, const std::vector< PathDistance > &distance_to_destination) override
 

Additional Inherited Members

- Protected Attributes inherited from operations_research::DistanceContainer< NodeIndex, kNilNode >
std::vector< int > reverse_sources_
 
std::vector< int > reverse_destinations_
 

Detailed Description

template<class NodeIndex, NodeIndex kNilNode>
class operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >

Path container which stores explicit paths and distances between path nodes.

Definition at line 514 of file shortest_paths.h.

Member Typedef Documentation

◆ Base

template<class NodeIndex, NodeIndex kNilNode>
using operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::Base = DistanceContainer<NodeIndex, kNilNode>

Definition at line 517 of file shortest_paths.h.

Constructor & Destructor Documentation

◆ InMemoryCompactPathContainer() [1/2]

template<class NodeIndex, NodeIndex kNilNode>
operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::InMemoryCompactPathContainer ( )
inline

Definition at line 519 of file shortest_paths.h.

◆ InMemoryCompactPathContainer() [2/2]

template<class NodeIndex, NodeIndex kNilNode>
operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::InMemoryCompactPathContainer ( const InMemoryCompactPathContainer< NodeIndex, kNilNode > & )
delete

This type is neither copyable nor movable.

◆ ~InMemoryCompactPathContainer()

Member Function Documentation

◆ GetPath()

template<class NodeIndex, NodeIndex kNilNode>
void operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::GetPath ( NodeIndex from,
NodeIndex to,
std::vector< NodeIndex > * path ) const
inlineoverride

Definition at line 538 of file shortest_paths.h.

◆ GetPenultimateNodeInPath()

template<class NodeIndex, NodeIndex kNilNode>
NodeIndex operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::GetPenultimateNodeInPath ( NodeIndex from,
NodeIndex to ) const
inlineoverride

Definition at line 534 of file shortest_paths.h.

◆ Initialize()

template<class NodeIndex, NodeIndex kNilNode>
void operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::Initialize ( const std::vector< NodeIndex > & sources,
const std::vector< NodeIndex > & destinations,
NodeIndex num_nodes )
inlineoverride

Definition at line 526 of file shortest_paths.h.

◆ operator=()

◆ StoreSingleSourcePaths()

template<class NodeIndex, NodeIndex kNilNode>
void operations_research::InMemoryCompactPathContainer< NodeIndex, kNilNode >::StoreSingleSourcePaths ( NodeIndex from,
const std::vector< NodeIndex > & predecessor_in_path_tree,
const std::vector< PathDistance > & distance_to_destination )
inlineoverride

Definition at line 543 of file shortest_paths.h.


The documentation for this class was generated from the following file: