xerus
a general purpose tensor library
xerus::TensorNetwork::TensorNode Class Referencefinal

The TensorNode class is used by the class TensorNetwork to store the componentent tensors defining the network. More...

#include <tensorNetwork.h>

Collaboration diagram for xerus::TensorNetwork::TensorNode:

Public Member Functions

 TensorNode ()
 
 TensorNode (const TensorNode &_other)
 
 TensorNode (TensorNode &&_other) noexcept=default
 
 TensorNode (std::unique_ptr< Tensor > &&_tensorObject)
 
 TensorNode (std::unique_ptr< Tensor > &&_tensorObject, std::vector< Link > _neighbors)
 
 ~TensorNode ()
 
size_t degree () const noexcept
 
void erase () noexcept
 
TensorNodeoperator= (const TensorNode &_other)
 
TensorNodeoperator= (TensorNode &&_other) noexcept
 
size_t size () const noexcept
 
TensorNode strippped_copy () const
 

Public Attributes

bool erased
 Internal Flag. More...
 
std::vector< Linkneighbors
 Vector of links defining the connection of this node to the network. More...
 
std::unique_ptr< TensortensorObject
 Save slot for the tensorObject associated with this node. More...
 

Detailed Description

The TensorNode class is used by the class TensorNetwork to store the componentent tensors defining the network.

Definition at line 85 of file tensorNetwork.h.

Constructor & Destructor Documentation

◆ TensorNode() [1/5]

xerus::TensorNetwork::TensorNode::TensorNode ( )
explicit

Definition at line 30 of file tensorNode.cpp.

◆ TensorNode() [2/5]

xerus::TensorNetwork::TensorNode::TensorNode ( const TensorNode _other)

Definition at line 32 of file tensorNode.cpp.

◆ TensorNode() [3/5]

xerus::TensorNetwork::TensorNode::TensorNode ( TensorNode &&  _other)
defaultnoexcept

◆ TensorNode() [4/5]

xerus::TensorNetwork::TensorNode::TensorNode ( std::unique_ptr< Tensor > &&  _tensorObject)
explicit

Definition at line 34 of file tensorNode.cpp.

◆ TensorNode() [5/5]

xerus::TensorNetwork::TensorNode::TensorNode ( std::unique_ptr< Tensor > &&  _tensorObject,
std::vector< Link _neighbors 
)
explicit

Definition at line 36 of file tensorNode.cpp.

◆ ~TensorNode()

xerus::TensorNetwork::TensorNode::~TensorNode ( )
default

Member Function Documentation

◆ degree()

size_t xerus::TensorNetwork::TensorNode::degree ( ) const
noexcept

Definition at line 74 of file tensorNode.cpp.

◆ erase()

void xerus::TensorNetwork::TensorNode::erase ( )
noexcept

Definition at line 78 of file tensorNode.cpp.

◆ operator=() [1/2]

TensorNetwork::TensorNode & xerus::TensorNetwork::TensorNode::operator= ( const TensorNode _other)

Definition at line 40 of file tensorNode.cpp.

◆ operator=() [2/2]

TensorNetwork::TensorNode & xerus::TensorNetwork::TensorNode::operator= ( TensorNetwork::TensorNode &&  _other)
noexcept

Definition at line 55 of file tensorNode.cpp.

◆ size()

size_t xerus::TensorNetwork::TensorNode::size ( ) const
noexcept

Definition at line 66 of file tensorNode.cpp.

◆ strippped_copy()

TensorNetwork::TensorNode xerus::TensorNetwork::TensorNode::strippped_copy ( ) const

Definition at line 62 of file tensorNode.cpp.

Member Data Documentation

◆ erased

bool xerus::TensorNetwork::TensorNode::erased

Internal Flag.

Definition at line 94 of file tensorNetwork.h.

◆ neighbors

std::vector<Link> xerus::TensorNetwork::TensorNode::neighbors

Vector of links defining the connection of this node to the network.

Definition at line 91 of file tensorNetwork.h.

◆ tensorObject

std::unique_ptr<Tensor> xerus::TensorNetwork::TensorNode::tensorObject

Save slot for the tensorObject associated with this node.

Definition at line 88 of file tensorNetwork.h.


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