dxd - dynax driver framework 2.7.0d222
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::pipe< rcv_t >::server< instance_t, arg_t >::instance Class Reference

#include <dx_pipe.h>

Inheritance diagram for dx::pipe< rcv_t >::server< instance_t, arg_t >::instance:
Collaboration diagram for dx::pipe< rcv_t >::server< instance_t, arg_t >::instance:

Protected Member Functions

 dx_catchall (this->concluded=true;, "%s: handle:%llx", this->id.c_str(), this->pipe::handle) public
 dx_catchall_rethrow (, "%s: handle:%llx access:%x:%x", this->id.c_str(), this->pipe::handle, access[0], access[1]) instance(class server &server
 dx_catchall_rethrow (, "%s: handle:%llx", this->id.c_str(), this->pipe::handle) template< typename snd_t > const snd_t &operator<<(const snd_t &snd)
void read (std::stop_token stop_token) noexcept override try
void run () try
decltype(super::listen) ::listeners arg_t std::move (listeners)

Protected Attributes

decltype(super::listen) ::listeners arg_t args
decltype(super::listen) ::listeners arg_t & args: instance{server
decltype(super::listen) ::listeners && listeners
server & server

Member Function Documentation

◆ dx_catchall()

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::dx_catchall ( this-> concluded = true;,
"%s: handle:%llx" ,
this->id. c_str(),
this->pipe::handle  )
inlineprotected

◆ dx_catchall_rethrow() [1/2]

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::dx_catchall_rethrow ( "%s: handle:%llx access:%x:%x" ,
this->id. c_str(),
this->pipe::handle ,
access [0],
access [1] ) &
protected

◆ dx_catchall_rethrow() [2/2]

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::dx_catchall_rethrow ( "%s: handle:%llx" ,
this->id. c_str(),
this->pipe::handle  ) const &
inlineprotected

◆ read()

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
void dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::read ( std::stop_token stop_token)
inlineoverrideprotectednoexcept
Here is the call graph for this function:
Here is the caller graph for this function:

◆ run()

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
void dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::run ( )
inlineprotected
Here is the call graph for this function:

◆ std::move()

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
decltype(super::listen) ::listeners arg_t dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::std::move ( listeners )
protected

Member Data Documentation

◆ args [1/2]

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
decltype(super::listen) ::listeners arg_t dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::args
protected
Initial value:
{}
instance(class server& server, const ::DWORD (&access)[2], arg_t&... args):
instance{server, typename decltype(super::listen)::listeners{}, access, args...}{}
instance(class server& server, arg_t&... args):
instance{server, typename decltype(super::listen)::listeners{}, server::access::dflt, args...}{}
~instance() override {this->pipe::free();}
std::atomic<bool> concluded{}
internal helper to map single listener into listerners map
Definition dx_common.h:346
Definition dx_pipe.h:200
server & server
Definition dx_pipe.h:205
decltype(super::listen) ::listeners && listeners
Definition dx_pipe.h:236
decltype(super::listen) ::listeners arg_t & args
Definition dx_pipe.h:237
dx::listen< std::function< void(class instance &, const rcv_t &)> > listen
Definition dx_pipe.h:265
shared::guard< std::set< std::shared_ptr< class instance > > > instance
Definition dx_pipe.h:262
server(const std::string &id, typename decltype(listen)::listeners &&listeners, const ::DWORD(&access)[2], arg_t... args)
Definition dx_pipe.h:273
std::tuple< arg_t... > args
Definition dx_pipe.h:266
Definition dx_pipe.h:268

◆ args [2/2]

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
decltype(super::listen) ::listeners arg_t& dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::args
protected

◆ listeners

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
decltype(super::listen) ::listeners&& dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::listeners
protected

◆ server

template<typename rcv_t>
template<typename instance_t = pipe, typename ... arg_t>
server& dx::pipe< rcv_t >::server< instance_t, arg_t >::instance::server
protected

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

(c) copyright 2009 dynamic acoustics e.U. generated on

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.