BaseCmd#
Fully qualified name: cupva::BaseCmd
Defined in src/host/cpp_api/include/cupva_host.hpp
-
class BaseCmd : public cupva::StaticStorage<impl::BaseCmd, priv::CUPVA_BASE_CMD_SIZE, priv::CUPVA_BASE_CMD_ALIGN>#
BaseCmd is the abstraction of the command passed to hardware.
Multiple classes are inherited from the BaseCmd class: CmdProgram, CmdRequestFences, CmdWaitOnFences, Barrier. Although BaseCmd destructor is not virtual, it is safe to call the destructor using pointers to BaseCmd base class. The internal implementation will automatically call destructor of the implementation matching the initially constructed command object.
Subclassed by cupva::CmdBarrier, cupva::CmdL2Ops, cupva::CmdMemcpy, cupva::CmdPFSD, cupva::CmdProgram, cupva::CmdRequestFences, cupva::CmdWaitOnFences
Public Functions
-
BaseCmd() noexcept#
Construct empty BaseCmd instance.
Usage considerations
Allowed context for the API call
Thread-safe: No
API group
Init: No
Runtime: Yes
De-Init: No
-
inline BaseCmd(BaseCmd &&obj) noexcept#
Move constructor.
Usage considerations
Allowed context for the API call
Thread-safe: No
API group
Init: No
Runtime: Yes
De-Init: No
-
~BaseCmd() noexcept#
Destroy BaseCmd object.
Usage considerations
Allowed context for the API call
Thread-safe: No
API group
Init: No
Runtime: No
De-Init: Yes
-
void finalize()#
Destroy the resources created by a BaseCmd object.
This method is exposed to allow fine-grained control over error handling.
During destruction of the object, this method will be called but the destructor must not propagate exceptions. To handle exceptions, manually invoke this method prior to object destruction.
Usage considerations
Allowed context for the API call
Thread-safe: No
API group
Init: No
Runtime: No
De-Init: Yes
-
BaseCmd() noexcept#