Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arccore::MessagePassing::Request

Requête d'un message. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/message_passing/arccore/message_passing/Request.h>

+ Graphe d'héritage de Arccore::MessagePassing::Request:
+ Graphe de collaboration de Arccore::MessagePassing::Request:

Classes

union  _Request
 

Fonctions membres publiques

 Request (int return_value, void *arequest)
 
 Request (int return_value, const void *arequest)
 
 Request (int return_value, int arequest)
 
 Request (int return_value, long arequest)
 
 Request (int return_value, std::size_t arequest)
 
 Request (int return_value, IRequestCreator *creator, void *arequest)
 
 Request (int return_value, IRequestCreator *creator, const void *arequest)
 
 Request (int return_value, IRequestCreator *creator, int arequest)
 
 Request (int return_value, IRequestCreator *creator, long arequest)
 
 Request (int return_value, IRequestCreator *creator, std::size_t arequest)
 
template<typename T >
 operator const T * () const
 
template<typename T >
 operator T* () const
 
 operator int () const
 
 operator long () const
 
 operator size_t () const
 
int returnValue () const
 
bool isValid () const
 
void * requestAsVoidPtr () const
 
void reset ()
 
Ref< ISubRequestsubRequest () const
 
bool hasSubRequest () const
 
void setSubRequest (Ref< ISubRequest > s)
 
IRequestCreatorcreator () const
 Créateur de la requête.
 
void print (std::ostream &o) const
 
Int32 _type () const
 

Fonctions membres publiques statiques

static void setNullRequest (Request r)
 

Types privés

enum  Type {
  T_Int , T_Long , T_SizeT , T_Ptr ,
  T_Null
}
 

Attributs privés

int m_return_value = 0
 
int m_type = T_Null
 
_Request m_request
 
Ref< ISubRequestm_sub_request
 
IRequestCreatorm_creator = nullptr
 

Attributs privés statiques

static _Request null_request
 
static int null_request_type = Request::T_Null
 

Amis

std::ostream & operator<< (std::ostream &o, const Request &prequest)
 

Description détaillée

Requête d'un message.

Ces informations sont utilisées pour les messages non bloquants. Une requête non nulle est associée à un IMessagePassingMng.

Cette classe permet de conserver de manière générique une requête sans connaitre son type exact (par exemple MPI_Request avec la norme MPI). On utilise pour cela une union. Pour être certain de créér une instance de cette classe avec avec les bons paramètes, il est préférable d'utiliser une spécialisation (par exemple la classe MpiRequest).

Une requête peut être associée à une sous-requête (ISubRequest) dont la méthode ISubRequest::executeOnCompletion() sera exécutée lorsque la requête sera satisfaite. Cela permet de générer d'autres requêtes automatiquement.

Définition à la ligne 76 du fichier Request.h.

Documentation des énumérations membres

◆ Type

enum Arccore::MessagePassing::Request::Type
private

Définition à la ligne 87 du fichier Request.h.

Documentation des constructeurs et destructeur

◆ Request() [1/11]

Arccore::MessagePassing::Request::Request ( )
inline

Définition à la ligne 98 du fichier Request.h.

◆ Request() [2/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
void *  arequest 
)
inline

Définition à la ligne 107 du fichier Request.h.

◆ Request() [3/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
const void *  arequest 
)
inline

Définition à la ligne 115 du fichier Request.h.

◆ Request() [4/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
int  arequest 
)
inline

Définition à la ligne 123 du fichier Request.h.

◆ Request() [5/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
long  arequest 
)
inline

Définition à la ligne 131 du fichier Request.h.

◆ Request() [6/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
std::size_t  arequest 
)
inline

Définition à la ligne 139 du fichier Request.h.

◆ Request() [7/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
IRequestCreator creator,
void *  arequest 
)
inline

Définition à la ligne 148 du fichier Request.h.

◆ Request() [8/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
IRequestCreator creator,
const void *  arequest 
)
inline

Définition à la ligne 155 du fichier Request.h.

◆ Request() [9/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
IRequestCreator creator,
int  arequest 
)
inline

Définition à la ligne 162 du fichier Request.h.

◆ Request() [10/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
IRequestCreator creator,
long  arequest 
)
inline

