ExaTN
Public Member Functions | Protected Attributes | List of all members
exatn::runtime::TensorOpNode Class Reference

Public Member Functions

 TensorOpNode (std::shared_ptr< TensorOperation > tens_op)
 
 TensorOpNode (const TensorOpNode &)=delete
 
TensorOpNodeoperator= (const TensorOpNode &)=delete
 
 TensorOpNode (TensorOpNode &&) noexcept=delete
 
TensorOpNodeoperator= (TensorOpNode &&) noexcept=delete
 
bool isDummy () const
 
std::shared_ptr< TensorOperation > & getOperation ()
 
VertexIdType getId () const
 
bool isExecuting ()
 
bool isExecuted (int *error_code=nullptr)
 
void setId (VertexIdType id)
 
void setExecuting ()
 
void setExecuted (int error_code=0)
 
void setIdle ()
 
void lock ()
 
void unlock ()
 

Protected Attributes

std::shared_ptr< TensorOperationop_
 
bool is_noop_
 
std::atomic< bool > executing_
 
std::atomic< bool > executed_
 
std::atomic< int > error_
 
VertexIdType id_
 

Member Function Documentation

◆ getId()

VertexIdType exatn::runtime::TensorOpNode::getId ( ) const
inline

Returns the (unqiue) id of the tensor graph node.

◆ getOperation()

std::shared_ptr<TensorOperation>& exatn::runtime::TensorOpNode::getOperation ( )
inline

Returns a reference to the stored tensor operation. Note that this function may require external locking of the TensorOpNode object via the lock/unlock methods in order to provide an exclusive access.

◆ isDummy()

bool exatn::runtime::TensorOpNode::isDummy ( ) const
inline

Returns whether or not the TensorOpNode is dummy.

◆ isExecuted()

bool exatn::runtime::TensorOpNode::isExecuted ( int *  error_code = nullptr)
inline

Returns TRUE if the tensor graph node has been executed to completion.

◆ isExecuting()

bool exatn::runtime::TensorOpNode::isExecuting ( )
inline

Returns TRUE if the tensor graph node is currently being executed.

◆ setExecuted()

void exatn::runtime::TensorOpNode::setExecuted ( int  error_code = 0)
inline

Marks the tensor graph node as executed to completion.

◆ setExecuting()

void exatn::runtime::TensorOpNode::setExecuting ( )
inline

Marks the tensor graph node as being currently executed.

◆ setId()

void exatn::runtime::TensorOpNode::setId ( VertexIdType  id)
inline

Sets the (unique) id of the tensor graph node.

◆ setIdle()

void exatn::runtime::TensorOpNode::setIdle ( )
inline

Marks the tensor graph node as idle.


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