iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
iox2::internal Namespace Reference

Classes

class  CallbackContext
 
struct  HasPayloadTypeNameMember
 
struct  HasPayloadTypeNameMember< Payload, decltype((void) Payload::IOX2_TYPE_NAME)>
 
struct  HasPayloadTypeNameSpecialization
 
struct  HasPayloadTypeNameSpecialization< Payload, decltype((void) TypeNameSpecialization< Payload >::value())>
 
struct  PlacementDefault
 
struct  PlacementDefault< void >
 

Typedefs

template<typename Payload >
using FromPayloadTypeNameSpecialization = std::enable_if_t< HasPayloadTypeNameSpecialization< Payload >::value, TypeName >
 
template<typename Payload >
using FromPayloadTypeNameMember = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&HasPayloadTypeNameMember< Payload >::value, TypeName >
 
template<typename Payload >
using FromNonSlice = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&!HasPayloadTypeNameMember< Payload >::value &&!bb::IsSlice< Payload >::VALUE &&!iox2::bb::IsStaticVector< Payload >::value &&!iox2::bb::IsStaticString< Payload >::value, TypeName >
 
template<typename Payload >
using FromStaticVector = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&iox2::bb::IsStaticVector< Payload >::value, TypeName >
 
template<typename Payload >
using FromStaticString = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&iox2::bb::IsStaticString< Payload >::value, TypeName >
 
template<typename Payload >
using FromSliceWithInnerPayloadTypeNameMember = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&!HasPayloadTypeNameMember< Payload >::value &&bb::IsSlice< Payload >::VALUE &&HasPayloadTypeNameMember< typename Payload::ValueType >::value, TypeName >
 
template<typename Payload >
using FromSliceWithoutInnerPayloadTypeNameMember = std::enable_if_t<!HasPayloadTypeNameSpecialization< Payload >::value &&!HasPayloadTypeNameMember< Payload >::value &&bb::IsSlice< Payload >::VALUE &&!HasPayloadTypeNameMember< typename Payload::ValueType >::value, TypeName >
 

Functions

template<typename T >
auto ctx (const T &ptr) -> CallbackContext< T >
 
template<typename T >
auto ctx_cast (void *ptr) -> CallbackContext< T > *
 
auto override_callback (size_t value, iox2_callback_context ctx) -> size_t
 
template<typename T , typename ViewType >
auto list_ports_callback (void *context, const T port_details_view) -> iox2_callback_progression_e
 
template<ServiceType T>
auto list_callback (iox2_node_state_e node_state, iox2_unique_node_id_ptr node_id_ptr, const char *executable, iox2_node_name_ptr node_name, iox2_config_ptr config, iox2_callback_context context) -> iox2_callback_progression_e
 
template<typename >
auto get_type_name () -> TypeName
 
template<typename PayloadType >
auto get_type_name_impl () -> internal::FromPayloadTypeNameSpecialization< PayloadType >
 

Typedef Documentation

◆ FromNonSlice

template<typename Payload >
using iox2::internal::FromNonSlice = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && !HasPayloadTypeNameMember<Payload>::value && !bb::IsSlice<Payload>::VALUE && !iox2::bb::IsStaticVector<Payload>::value && !iox2::bb::IsStaticString<Payload>::value, TypeName>

Definition at line 53 of file service_builder_internal.hpp.

◆ FromPayloadTypeNameMember

template<typename Payload >
using iox2::internal::FromPayloadTypeNameMember = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && HasPayloadTypeNameMember<Payload>::value, TypeName>

Definition at line 48 of file service_builder_internal.hpp.

◆ FromPayloadTypeNameSpecialization

template<typename Payload >
using iox2::internal::FromPayloadTypeNameSpecialization = typedef std::enable_if_t<HasPayloadTypeNameSpecialization<Payload>::value, TypeName>

Definition at line 45 of file service_builder_internal.hpp.

◆ FromSliceWithInnerPayloadTypeNameMember

template<typename Payload >
using iox2::internal::FromSliceWithInnerPayloadTypeNameMember = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && !HasPayloadTypeNameMember<Payload>::value && bb::IsSlice<Payload>::VALUE && HasPayloadTypeNameMember<typename Payload::ValueType>::value, TypeName>

Definition at line 70 of file service_builder_internal.hpp.

◆ FromSliceWithoutInnerPayloadTypeNameMember

template<typename Payload >
using iox2::internal::FromSliceWithoutInnerPayloadTypeNameMember = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && !HasPayloadTypeNameMember<Payload>::value && bb::IsSlice<Payload>::VALUE && !HasPayloadTypeNameMember<typename Payload::ValueType>::value, TypeName>

Definition at line 76 of file service_builder_internal.hpp.

◆ FromStaticString

template<typename Payload >
using iox2::internal::FromStaticString = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && iox2::bb::IsStaticString<Payload>::value, TypeName>

Definition at line 65 of file service_builder_internal.hpp.

◆ FromStaticVector

template<typename Payload >
using iox2::internal::FromStaticVector = typedef std::enable_if_t<!HasPayloadTypeNameSpecialization<Payload>::value && iox2::bb::IsStaticVector<Payload>::value, TypeName>

Definition at line 60 of file service_builder_internal.hpp.

Function Documentation

◆ ctx()

◆ ctx_cast()

template<typename T >
auto iox2::internal::ctx_cast ( void *  ptr) -> CallbackContext<T>*
inline

Definition at line 67 of file callback_context.hpp.

Referenced by list_callback(), and list_ports_callback().

◆ get_type_name()

template<typename >
auto iox2::internal::get_type_name ( ) -> TypeName

Definition at line 187 of file service_builder_internal.hpp.

◆ get_type_name_impl()

template<typename PayloadType >
auto iox2::internal::get_type_name_impl ( ) -> internal::FromPayloadTypeNameSpecialization<PayloadType>

◆ list_callback()

template<ServiceType T>
auto iox2::internal::list_callback ( iox2_node_state_e  node_state,
iox2_unique_node_id_ptr  node_id_ptr,
const char *  executable,
iox2_node_name_ptr  node_name,
iox2_config_ptr  config,
iox2_callback_context  context 
) -> iox2_callback_progression_e
inline

◆ list_ports_callback()

template<typename T , typename ViewType >
auto iox2::internal::list_ports_callback ( void *  context,
const T  port_details_view 
) -> iox2_callback_progression_e
inline

Definition at line 83 of file callback_context.hpp.

References ctx_cast().

◆ override_callback()