Class ResourceTransferInfo

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class ResourceTransferInfo : public gpa::playback::ResourceInfo::Ex

Graphics API agnostic information for a resource transfer.

Public Types

enum class Type

Enumerates ResourceTransferInfo types.

Values:

enumerator UNKNOWN
enumerator CLEAR
enumerator COPY
enumerator FILL
enumerator LOAD
enumerator RESOLVE
enumerator UPDATE
enumerator COUNT

Public Functions

virtual TypeId GetTypeId() const final override

Gets this ResourceTransferInfo object's TypeId.

Returns

This ResourceTransferInfo object's TypeId

Public Members

Type type = {Type::UNKNOWN}

This ResourceTransferInfo's Type.

ResourceInfo const *pSrc = {nullptr}

A pointer to the source ResourceInfo.

ResourceInfo const *pDst = {nullptr}

A poitner to the destination ResourceInfo.

size_t regionCount = {0}

The number of Regions updated.

Region const *pRegions = {nullptr}

A pointer to regionCount Regions.

size_t srcDataSize = {0}

The size in bytes of the source data.

uint8_t const *pSrcData = {nullptr}

The source data transferred to pDst.

Note

This field is unused if pSrc is not nullptr

Protected Functions

virtual void OnRegister() final override

This method will be called when this ResourceInfo::Ex is registered for the first time.

Note

If this method is overriden ResourceInfo::Ex::OnRegister() must be called

struct Region

The region of a resource that is affected by a resource transfer.

Public Members

struct gpa::playback::ResourceTransferInfo::Region::Info src
struct gpa::playback::ResourceTransferInfo::Region::Info dst
struct Info

Public Members

api_types::BufferRegion buffer = {}

The api_types::BufferRegion of this ResourceTransferInfo::Region.

Note

This field is only used if the associated ResourceInfo is a BufferInfo

api_types::TextureType textureType = {api_types::GPA_TEXTURE_TYPE_UNKNOWN}

The api_types::TextureType of this ResourceTransferInfo::Region.

Note

This field is only used if the associated ResourceInfo is a TextureInfo

api_types::TextureRegion texture = {}

The api_types::TextureRegion of this ResourceTransferInfo::Region.

Note

This field is only used if the associated ResourceInfo is a TextureInfo