NVIDIA NvNeural SDK  2022.2
GPU inference framework for NVIDIA Nsight Deep Learning Designer
nvneural::IImage Class Referenceabstract

IImage represents a bitmap image in system memory. More...

#include <nvneural/CoreTypes.h>

Inheritance diagram for nvneural::IImage:
nvneural::IRefObject

Public Member Functions

virtual std::size_t channels () const noexcept=0
 Returns the number of color channels in the image.
 
virtual const std::uint8_t * data () const noexcept=0
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
virtual std::uint8_t * data () noexcept=0
 Returns a pointer to the raw pixel data in HWC layout. More...
 
virtual std::size_t elements () const noexcept=0
 Returns the number of data elements in the image. More...
 
virtual std::size_t height () const noexcept=0
 Returns the height of the image in pixels.
 
virtual NeuralResult resize (std::size_t height, std::size_t width, std::size_t channels) noexcept=0
 Clears the image and reserves storage. More...
 
virtual std::size_t width () const noexcept=0
 Returns the width of the image in pixels.
 
- Public Member Functions inherited from nvneural::IRefObject
virtual RefCount addRef () const noexcept=0
 Increments the object's reference count. More...
 
virtual const void * queryInterface (TypeId interface) const noexcept=0
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
virtual void * queryInterface (TypeId interface) noexcept=0
 Retrieves a new object interface pointer. More...
 
virtual RefCount release () const noexcept=0
 Decrements the object's reference count and destroy the object if the reference count reaches zero. More...
 

Static Public Attributes

static const IRefObject::TypeId typeID = 0x2a21f61fbfee3221ul
 Interface TypeId for InterfaceOf purposes.
 
- Static Public Attributes inherited from nvneural::IRefObject
static const TypeId typeID = 0x14ecc3f9de638e1dul
 Interface TypeId for InterfaceOf purposes.
 

Additional Inherited Members

- Public Types inherited from nvneural::IRefObject
using RefCount = std::uint32_t
 Typedef used to track the number of active references to an object.
 
using TypeId = std::uint64_t
 Every interface must define a unique TypeId. This should be randomized.
 
- Protected Member Functions inherited from nvneural::IRefObject
virtual ~IRefObject ()=default
 A protected destructor prevents accidental stack-allocation of IRefObjects or use with other smart pointer classes like std::unique_ptr.
 

Detailed Description

IImage represents a bitmap image in system memory.

Member Function Documentation

◆ data()

virtual std::uint8_t* nvneural::IImage::data ( )
pure virtualnoexcept

Returns a pointer to the raw pixel data in HWC layout.

Returns nullptr if the object is not in a valid state.

◆ elements()

virtual std::size_t nvneural::IImage::elements ( ) const
pure virtualnoexcept

Returns the number of data elements in the image.

This can be calculated as height * width * channels.

◆ resize()

virtual NeuralResult nvneural::IImage::resize ( std::size_t  height,
std::size_t  width,
std::size_t  channels 
)
pure virtualnoexcept

Clears the image and reserves storage.

This ensures operations on data() will have an appropriately sized canvas.


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