aGrUM  0.20.3
a C++ library for (probabilistic) graphical models
gum::DAGCycleDetector::ArcAdd Class Reference

the class to indicate that we wish to add a new arc More...

#include <agrum/tools/graphs/DAGCycleDetector.h>

+ Inheritance diagram for gum::DAGCycleDetector::ArcAdd:
+ Collaboration diagram for gum::DAGCycleDetector::ArcAdd:

Public Member Functions

Constructors / Destructors
 ArcAdd (NodeId tail, NodeId head) noexcept
 default constructor More...
 
 ArcAdd (const ArcAdd &from) noexcept
 copy constructor More...
 
 ArcAdd (ArcAdd &&from) noexcept
 move constructor More...
 
 ~ArcAdd () noexcept
 destructor More...
 
Operators
ArcAddoperator= (const ArcAdd &from) noexcept
 copy operator More...
 
ArcAddoperator= (ArcAdd &&from) noexcept
 move operator More...
 
Accessors/Modifiers
ChangeType type () const noexcept
 returns the type of the operation More...
 
NodeId tail () const noexcept
 indicates the tail of the arc involved in the modification More...
 
NodeId head () const noexcept
 indicates the head of the arc involved in the modification More...
 

Detailed Description

the class to indicate that we wish to add a new arc

Definition at line 117 of file DAGCycleDetector.h.

Constructor & Destructor Documentation

◆ ArcAdd() [1/3]

INLINE gum::DAGCycleDetector::ArcAdd::ArcAdd ( NodeId  tail,
NodeId  head 
)
noexcept

default constructor

Definition at line 94 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

94  :
95  DAGCycleDetector::Change(DAGCycleDetector::ChangeType::ARC_ADDITION, tail, head) {
96  GUM_CONSTRUCTOR(DAGCycleDetector::ArcAdd);
97  }
NodeId tail() const noexcept
indicates the tail of the arc involved in the modification
NodeId head() const noexcept
indicates the head of the arc involved in the modification
+ Here is the call graph for this function:

◆ ArcAdd() [2/3]

INLINE gum::DAGCycleDetector::ArcAdd::ArcAdd ( const ArcAdd from)
noexcept

copy constructor

Definition at line 100 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

100  :
101  DAGCycleDetector::Change(from.type(), from.tail(), from.head()) {
102  GUM_CONS_CPY(DAGCycleDetector::ArcAdd);
103  }
+ Here is the call graph for this function:

◆ ArcAdd() [3/3]

INLINE gum::DAGCycleDetector::ArcAdd::ArcAdd ( DAGCycleDetector::ArcAdd &&  from)
noexcept

move constructor

Definition at line 106 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

106  :
107  DAGCycleDetector::Change(std::move(from.type()),
108  std::move(from.tail()),
109  std::move(from.head())) {
110  GUM_CONS_MOV(DAGCycleDetector::ArcAdd);
111  }
+ Here is the call graph for this function:

◆ ~ArcAdd()

INLINE gum::DAGCycleDetector::ArcAdd::~ArcAdd ( )
noexcept

destructor

Definition at line 114 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

114 { GUM_DESTRUCTOR(DAGCycleDetector::ArcAdd); }
+ Here is the call graph for this function:

Member Function Documentation

◆ head()

INLINE NodeId gum::DAGCycleDetector::Change::head ( ) const
noexceptinherited

indicates the head of the arc involved in the modification

Definition at line 85 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

85 { return _head_; }
NodeId _head_
the head of the arc to be modified
+ Here is the call graph for this function:

◆ operator=() [1/2]

INLINE DAGCycleDetector::ArcAdd & gum::DAGCycleDetector::ArcAdd::operator= ( const ArcAdd from)
noexcept

copy operator

Definition at line 118 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

118  {
120  return *this;
121  }
Change & operator=(const Change &from) noexcept
+ Here is the call graph for this function:

◆ operator=() [2/2]

INLINE DAGCycleDetector::ArcAdd & gum::DAGCycleDetector::ArcAdd::operator= ( DAGCycleDetector::ArcAdd &&  from)
noexcept

move operator

Definition at line 125 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

125  {
126  DAGCycleDetector::Change::operator=(std::move(from));
127  return *this;
128  }
Change & operator=(const Change &from) noexcept
+ Here is the call graph for this function:

◆ tail()

INLINE NodeId gum::DAGCycleDetector::Change::tail ( ) const
noexceptinherited

indicates the tail of the arc involved in the modification

Definition at line 82 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

82 { return _tail_; }
NodeId _tail_
the tail of the arc to be modified
+ Here is the call graph for this function:

◆ type()

INLINE DAGCycleDetector::ChangeType gum::DAGCycleDetector::Change::type ( ) const
noexceptinherited

returns the type of the operation

Definition at line 77 of file DAGCycleDetector_inl.h.

References gum::Set< Key, Alloc >::emplace().

77  {
78  return _type_;
79  }
ChangeType _type_
the type of modification
+ Here is the call graph for this function:

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