Définition à la ligne 169 du fichier Request.h.

◆ Request() [11/11]

Arccore::MessagePassing::Request::Request ( int  return_value,
IRequestCreator creator,
std::size_t  arequest 
)
inline

Définition à la ligne 176 du fichier Request.h.

Documentation des fonctions membres

◆ _type()

Int32 Arccore::MessagePassing::Request::_type ( ) const
inline

Définition à la ligne 245 du fichier Request.h.

◆ creator()

IRequestCreator * Arccore::MessagePassing::Request::creator ( ) const
inline

Créateur de la requête.

Définition à la ligne 234 du fichier Request.h.

◆ hasSubRequest()

bool Arccore::MessagePassing::Request::hasSubRequest ( ) const
inline

Définition à la ligne 230 du fichier Request.h.

◆ isValid()

bool Arccore::MessagePassing::Request::isValid ( ) const
inline

Définition à la ligne 196 du fichier Request.h.

◆ operator const T *()

template<typename T >
Arccore::MessagePassing::Request::operator const T * ( ) const
inline

Définition à la ligne 186 du fichier Request.h.

◆ operator int()

Arccore::MessagePassing::Request::operator int ( ) const
inline

Définition à la ligne 189 du fichier Request.h.

◆ operator long()

Arccore::MessagePassing::Request::operator long ( ) const
inline

Définition à la ligne 190 du fichier Request.h.

◆ operator size_t()

Arccore::MessagePassing::Request::operator size_t ( ) const
inline

Définition à la ligne 191 du fichier Request.h.

◆ operator T*()

template<typename T >
Arccore::MessagePassing::Request::operator T* ( ) const
inline

Définition à la ligne 188 du fichier Request.h.

◆ print()

void Arccore::MessagePassing::Request::print ( std::ostream &  o) const

Définition à la ligne 33 du fichier Request.cc.

◆ requestAsVoidPtr()

void * Arccore::MessagePassing::Request::requestAsVoidPtr ( ) const
inline

Définition à la ligne 215 du fichier Request.h.

◆ reset()

void Arccore::MessagePassing::Request::reset ( )
inline

Définition à la ligne 223 du fichier Request.h.

◆ returnValue()

int Arccore::MessagePassing::Request::returnValue ( ) const
inline

Définition à la ligne 195 du fichier Request.h.

◆ setNullRequest()

static void Arccore::MessagePassing::Request::setNullRequest ( Request  r)
inlinestatic

Définition à la ligne 217 du fichier Request.h.

◆ setSubRequest()

void Arccore::MessagePassing::Request::setSubRequest ( Ref< ISubRequest s)
inline

Définition à la ligne 231 du fichier Request.h.

◆ subRequest()

Ref< ISubRequest > Arccore::MessagePassing::Request::subRequest ( ) const
inline

Définition à la ligne 229 du fichier Request.h.

Documentation des fonctions amies et associées

◆ operator<<

std::ostream & operator<< ( std::ostream &  o,
const Request prequest 
)
friend

Définition à la ligne 238 du fichier Request.h.

Documentation des données membres

◆ m_creator

IRequestCreator* Arccore::MessagePassing::Request::m_creator = nullptr
private

Définition à la ligne 253 du fichier Request.h.

◆ m_request

_Request Arccore::MessagePassing::Request::m_request
private

Définition à la ligne 251 du fichier Request.h.

◆ m_return_value

int Arccore::MessagePassing::Request::m_return_value = 0
private

Définition à la ligne 249 du fichier Request.h.

◆ m_sub_request

Ref<ISubRequest> Arccore::MessagePassing::Request::m_sub_request
private

Définition à la ligne 252 du fichier Request.h.

◆ m_type

int Arccore::MessagePassing::Request::m_type = T_Null
private

Définition à la ligne 250 du fichier Request.h.

◆ null_request

Request::_Request Arccore::MessagePassing::Request::null_request
staticprivate

Définition à la ligne 254 du fichier Request.h.

◆ null_request_type

int Arccore::MessagePassing::Request::null_request_type = Request::T_Null
staticprivate

Définition à la ligne 255 du fichier Request.h.


La documentation de cette classe a été générée à partir des fichiers suivants :