C++ Reference

C++ Reference: Graph

Detailed Description

template<typename NodeIndexType, typename ArcIndexType>
class operations_research::ForwardStaticGraph< NodeIndexType, ArcIndexType >

Definition at line 535 of file ebert_graph.h.

Classes

class  CycleHandlerForAnnotatedArcs
 

Public Types

typedef NodeIndexType NodeIndex
 
typedef ArcIndexType ArcIndex
 

Public Member Functions

 ForwardStaticGraph (const NodeIndexType num_nodes, const ArcIndexType num_arcs, const bool sort_arcs_by_head, std::vector< std::pair< NodeIndexType, NodeIndexType > > *client_input_arcs, operations_research::PermutationCycleHandler< ArcIndexType > *const client_cycle_handler)
 
NodeIndexType Tail (const ArcIndexType arc) const
 
bool IsIncoming (ArcIndexType arc, NodeIndexType node) const
 
bool CheckArcBounds (const ArcIndexType arc) const
 
bool CheckArcValidity (const ArcIndexType arc) const
 
bool CheckTailIndexValidity (const ArcIndexType arc) const
 
ArcIndexType NextOutgoingArc (const NodeIndexType node, ArcIndexType arc) const
 
std::string DebugString () const
 
bool BuildTailArray ()
 
void ReleaseTailArray ()
 
bool TailArrayComplete () const
 
NodeIndexType num_nodes () const
 
ArcIndexType num_arcs () const
 
NodeIndexType end_node_index () const
 
ArcIndexType end_arc_index () const
 
NodeIndexType max_num_nodes () const
 
ArcIndexType max_num_arcs () const
 
NodeIndexType max_end_node_index () const
 
ArcIndexType max_end_arc_index () const
 
bool IsNodeValid (NodeIndexType node) const
 
ArcIndexType LookUpArc (const NodeIndexType tail, const NodeIndexType head) const
 
NodeIndexType Head (const ArcIndexType arc) const
 
std::string NodeDebugString (const NodeIndexType node) const
 
std::string ArcDebugString (const ArcIndexType arc) const
 

Static Public Attributes

static const NodeIndexType kNilNode
 
static const ArcIndexType kNilArc
 
static const NodeIndexType kFirstNode
 
static const ArcIndexType kFirstArc
 
static const NodeIndexType kMaxNumNodes
 
static const ArcIndexType kMaxNumArcs
 

Protected Member Functions

NodeIndexType StartNode (NodeIndexType node) const
 
ArcIndexType StartArc (ArcIndexType arc) const
 
NodeIndexType NextNode (const NodeIndexType node) const
 
ArcIndexType NextArc (const ArcIndexType arc) const
 
ArcIndexType FirstOutgoingArc (const NodeIndexType node) const
 

Protected Attributes

NodeIndexType max_num_nodes_
 
ArcIndexType max_num_arcs_
 
NodeIndexType num_nodes_
 
ArcIndexType num_arcs_
 
ZVector< NodeIndexType > head_
 
ZVector< ArcIndexType > first_incident_arc_
 

Member Typedef Documentation

◆ ArcIndex

typedef ArcIndexType ArcIndex

Definition at line 566 of file ebert_graph.h.

◆ NodeIndex

typedef NodeIndexType NodeIndex

Definition at line 565 of file ebert_graph.h.

Constructor & Destructor Documentation

◆ ForwardStaticGraph()

ForwardStaticGraph ( const NodeIndexType  num_nodes,
const ArcIndexType  num_arcs,
const bool  sort_arcs_by_head,
std::vector< std::pair< NodeIndexType, NodeIndexType > > *  client_input_arcs,
operations_research::PermutationCycleHandler< ArcIndexType > *const  client_cycle_handler 
)
inline

Definition at line 622 of file ebert_graph.h.

Member Function Documentation

◆ ArcDebugString()

std::string ArcDebugString ( const ArcIndexType  arc) const
inlineinherited

Definition at line 311 of file ebert_graph.h.

◆ BuildTailArray()

bool BuildTailArray ( )
inline

Definition at line 817 of file ebert_graph.h.

◆ CheckArcBounds()

bool CheckArcBounds ( const ArcIndexType  arc) const
inline

Definition at line 771 of file ebert_graph.h.

◆ CheckArcValidity()

bool CheckArcValidity ( const ArcIndexType  arc) const
inline

Definition at line 779 of file ebert_graph.h.

◆ CheckTailIndexValidity()

bool CheckTailIndexValidity ( const ArcIndexType  arc) const
inline

Definition at line 784 of file ebert_graph.h.

◆ DebugString()

std::string DebugString ( ) const
inline

Definition at line 803 of file ebert_graph.h.

◆ end_arc_index()

ArcIndexType end_arc_index ( ) const
inlineinherited

Definition at line 253 of file ebert_graph.h.

◆ end_node_index()

NodeIndexType end_node_index ( ) const
inlineinherited

