fpmas 1.6
Public Member Functions | List of all members
fpmas::graph::TemporaryNode< T, PackType > Class Template Reference

#include <distributed_edge.h>

Inheritance diagram for fpmas::graph::TemporaryNode< T, PackType >:
Inheritance graph
[legend]
Collaboration diagram for fpmas::graph::TemporaryNode< T, PackType >:
Collaboration graph
[legend]

Public Member Functions

template<typename _PackType >
 TemporaryNode (DistributedId id, int location, _PackType &&p)
 
DistributedId getId () const override
 
int getLocation () const override
 
api::graph::DistributedNode< T > * build () override
 
virtual DistributedId getId () const =0
 
virtual int getLocation () const =0
 
virtual DistributedNode< T > * build ()=0
 

Detailed Description

template<typename T, typename PackType>
class fpmas::graph::TemporaryNode< T, PackType >

ObjectPack based api::graph::TemporaryNode implementation.

Template Parameters
Tnode data type
PackTypeObjectPack specialization

Constructor & Destructor Documentation

◆ TemporaryNode()

template<typename T , typename PackType >
template<typename _PackType >
fpmas::graph::TemporaryNode< T, PackType >::TemporaryNode ( DistributedId  id,
int  location,
_PackType &&  p 
)
inline

TemporaryNode constructor.

The specified PackType is forwarded to the internal PackType to prevent useless copies.

Parameters
idnode id
locationnode location rank
pPackType representing the node

Member Function Documentation

◆ getId()

template<typename T , typename PackType >
DistributedId fpmas::graph::TemporaryNode< T, PackType >::getId ( ) const
inlineoverridevirtual

Gets the id of the node represented by the TemporaryNode.

This should not require the complete node deserialization and allocation.

Returns
temporary node id

Implements fpmas::api::graph::TemporaryNode< T >.

◆ getLocation()

template<typename T , typename PackType >
int fpmas::graph::TemporaryNode< T, PackType >::getLocation ( ) const
inlineoverridevirtual

Gets the processor rank where the node represented by the TemporaryNode is located.

Returns
node location

Implements fpmas::api::graph::TemporaryNode< T >.

◆ build()

template<typename T , typename PackType >
api::graph::DistributedNode< T > * fpmas::graph::TemporaryNode< T, PackType >::build ( )
inlineoverridevirtual

Desesializes (if required) and allocates the DistributedNode represented by this temporary node and returns it.

The node ID must be the value of getId(), and its location must be initialized to getLocation().

Implements fpmas::api::graph::TemporaryNode< T >.


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