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

the class to indicate that we wish to reverse an arc More...

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

Inheritance diagram for gum::DAGCycleDetector::ArcReverse:
Collaboration diagram for gum::DAGCycleDetector::ArcReverse:

Public Member Functions

Constructors / Destructors
 ArcReverse (NodeId tail, NodeId head) noexcept
 default constructor
 ArcReverse (const ArcReverse &from) noexcept
 copy constructor
 ArcReverse (ArcReverse &&from) noexcept
 move constructor
 ~ArcReverse () noexcept override
 destructor
Operators
ArcReverseoperator= (const ArcReverse &from) noexcept
 copy operator
ArcReverseoperator= (ArcReverse &&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 reverse an arc

Definition at line 210 of file DAGCycleDetector.h.

Constructor & Destructor Documentation

◆ ArcReverse() [1/3]

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

default constructor

Definition at line 192 of file DAGCycleDetector_inl.h.

192 :
193 DAGCycleDetector::Change(DAGCycleDetector::ChangeType::ARC_REVERSAL, tail, head) {
194 GUM_CONSTRUCTOR(DAGCycleDetector::ArcReverse);
195 }
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_REVERSAL, 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:

◆ ArcReverse() [2/3]

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

copy constructor

Definition at line 198 of file DAGCycleDetector_inl.h.

199 : DAGCycleDetector::Change(from.type(), from.tail(), from.head()) {
200 GUM_CONS_CPY(DAGCycleDetector::ArcReverse);
201 }

◆ ArcReverse() [3/3]

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

move constructor

Definition at line 204 of file DAGCycleDetector_inl.h.

204 :
205 DAGCycleDetector::Change(std::move(from.type()),
206 std::move(from.tail()),
207 std::move(from.head())) {
208 GUM_CONS_MOV(DAGCycleDetector::ArcReverse);
209 }

◆ ~ArcReverse()

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

destructor

Definition at line 212 of file DAGCycleDetector_inl.h.

212 {
213 GUM_DESTRUCTOR(DAGCycleDetector::ArcReverse);
214 }

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::ArcReverse & gum::DAGCycleDetector::ArcReverse::operator= ( DAGCycleDetector::ArcReverse && from)
noexcept

move operator

Definition at line 223 of file DAGCycleDetector_inl.h.

223 {
225 return *this;
226 }
Change & operator=(const Change &from) noexcept

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

Here is the call graph for this function:

◆ operator=() [2/2]

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

copy operator

References ArcReverse(), and operator=().

Referenced by operator=().

Here is the call graph for this function:
Here is the caller 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: