The directory used for message routing in the PARAGRAPH and pContainers.
More...
|
class | stapl::detail::default_key_mapper< Key > |
| Define default key to location mapping strategy used in the directory class used by containers and the PARAGRAPH. More...
|
|
class | stapl::detail::non_migratable_base< Key > |
| Trivial class used to unconditionally signal certainty about presence of key on a location when migration is disabled. More...
|
|
class | stapl::detail::migratable_base< Key > |
| Class used by detail::directory_base to verify a key is still registered on a location when migration is enabled (it's possible key has moved while this request was in flight). More...
|
|
struct | stapl::async_transmitter |
| Transmitter for Directory that sends requests using async_rmi(). More...
|
|
struct | stapl::unordered_async_transmitter |
| Transmitter for Directory that sends requests using unordered::async_rmi(). More...
|
|
struct | stapl::try_transmitter |
| Transmitter for Directory that sends requests with try_rmi(). More...
|
|
class | stapl::detail::directory_base< Key, Transmitter, Mapper, Registry, EnableMigration > |
| Base class of Directory that provides the bulk of the non migration specific implementation. More...
|
|
class | stapl::directory< Key, Transmitter, Mapper, Registry, EnableMigration > |
| Provides basic functionality to forward computation (via a generic functor) to a location determined by the distributed registration of key values. The class handles heterogeneous work requests and supports relaxed consistency, placing no synchronization requirements on the registration of key and functor forwarding requests employing that key. More...
|
|
class | stapl::directory< Key, Transmitter, Mapper, Registry, true > |
| Specialization with migration support. More...
|
|
class | stapl::detail::directory_request_base< Key, IntrusiveHook > |
| Abstract base representing encapsulation of a buffered directory request which must be buffered at location managing a given key, pending key registration. More...
|
|
class | stapl::detail::directory_request< Directory, Functor, IntrusiveHook > |
| Derived class of directory_request_base which holds function object associated with request and also defines the pointer to member method of the directory which will be used to service this request. More...
|
|
|
template<typename Directory , typename... PMFArgs, typename... Args> |
void | stapl::detail::directory_base< Key, Transmitter, Mapper, Registry, EnableMigration >::invoke_at_manager (Key const &key, void(Directory::*const pmf)(PMFArgs...), Args &&... args) |
| Forwards functor and arguments to location managing key . The location managing the key will invoke the method with the supplied arguments. More...
|
|
template<typename Directory , typename... PMFArgs, typename... Args> |
void | stapl::detail::directory_base< Key, Transmitter, Mapper, Registry, EnableMigration >::invoke_at_manager (Key const &key, void(Directory::*const pmf)(PMFArgs...) const, Args &&... args) const |
| Forwards const functor and arguments to location managing key . The location managing the key will invoke the method with the supplied arguments. More...
|
|
The directory used for message routing in the PARAGRAPH and pContainers.
◆ invoke_at_manager() [1/2]
template<typename Key, typename Transmitter, typename Mapper, typename Registry, bool EnableMigration>
template<typename Directory , typename... PMFArgs, typename... Args>
void stapl::detail::directory_base< Key, Transmitter, Mapper, Registry, EnableMigration >::invoke_at_manager |
( |
Key const & |
key, |
|
|
void(Directory::*)(PMFArgs...) |
pmf, |
|
|
Args &&... |
args |
|
) |
| |
|
protected |
Forwards functor and arguments to location managing key
. The location managing the key will invoke the method with the supplied arguments.
- Parameters
-
key | Key value whose managing location (i.e., where registry entry is stored) is where pmf will be invoked. |
pmf | Directory member function to be invoked. |
args | variadic list of arguments to be applied. |
This is used to internally encapsulate to forward various method invocations from the requester (e.g., registration, invoke_where, etc) to the location where they can be serviced, forwarded, etc.
- See also
- directory_base::invoke_where
◆ invoke_at_manager() [2/2]
template<typename Key, typename Transmitter, typename Mapper, typename Registry, bool EnableMigration>
template<typename Directory , typename... PMFArgs, typename... Args>
void stapl::detail::directory_base< Key, Transmitter, Mapper, Registry, EnableMigration >::invoke_at_manager |
( |
Key const & |
key, |
|
|
void(Directory::*)(PMFArgs...) const |
pmf, |
|
|
Args &&... |
args |
|
) |
| const |
|
protected |
Forwards const functor and arguments to location managing key
. The location managing the key will invoke the method with the supplied arguments.
- Parameters
-
key | Key value whose managing location (i.e., where registry entry is stored) is where pmf will be invoked. |
pmf | Directory const member function to be invoked. |
args | variadic list of arguments to be applied. |
This is used to internally encapsulate to forward various method invocations from the requester (e.g., registration, invoke_where, etc) to the location where they can be serviced, forwarded, etc.
- See also
- directory_base::invoke_where