Deep Neural Network Library (DNNL)  1.1.3
Performance library for Deep Learning
Public Member Functions | List of all members
dnnl::handle< T, traits > Class Template Reference

A class for wrapping an DNNL handle. More...

#include <dnnl.hpp>

Public Member Functions

 handle ()=default
 Empty constructor. More...
 
 handle (T t, bool weak=false)
 Constructs a C handle wrapper from a C handle. More...
 
void reset (T t, bool weak=false)
 Resets the value of a C handle. More...
 
get (bool allow_emtpy=false) const
 Returns the value of the underlying C handle.
 

Detailed Description

template<typename T, typename traits = handle_traits<T>>
class dnnl::handle< T, traits >

A class for wrapping an DNNL handle.

It is used as the base class for primitive (dnnl_primitive_t), engine (dnnl_engine_t), and stream (dnnl_stream_t) handles. An object of the dnnl::handle class can be passed by value. This class enables wrapping:

Constructor & Destructor Documentation

◆ handle() [1/2]

template<typename T, typename traits = handle_traits<T>>
dnnl::handle< T, traits >::handle ( )
default

Empty constructor.

Allows declaring an object before actual initialization (mostly for convenience).

Warning
Uninitialized object cannot be used in any library calls. Any attempt to use its methods or passing it to the other library function will lead to a thrown exception.

◆ handle() [2/2]

template<typename T, typename traits = handle_traits<T>>
dnnl::handle< T, traits >::handle ( t,
bool  weak = false 
)
inlineexplicit

Constructs a C handle wrapper from a C handle.

Parameters
tThe C handle to wrap.
weakA flag to specify whether to construct a weak wrapper.

Member Function Documentation

◆ reset()

template<typename T, typename traits = handle_traits<T>>
void dnnl::handle< T, traits >::reset ( t,
bool  weak = false 
)
inline

Resets the value of a C handle.

Parameters
tThe new value of the C handle.
weakA flag to specify whether the wrapper should be weak.

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