aGrUM 3.1.1
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/base/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
 ArcAdd (const ArcAdd &from) noexcept
 copy constructor
 ArcAdd (ArcAdd &&from) noexcept
 move constructor
 ~ArcAdd () noexcept override
 destructor
Operators
ArcAddoperator= (const ArcAdd &from) noexcept
 copy operator
ArcAddoperator= (ArcAdd &&from) noexcept
 move operator
Accessors/Modifiers
ChangeType type () const noexcept
 returns the type of the operation
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

Private Attributes

ChangeType _type_
 the type of modification
NodeId _tail_
 the tail of the arc to be modified
NodeId _head_
 the head of the arc to be modified

Detailed Description

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

Definition at line 131 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 112 of file DAGCycleDetector_inl.h.

112 :
113 DAGCycleDetector::Change(DAGCycleDetector::ChangeType::ARC_ADDITION, tail, head) {
114 GUM_CONSTRUCTOR(DAGCycleDetector::ArcAdd);
115 }
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

References gum::DAGCycleDetector::ARC_ADDITION, gum::DAGCycleDetector::Change::head(), and gum::DAGCycleDetector::Change::tail().

Referenced by operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ArcAdd() [2/3]

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

copy constructor

Definition at line 118 of file DAGCycleDetector_inl.h.

118 :
119 DAGCycleDetector::Change(from.type(), from.tail(), from.head()) {
120 GUM_CONS_CPY(DAGCycleDetector::ArcAdd);
121 }

◆ ArcAdd() [3/3]

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

move constructor

Definition at line 124 of file DAGCycleDetector_inl.h.

124 :
125 DAGCycleDetector::Change(std::move(from.type()),
126 std::move(from.tail()),
127 std::move(from.head())) {
128 GUM_CONS_MOV(DAGCycleDetector::ArcAdd);
129 }

◆ ~ArcAdd()

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

destructor

Definition at line 132 of file DAGCycleDetector_inl.h.

132{ GUM_DESTRUCTOR(DAGCycleDetector::ArcAdd); }

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 103 of file DAGCycleDetector_inl.h.

103{ return _head_; }
NodeId _head_
the head of the arc to be modified

References _head_.

Referenced by gum::DAGCycleDetector::ArcAdd::ArcAdd(), gum::DAGCycleDetector::ArcDel::ArcDel(), gum::DAGCycleDetector::ArcReverse::ArcReverse(), Change(), and operator=().

Here is the caller graph for this function:

◆ operator=() [1/2]

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

move operator

Definition at line 140 of file DAGCycleDetector_inl.h.

140 {
142 return *this;
143 }
Change & operator=(const Change &from) noexcept

References gum::DAGCycleDetector::Change::operator=().

Here is the call graph for this function:

◆ operator=() [2/2]

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

copy operator

References ArcAdd().

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 100 of file DAGCycleDetector_inl.h.

100{ return _tail_; }
NodeId _tail_
the tail of the arc to be modified

References _tail_.

Referenced by gum::DAGCycleDetector::ArcAdd::ArcAdd(), gum::DAGCycleDetector::ArcDel::ArcDel(), gum::DAGCycleDetector::ArcReverse::ArcReverse(), Change(), and operator=().

Here is the caller graph for this function:

◆ type()

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

returns the type of the operation

Definition at line 95 of file DAGCycleDetector_inl.h.

95 {
96 return _type_;
97 }
ChangeType _type_
the type of modification

References _type_.

Referenced by Change().

Here is the caller graph for this function:

Member Data Documentation

◆ _head_

NodeId gum::DAGCycleDetector::Change::_head_
privateinherited

the head of the arc to be modified

Definition at line 122 of file DAGCycleDetector.h.

Referenced by head(), and operator=().

◆ _tail_

NodeId gum::DAGCycleDetector::Change::_tail_
privateinherited

the tail of the arc to be modified

Definition at line 119 of file DAGCycleDetector.h.

Referenced by operator=(), and tail().

◆ _type_

ChangeType gum::DAGCycleDetector::Change::_type_
privateinherited

the type of modification

Definition at line 116 of file DAGCycleDetector.h.

Referenced by Change(), Change(), Change(), operator=(), and type().


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