OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref Class Reference

Manual replacement for std::reference_wrapper<RecvTask> More...

#include <blockCommunicator.hh>

+ Collaboration diagram for olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref:

Public Member Functions

 ref (RecvTask &task)
 
RecvTaskoperator-> () const
 
bool operator< (const ref &rhs) const
 

Detailed Description

template<typename BLOCK>
class olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref

Manual replacement for std::reference_wrapper<RecvTask>

Used to track pending receive requests in std::set.

This is a workaround for problematic external definition of dependently-typed comparision operators for nested classes. Reconsider as soon as depending on C++17 is allowed.

Definition at line 98 of file blockCommunicator.hh.

Constructor & Destructor Documentation

◆ ref()

template<typename BLOCK >
olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref::ref ( RecvTask & task)
inline

Definition at line 102 of file blockCommunicator.hh.

102: _task(task) { };

Member Function Documentation

◆ operator->()

template<typename BLOCK >
RecvTask * olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref::operator-> ( ) const
inline

Definition at line 104 of file blockCommunicator.hh.

105 {
106 return &_task;
107 }

◆ operator<()

template<typename BLOCK >
bool olb::ConcreteBlockCommunicator< BLOCK >::RecvTask::ref::operator< ( const ref & rhs) const
inline

Definition at line 109 of file blockCommunicator.hh.

110 {
111 return _task < rhs._task;
112 }

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