Definition at line 248 of file ebert_graph.h.

◆ FirstOutgoingArc()

ArcIndexType FirstOutgoingArc ( const NodeIndexType  node) const
inlineprotectedinherited

Definition at line 480 of file ebert_graph.h.

◆ Head()

NodeIndexType Head ( const ArcIndexType  arc) const
inlineinherited

Definition at line 298 of file ebert_graph.h.

◆ IsIncoming()

bool IsIncoming ( ArcIndexType  arc,
NodeIndexType  node 
) const
inline

Definition at line 764 of file ebert_graph.h.

◆ IsNodeValid()

bool IsNodeValid ( NodeIndexType  node) const
inlineinherited

Definition at line 280 of file ebert_graph.h.

◆ LookUpArc()

ArcIndexType LookUpArc ( const NodeIndexType  tail,
const NodeIndexType  head 
) const
inlineinherited

Definition at line 286 of file ebert_graph.h.

◆ max_end_arc_index()

ArcIndexType max_end_arc_index ( ) const
inlineinherited

Definition at line 272 of file ebert_graph.h.

◆ max_end_node_index()

NodeIndexType max_end_node_index ( ) const
inlineinherited

Definition at line 265 of file ebert_graph.h.

◆ max_num_arcs()

ArcIndexType max_num_arcs ( ) const
inlineinherited

Definition at line 260 of file ebert_graph.h.

◆ max_num_nodes()

NodeIndexType max_num_nodes ( ) const
inlineinherited

Definition at line 256 of file ebert_graph.h.

◆ NextArc()

ArcIndexType NextArc ( const ArcIndexType  arc) const
inlineprotectedinherited

Definition at line 473 of file ebert_graph.h.

◆ NextNode()

NodeIndexType NextNode ( const NodeIndexType  node) const
inlineprotectedinherited

Definition at line 459 of file ebert_graph.h.

◆ NextOutgoingArc()

ArcIndexType NextOutgoingArc ( const NodeIndexType  node,
ArcIndexType  arc 
) const
inline

Definition at line 789 of file ebert_graph.h.

◆ NodeDebugString()

std::string NodeDebugString ( const NodeIndexType  node) const
inlineinherited

Definition at line 303 of file ebert_graph.h.

◆ num_arcs()

ArcIndexType num_arcs ( ) const
inlineinherited

Definition at line 242 of file ebert_graph.h.

◆ num_nodes()

NodeIndexType num_nodes ( ) const
inlineinherited

Definition at line 238 of file ebert_graph.h.

◆ ReleaseTailArray()

void ReleaseTailArray ( )
inline

Definition at line 845 of file ebert_graph.h.

◆ StartArc()

ArcIndexType StartArc ( ArcIndexType  arc) const
inlineprotectedinherited

Definition at line 446 of file ebert_graph.h.

◆ StartNode()

NodeIndexType StartNode ( NodeIndexType  node) const
inlineprotectedinherited

Definition at line 440 of file ebert_graph.h.

◆ Tail()

NodeIndexType Tail ( const ArcIndexType  arc) const
inline

Definition at line 757 of file ebert_graph.h.

◆ TailArrayComplete()

bool TailArrayComplete ( ) const
inline

Definition at line 848 of file ebert_graph.h.

Member Data Documentation

◆ first_incident_arc_

ZVector<ArcIndexType> first_incident_arc_
protectedinherited

Definition at line 503 of file ebert_graph.h.

◆ head_

ZVector<NodeIndexType> head_
protectedinherited

Definition at line 499 of file ebert_graph.h.

◆ kFirstArc

const ArcIndexType kFirstArc
staticinherited

Definition at line 226 of file ebert_graph.h.

◆ kFirstNode

const NodeIndexType kFirstNode
staticinherited

Definition at line 223 of file ebert_graph.h.

◆ kMaxNumArcs

const ArcIndexType kMaxNumArcs
staticinherited

Definition at line 236 of file ebert_graph.h.

◆ kMaxNumNodes

const NodeIndexType kMaxNumNodes
staticinherited

Definition at line 231 of file ebert_graph.h.

◆ kNilArc

const ArcIndexType kNilArc
staticinherited

Definition at line 220 of file ebert_graph.h.

◆ kNilNode

const NodeIndexType kNilNode
staticinherited

Definition at line 217 of file ebert_graph.h.

◆ max_num_arcs_

ArcIndexType max_num_arcs_
protectedinherited

Definition at line 490 of file ebert_graph.h.

◆ max_num_nodes_

NodeIndexType max_num_nodes_
protectedinherited

Definition at line 487 of file ebert_graph.h.

◆ num_arcs_

ArcIndexType num_arcs_
protectedinherited

Definition at line 496 of file ebert_graph.h.

◆ num_nodes_

NodeIndexType num_nodes_
protectedinherited

Definition at line 493 of file ebert_graph.h.


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