Compute Graph Framework SDK Reference  5.18
dw::framework::ManagedPortOutput< T > Class Template Reference

Detailed Description

template<typename T>
class dw::framework::ManagedPortOutput< T >

Derived ManagedPortOutput<T> provides type-specific interfaces for accessing buffers.

Definition at line 392 of file ManagedPort.hpp.

Inheritance diagram for dw::framework::ManagedPortOutput< T >:
Collaboration diagram for dw::framework::ManagedPortOutput< T >:

Public Member Functions

detail::vectorIterable< T > getAllBufferIter ()
 
T * getBuffer ()
 
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID==DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
 ManagedPortOutput (const dw::core::StringView &name)
 
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID==DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
 ManagedPortOutput (const dw::core::StringView &name, ConstructProperties props)
 
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID !=DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
 ManagedPortOutput (const dw::core::StringView &name, ConstructProperties props, SpecimenT &ref)
 
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID !=DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
 ManagedPortOutput (const dw::core::StringView &name, SpecimenT &ref)
 
- Public Member Functions inherited from dw::framework::ManagedPortOutputBase
void acquire ()
 
void bindChannel (ChannelObject *channel) override
 
dw::core::VectorFixed< GenericDatagetAllBuffers ()
 
ChannelMetadatagetMetadata ()
 
const PropertiesgetProperties () const noexcept
 
bool isBound () const noexcept override
 
bool isBufferAvailable () const noexcept
 
void reset () override
 
void send ()
 
void sendAdvTimestamp ()
 
void setCallbackBeforeSend (dw::core::Function< dwStatus()> callback)
 
void setNodeName (const dw::core::StringView &nodeName) noexcept override
 
- Public Member Functions inherited from dw::framework::ManagedPortBase
virtual void bindChannel (ChannelObject *channel)=0
 
void bindLockstepSyncClient (dw::framework::lockstep::ILockstepSyncClient *syncClient)
 
ChannelObjectgetChannel ()
 
const dw::core::StringView & getName () const
 Get the name of the port. More...
 
const dw::core::StringView & getNodeName () const
 Get the name of the node this port belongs to. More...
 
virtual bool isBound () const noexcept=0
 
 ManagedPortBase (const dw::core::StringView &name)
 
 ManagedPortBase (const ManagedPortBase &other)=delete
 
 ManagedPortBase (ManagedPortBase &&other)=delete
 
ManagedPortBaseoperator= (const ManagedPortBase &other)=delete
 
ManagedPortBaseoperator= (ManagedPortBase &&other)=delete
 
virtual void reset ()
 
void setCycleCount (uint32_t cycleCount)
 
virtual void setNodeName (const dw::core::StringView &nodeName) noexcept
 Set the name of the node this port belongs to. More...
 
void setPeriod (uint32_t period)
 
virtual ~ManagedPortBase ()=default
 
- Public Member Functions inherited from dw::framework::PortBase
virtual ~PortBase ()=default
 

Additional Inherited Members

- Static Public Attributes inherited from dw::framework::ManagedPortOutputBase
static constexpr char LOG_TAG [] {"ManagedPortOutputBase"}
 
- Protected Member Functions inherited from dw::framework::ManagedPortOutputBase
GenericData getBufferGeneric ()
 
 ManagedPortOutputBase (const dw::core::StringView &name, ConstructProperties props, GenericDataReference &&ref, std::type_index typeIndex)
 
- Protected Member Functions inherited from dw::framework::ManagedPortBase
 FI_DECLARE_INSTANCE_SET_HANDLE (m_fiHandle)
 
- Protected Attributes inherited from dw::framework::ManagedPortBase
ChannelObjectm_channel
 
uint32_t m_cycleCount
 
dw::framework::lockstep::ILockstepSyncClientm_lockstepSyncClient
 
dw::core::StringView m_name
 The unique name within set of ports with the same direction. More...
 
dw::core::StringView m_nodeName
 The name of the node this port belongs to. More...
 
uint32_t m_period
 

Constructor & Destructor Documentation

◆ ManagedPortOutput() [1/4]

template<typename T >
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID !=DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
dw::framework::ManagedPortOutput< T >::ManagedPortOutput ( const dw::core::StringView &  name,
ConstructProperties  props,
SpecimenT &  ref 
)
inline
Parameters
[in]namethe name of the output port.
[in]propsthe properties of the output Port.
[in]refthe reference data to be used by channel to allocate packets.

Definition at line 409 of file ManagedPort.hpp.

◆ ManagedPortOutput() [2/4]

template<typename T >
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID !=DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
dw::framework::ManagedPortOutput< T >::ManagedPortOutput ( const dw::core::StringView &  name,
SpecimenT &  ref 
)
inline
Parameters
[in]namethe name of the output port.
[in]refthe reference data to be used by channel to allocate packets.

Definition at line 420 of file ManagedPort.hpp.

◆ ManagedPortOutput() [3/4]

template<typename T >
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID==DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
dw::framework::ManagedPortOutput< T >::ManagedPortOutput ( const dw::core::StringView &  name,
ConstructProperties  props 
)
inline
Parameters
[in]namethe name of the output port.
[in]propsthe properties of the output Port.

Definition at line 430 of file ManagedPort.hpp.

◆ ManagedPortOutput() [4/4]

template<typename T >
template<typename T2 = T, typename std::enable_if_t< parameter_traits< T2 >::PacketTID==DWFRAMEWORK_PACKET_ID_DEFAULT, void > * = nullptr>
dw::framework::ManagedPortOutput< T >::ManagedPortOutput ( const dw::core::StringView &  name)
inline
Parameters
[in]namethe name of the output port.

Definition at line 439 of file ManagedPort.hpp.

Member Function Documentation

◆ getAllBufferIter()

template<typename T >
detail::vectorIterable< T > dw::framework::ManagedPortOutput< T >::getAllBufferIter ( )
inline

iterable for all the buffers in the output channel pool.

Definition at line 447 of file ManagedPort.hpp.

◆ getBuffer()

template<typename T >
T * dw::framework::ManagedPortOutput< T >::getBuffer ( )
inline

Get a pointer to the acquired buffer.

Note
returned pointer is never nullptr
Exceptions
whenthe buffer cannot be cast to T.

Definition at line 457 of file ManagedPort.hpp.


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