37 cudnnBackendDescriptor_t
m_desc =
nullptr;
38 cudnnStatus_t
status = CUDNN_STATUS_SUCCESS;
61 cudnnBackendDescriptor_t
const&
79 return status == CUDNN_STATUS_SUCCESS;
89 return std::make_shared<OpaqueBackendPointer>(type);
103 describe()
const = 0;
107 cudnnBackendDescriptor_t
109 return pointer->get_backend_descriptor();
133 return err_msg.c_str();
146 return pointer->get_status();
155 : pointer(pointer_),
status(status_), err_msg(err_msg_) {}
160 mutable cudnnStatus_t
status = CUDNN_STATUS_SUCCESS;
OpaqueBackendPointer(const OpaqueBackendPointer &)=delete
Delete the copy constructor to prevent bad copies.
void set_status(cudnnStatus_t const status_) const
Set status of the descriptor.
cudnnStatus_t initialize_managed_backend_pointer(cudnnBackendDescriptorType_t type)
Initializes the underlying managed descriptor.
cudnnBackendDescriptor_t m_desc
Raw void pointer.
static ManagedOpaqueDescriptor make_shared_backend_pointer(cudnnBackendDescriptorType_t type)
cudnnBackendDescriptor_t get_raw_desc() const
ManagedOpaqueDescriptor get_desc() const
Returns a copy of underlying managed descriptor.
cudnnStatus_t status
status of creation of the Descriptor
OpaqueBackendPointer & operator=(const OpaqueBackendPointer &)=delete
cudnnBackendDescriptor_t const & get_backend_descriptor() const
cudnnStatus_t get_status() const
OpaqueBackendPointer(cudnnBackendDescriptorType_t type)
cudnnStatus_t get_status() const
Current status of the descriptor.
std::shared_ptr< OpaqueBackendPointer > ManagedOpaqueDescriptor
const char * get_error() const
Diagonistic error message if any.
void set_error(const char *message) const
Set Diagonistic error message.
BackendDescriptor(ManagedOpaqueDescriptor pointer_, cudnnStatus_t status_, std::string err_msg_)
std::string err_msg
Error message if any being set.
ManagedOpaqueDescriptor pointer