12#ifndef ARCCORE_MESSAGEPASSING_REQUESTLISTBASE_H
13#define ARCCORE_MESSAGEPASSING_REQUESTLISTBASE_H
17#include "arccore/message_passing/IRequestList.h"
18#include "arccore/message_passing/Request.h"
19#include "arccore/collections/Array.h"
24namespace Arccore::MessagePassing::internal
42 Int32 size()
const override {
return m_requests.size(); }
44 void removeDoneRequests() override;
45 bool isRequestDone(
Int32 index)
const override {
return m_requests_done[index]; }
51 virtual
void _add(const
Request& r)
54 m_requests_done.add(
false);
58 m_requests.addRange(rlist);
59 m_requests_done.addRange(
false,rlist.
size());
61 virtual void _removeRequestAtIndex(
Integer pos)
63 m_requests.remove(pos);
64 m_requests_done.remove(pos);
Vue modifiable d'un tableau d'un type T.
Vue constante d'un tableau de type T.
Liste de requête de messages.
Classe de base d'une liste de requêtes.
void add(Request r) override
Ajoute la requête r à la liste des requêtes.
virtual void _wait(eWaitType wait_type)=0
Effectue l'attente ou le test.
Int32 size() const override
Nombre de requêtes.
Request request(Int32 index) const override
index-ième requête de la liste
void add(Span< Request > r) override
Ajoute la liste de requêtes rlist à la liste des requêtes.
constexpr ARCCORE_HOST_DEVICE SizeType size() const noexcept
Retourne la taille du tableau.
Vue d'un tableau d'éléments de type T.
Vecteur 1D de données avec sémantique par valeur (style STL).
Int32 Integer
Type représentant un entier.
std::int32_t Int32
Type entier signé sur 32 bits.