Compute Graph Framework SDK Reference  5.8
dw::framework::PassImpl< PassFunctionT > Class Template Reference

Detailed Description

template<typename PassFunctionT>
class dw::framework::PassImpl< PassFunctionT >

PassImpl contains the function to invoke on run().

Definition at line 121 of file Pass.hpp.

Inheritance diagram for dw::framework::PassImpl< PassFunctionT >:
Collaboration diagram for dw::framework::PassImpl< PassFunctionT >:

Public Member Functions

NodegetNode () const final
 
dw::core::FixedString< MAX_NAME_LEN > const & getRunnableId (bool isSubmitPass) const final
 
 PassImpl (Node &node, PassFunctionT const passFunc, dwProcessorType const processor, dwProcessType const processType, dwTime_t const minTime, dwTime_t const avgTime, dwTime_t const maxTime)
 Constructor with a function running on a CPU. More...
 
 PassImpl (Node &node, PassFunctionT const passFunc, dwProcessorType const processor, dwProcessType const processType, dwTime_t const minTime, dwTime_t const avgTime, dwTime_t const maxTime, cudaStream_t const cudaStream)
 Constructor with a function running on a GPU. More...
 
 PassImpl (Node &node, PassFunctionT const passFunc, dwProcessorType const processor, dwProcessType const processType, dwTime_t const minTime, dwTime_t const avgTime, dwTime_t const maxTime, NvMediaDla *const dlaEngine)
 Constructor with a function running on a DLA. More...
 
dwStatus run () final
 
void setRunnableId (dw::core::StringView const &runnableId) final
 
- Public Member Functions inherited from dw::framework::Pass
virtual NodegetNode () const =0
 Get the node this pass belongs to. More...
 
virtual dw::core::FixedString< MAX_NAME_LEN > const & getRunnableId (bool isSubmitPass) const =0
 Get the runnable id. More...
 
Passoperator= (Pass &&) &=delete
 Move assignment operator. More...
 
Passoperator= (Pass const &) &=delete
 Copy assignment operator. More...
 
 Pass (Pass &&)=delete
 Move constructor. More...
 
 Pass (Pass const &)=delete
 Copy constructor. More...
 
virtual dwStatus run ()=0
 Run the pass. More...
 
virtual void setRunnableId (dw::core::StringView const &runnableId)=0
 Set the runnable id. More...
 
virtual ~Pass ()=default
 Destructor. More...
 

Additional Inherited Members

- Public Attributes inherited from dw::framework::Pass
dwTime_t m_avgTime
 
cudaStream_t m_cudaStream
 The cuda stream to use in case the processor type is GPU. More...
 
NvMediaDla * m_dlaEngine
 The dla engine to run on in case the processor type is GPU. More...
 
bool m_isFirstIteration
 
dwTime_t m_maxTime
 
dwTime_t m_minTime
 
dwProcessorType m_processor
 The processor type this pass runs on. More...
 
dwProcessType m_processType
 The process type this pass runs with. More...
 
- Static Public Attributes inherited from dw::framework::Pass
static constexpr size_t MAX_NAME_LEN {256U}
 The maximum length of the runnable id. More...
 
- Protected Member Functions inherited from dw::framework::Pass
 Pass (dwProcessorType const processor, dwProcessType const processType, dwTime_t const minTime, dwTime_t const avgTime, dwTime_t const maxTime) noexcept
 Constructor. More...
 

Constructor & Destructor Documentation

◆ PassImpl() [1/3]

template<typename PassFunctionT >
dw::framework::PassImpl< PassFunctionT >::PassImpl ( Node node,
PassFunctionT const  passFunc,
dwProcessorType const  processor,
dwProcessType const  processType,
dwTime_t const  minTime,
dwTime_t const  avgTime,
dwTime_t const  maxTime 
)
inline

Constructor with a function running on a CPU.

Definition at line 127 of file Pass.hpp.

◆ PassImpl() [2/3]

template<typename PassFunctionT >
dw::framework::PassImpl< PassFunctionT >::PassImpl ( Node node,
PassFunctionT const  passFunc,
dwProcessorType const  processor,
dwProcessType const  processType,
dwTime_t const  minTime,
dwTime_t const  avgTime,
dwTime_t const  maxTime,
cudaStream_t const  cudaStream 
)
inline

Constructor with a function running on a GPU.

Definition at line 139 of file Pass.hpp.

References dw::framework::cudaStream, and dw::framework::Pass::m_cudaStream.

◆ PassImpl() [3/3]

template<typename PassFunctionT >
dw::framework::PassImpl< PassFunctionT >::PassImpl ( Node node,
PassFunctionT const  passFunc,
dwProcessorType const  processor,
dwProcessType const  processType,
dwTime_t const  minTime,
dwTime_t const  avgTime,
dwTime_t const  maxTime,
NvMediaDla *const  dlaEngine 
)
inline

Constructor with a function running on a DLA.

Definition at line 160 of file Pass.hpp.

References dw::framework::Pass::m_dlaEngine.

Member Function Documentation

◆ getNode()

template<typename PassFunctionT >
Node & dw::framework::PassImpl< PassFunctionT >::getNode ( ) const
inlinefinalvirtual
See also
Pass::getNode()

Implements dw::framework::Pass.

Definition at line 213 of file Pass.hpp.

◆ getRunnableId()

template<typename PassFunctionT >
dw::core::FixedString< MAX_NAME_LEN > const & dw::framework::PassImpl< PassFunctionT >::getRunnableId ( bool  isSubmitPass) const
inlinefinalvirtual
See also
Pass::getRunnableId()

Implements dw::framework::Pass.

Definition at line 203 of file Pass.hpp.

◆ run()

template<typename PassFunctionT >
dwStatus dw::framework::PassImpl< PassFunctionT >::run ( )
inlinefinalvirtual
See also
Pass::run()

Implements dw::framework::Pass.

Definition at line 181 of file Pass.hpp.

References dw::framework::Exception::guard().

◆ setRunnableId()

template<typename PassFunctionT >
void dw::framework::PassImpl< PassFunctionT >::setRunnableId ( dw::core::StringView const &  runnableId)
inlinefinalvirtual
See also
Pass::setRunnableId()

Implements dw::framework::Pass.

Definition at line 191 of file Pass.hpp.


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