fpmas 1.5
List of all members
fpmas::communication::TypedMpi< fpmas::graph::EdgePtrWrapper< T > > Struct Template Reference

#include <distributed_edge.h>

Inheritance diagram for fpmas::communication::TypedMpi< fpmas::graph::EdgePtrWrapper< T > >:
Inheritance graph
[legend]
Collaboration diagram for fpmas::communication::TypedMpi< fpmas::graph::EdgePtrWrapper< T > >:
Collaboration graph
[legend]

Additional Inherited Members

- Public Types inherited from fpmas::communication::detail::TypedMpi< fpmas::graph::EdgePtrWrapper< T >, io::datapack::LightObjectPack >
typedef io::datapack::LightObjectPack pack_type
 
- Public Member Functions inherited from fpmas::communication::detail::TypedMpi< fpmas::graph::EdgePtrWrapper< T >, io::datapack::LightObjectPack >
 TypedMpi (api::communication::MpiCommunicator &comm)
 
std::unordered_map< int, std::vector< fpmas::graph::EdgePtrWrapper< T > > > migrate (std::unordered_map< int, std::vector< fpmas::graph::EdgePtrWrapper< T > > > export_map) override
 
std::unordered_map< int, fpmas::graph::EdgePtrWrapper< T > > allToAll (std::unordered_map< int, fpmas::graph::EdgePtrWrapper< T > > export_map) override
 
std::vector< fpmas::graph::EdgePtrWrapper< T > > gather (const fpmas::graph::EdgePtrWrapper< T > &, int root) override
 
std::vector< fpmas::graph::EdgePtrWrapper< T > > allGather (const fpmas::graph::EdgePtrWrapper< T > &) override
 
fpmas::graph::EdgePtrWrapper< T > bcast (const fpmas::graph::EdgePtrWrapper< T > &, int root) override
 
void send (const fpmas::graph::EdgePtrWrapper< T > &, int, int) override
 
void Isend (const fpmas::graph::EdgePtrWrapper< T > &, int, int, Request &) override
 
void Issend (const fpmas::graph::EdgePtrWrapper< T > &, int, int, Request &) override
 
void probe (int source, int tag, Status &status) override
 
bool Iprobe (int source, int tag, Status &status) override
 
fpmas::graph::EdgePtrWrapper< T > recv (int source, int tag, Status &status=Status::IGNORE) override
 
virtual std::unordered_map< int, std::vector< fpmas::graph::EdgePtrWrapper< T > > > migrate (std::unordered_map< int, std::vector< fpmas::graph::EdgePtrWrapper< T > > > export_map)=0
 
virtual std::unordered_map< int, fpmas::graph::EdgePtrWrapper< T > > allToAll (std::unordered_map< int, fpmas::graph::EdgePtrWrapper< T > > export_map)=0
 
virtual std::vector< fpmas::graph::EdgePtrWrapper< T > > gather (const fpmas::graph::EdgePtrWrapper< T > &data, int root)=0
 
virtual std::vector< fpmas::graph::EdgePtrWrapper< T > > allGather (const fpmas::graph::EdgePtrWrapper< T > &data)=0
 
virtual fpmas::graph::EdgePtrWrapper< T > bcast (const fpmas::graph::EdgePtrWrapper< T > &data, int root)=0
 
virtual void send (const fpmas::graph::EdgePtrWrapper< T > &data, int destination, int tag)=0
 
virtual void Isend (const fpmas::graph::EdgePtrWrapper< T > &data, int destination, int tag, Request &req)=0
 
virtual void Issend (const fpmas::graph::EdgePtrWrapper< T > &data, int destination, int tag, Request &req)=0
 
virtual void probe (int source, int tag, Status &status)=0
 
virtual bool Iprobe (int source, int tag, Status &status)=0
 
virtual fpmas::graph::EdgePtrWrapper< T > recv (int source, int tag, Status &status=Status::IGNORE)=0
 

Detailed Description

template<typename T>
struct fpmas::communication::TypedMpi< fpmas::graph::EdgePtrWrapper< T > >

DistributedEdge TypedMpi specialization, used to bypass the default fpmas::communication::TypedMpi specialization based on fpmas::io::datapack::Serializer.

Here, fpmas::io::datapack::LightObjectPack is used instead. This allows to use "light" serialization rules of source and target DistributedNodes, since sending their data is not required when transmitting DistributedEdges.

Template Parameters
Ttype of data contained in associated DistributedNodes

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