17#ifndef IOX_POSH_ROUDI_PORT_POOL_INL
18#define IOX_POSH_ROUDI_PORT_POOL_INL
24template <typename T, std::enable_if_t<std::is_same<T, iox::build::ManyToManyPolicy>::value>*>
25inline iox::popo::SubscriberPortData* PortPool::constructSubscriber(
const capro::ServiceDescription& serviceDescription,
26 const RuntimeName_t& runtimeName,
27 const popo::SubscriberOptions& subscriberOptions,
28 const mepoo::MemoryInfo& memoryInfo)
noexcept
30 return m_portPoolData->m_subscriberPortMembers.insert(
33 (subscriberOptions.queueFullPolicy == popo::QueueFullPolicy::DISCARD_OLDEST_DATA)
34 ? cxx::VariantQueueTypes::SoFi_MultiProducerSingleConsumer
35 : cxx::VariantQueueTypes::FiFo_MultiProducerSingleConsumer,
40template <typename T, std::enable_if_t<std::is_same<T, iox::build::OneToManyPolicy>::value>*>
41inline iox::popo::SubscriberPortData* PortPool::constructSubscriber(
const capro::ServiceDescription& serviceDescription,
42 const RuntimeName_t& runtimeName,
43 const popo::SubscriberOptions& subscriberOptions,
44 const mepoo::MemoryInfo& memoryInfo)
noexcept
46 return m_portPoolData->m_subscriberPortMembers.insert(
49 (subscriberOptions.queueFullPolicy == popo::QueueFullPolicy::DISCARD_OLDEST_DATA)
50 ? cxx::VariantQueueTypes::SoFi_SingleProducerSingleConsumer
51 : cxx::VariantQueueTypes::FiFo_SingleProducerSingleConsumer,