Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

class Enlighten::RefTextureUpdater

    └>Enlighten::IGpuTextureUpdater
        └>Geo::IGeoReleasable

Reference texture updater.

Functions

NameDescription
~RefTextureUpdater()

Destructor.

Create(Geo::s32, Geo::s32, Geo::s32)

Create 2D texture.

Create3D(Geo::s32, Geo::s32, Geo::s32, Geo::s32)

Create 3D.

CreateCubeMap(Geo::s32, Geo::s32, bool)

Create Cube Map.

GetCpuAccessiblePointer(Geo::s32)

Returns a CPU pointer to the memory used to update the GPU texture.

GetCpuAccessiblePointer(Geo::s32)

Get a CPU accessible pointer to the texture data.

GetNumMipLevels()

Get the number of mipmap levels.

GetNumMipLevels()

Returns the number of mip levels in the GPU texture - will only be bigger than 1 for cube maps.

GetRowPitch()

Get the texture row pitch.

GetRowPitch()

Returns the row pitch of the CPU memory associated with this GPU texture.

GetSlicePitch()

Get the texture slice pitch.

GetSlicePitch()

Returns the slice pitch of the CPU memory associated with this GPU texture, for 3D textures.

IsFormat(TextureFormat)

Check the format.

IsFormat(TextureFormat)

Returns true if the format of the GPU texture matches the given Enlighten format.

NonCopyable(NonCopyable &&)

Defaulted to allow move.

operator=(NonCopyable &&)

Defaulted to allow move.

Release()

Release.

Release()

Free this object that was created within the Enlighten libraries.

Update(const TextureSubSection &)

Update the texture sub-section.

Update()

Update the GPU copy of the texture on the render thread.

Update(const TextureSubSection &)

Update the GPU copy of the specified sub-region on the render thread.

Update()

Update the texture.

UpdateOnWorkerThread()

Potentially update the GPU copy of the texture on the worker thread.

UpdateOnWorkerThread(const TextureSubSection &)

Equivalent to parameter-less overload, but only update a sub-region of the texture.


Anchor
a22e6f5c75ce597ef1ea80d2eaa862559
a22e6f5c75ce597ef1ea80d2eaa862559

Enlighten::RefTextureUpdater::~RefTextureUpdater

...

protected: virtual ~RefTextureUpdater()

...

Destructor.


Anchor
a694efa4c7f489c2184e2cec4856f7400
a694efa4c7f489c2184e2cec4856f7400

RefTextureUpdater * Enlighten::RefTextureUpdater::Create

...

public: RefTextureUpdater * Create
(
    Geo::s32 width,
    Geo::s32 height,
    Geo::s32 bytesPerPixel
)

...

Create 2D texture.


Anchor
aac32d6738ef94348dc86a86ddacfcd55
aac32d6738ef94348dc86a86ddacfcd55

RefTextureUpdater * Enlighten::RefTextureUpdater::Create3D

...

public: RefTextureUpdater * Create3D
(
    Geo::s32 width,
    Geo::s32 height,
    Geo::s32 depth,
    Geo::s32 bytesPerPixel
)

...

Create 3D.


Anchor
ab3905099a7baf6b3776899bf93a739bc
ab3905099a7baf6b3776899bf93a739bc

RefTextureUpdater * Enlighten::RefTextureUpdater::CreateCubeMap

...

public: RefTextureUpdater * CreateCubeMap
(
    Geo::s32 faceWidth,
    Geo::s32 bytesPerPixel,
    bool mipChain
)

...

Create Cube Map.


Anchor
a18715dd9ec994ec4d18043feefb2e574
a18715dd9ec994ec4d18043feefb2e574

virtual void* Enlighten::IGpuTextureUpdater::GetCpuAccessiblePointer

...

public: void * GetCpuAccessiblePointer
(
    Geo::s32 faceIdx
)

...

Returns a CPU pointer to the memory used to update the GPU texture.

This may point directly to the GPU texture in unified memory architectures. The face index parameter is only relevant to cube maps.


Anchor
a299b0a0e0d1140faa3b8a6fb1c731cc8
a299b0a0e0d1140faa3b8a6fb1c731cc8

virtual void* Enlighten::RefTextureUpdater::GetCpuAccessiblePointer

...

public: virtual void * GetCpuAccessiblePointer
(
    Geo::s32 faceIdx
)

...

Get a CPU accessible pointer to the texture data.


Anchor
a3a6264eb2d8f7a09fcc16c8288a980e5
a3a6264eb2d8f7a09fcc16c8288a980e5

virtual Geo::s32 Enlighten::RefTextureUpdater::GetNumMipLevels

...

public: virtual Geo::s32 GetNumMipLevels()

...

Get the number of mipmap levels.


Anchor
a0bb2cccc88c1c3ee973a6c490f67ffd2
a0bb2cccc88c1c3ee973a6c490f67ffd2

virtual Geo::s32 Enlighten::IGpuTextureUpdater::GetNumMipLevels

...

public: Geo::s32 GetNumMipLevels()

...

Returns the number of mip levels in the GPU texture - will only be bigger than 1 for cube maps.


Anchor
a68da31ceb09d1a099cf75e261ac1c108
a68da31ceb09d1a099cf75e261ac1c108

virtual Geo::s32 Enlighten::RefTextureUpdater::GetRowPitch

...

public: virtual Geo::s32 GetRowPitch()

...

Get the texture row pitch.


Anchor
ac46bc16b556e12c11555ab67374e5948
ac46bc16b556e12c11555ab67374e5948

virtual Geo::s32 Enlighten::IGpuTextureUpdater::GetRowPitch

...

public: Geo::s32 GetRowPitch()

...

Returns the row pitch of the CPU memory associated with this GPU texture.


Anchor
aedccedd7cb8128330e860b1f60d0aa6a
aedccedd7cb8128330e860b1f60d0aa6a

virtual Geo::s32 Enlighten::RefTextureUpdater::GetSlicePitch

...

public: virtual Geo::s32 GetSlicePitch()

...

Get the texture slice pitch.


Anchor
a00313b7e0f97fe4231e8de7ec4cb04f8
a00313b7e0f97fe4231e8de7ec4cb04f8

virtual Geo::s32 Enlighten::IGpuTextureUpdater::GetSlicePitch

...

public: Geo::s32 GetSlicePitch()

...

Returns the slice pitch of the CPU memory associated with this GPU texture, for 3D textures.

Returns 0 for 2D textures, and -1 for cube maps.


Anchor
a62c990724865c3e666a52d6cdb4363c7
a62c990724865c3e666a52d6cdb4363c7

bool Enlighten::RefTextureUpdater::IsFormat

...

public: virtual bool IsFormat
(
    TextureFormat format
)

...

Check the format.


Anchor
ac60503e58f821090d466214a8832124d
ac60503e58f821090d466214a8832124d

virtual bool Enlighten::IGpuTextureUpdater::IsFormat

...

public: bool IsFormat
(
    TextureFormat format
)

...

Returns true if the format of the GPU texture matches the given Enlighten format.


Anchor
adaed81b4c59f263dcb4e78c4126f4683
adaed81b4c59f263dcb4e78c4126f4683

Geo::NonCopyable::NonCopyable

...

public: NonCopyable
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
a6abc781e23b8f4864e0b868806e0acbf
a6abc781e23b8f4864e0b868806e0acbf

NonCopyable& Geo::NonCopyable::operator=

...

public: NonCopyable & operator=
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
af878e8b8784b5294add48742a7185131
af878e8b8784b5294add48742a7185131

void Enlighten::RefTextureUpdater::Release

...

public: virtual void Release()

...

Release.


Anchor
af6bdf30b42adde386c428e9dc2821eb9
af6bdf30b42adde386c428e9dc2821eb9

virtual void Geo::IGeoReleasable::Release

...

public: void Release()

...

Free this object that was created within the Enlighten libraries.

Expect this to behave in a similar way to calling 'delete(this)'


Anchor
a03fc6b397fc8e8117bcc8987e7aeb4e1
a03fc6b397fc8e8117bcc8987e7aeb4e1

virtual void Enlighten::RefTextureUpdater::Update

...

public: virtual void Update
(
    const TextureSubSection & sub
)

...

Update the texture sub-section.


Anchor
a73311de29f507dbe76859017cd8c79ed
a73311de29f507dbe76859017cd8c79ed

virtual void Enlighten::IGpuTextureUpdater::Update

...

public: void Update()

...

Update the GPU copy of the texture on the render thread.


Anchor
a5b9991aeaef62e128aa385305e6cb6ee
a5b9991aeaef62e128aa385305e6cb6ee

virtual void Enlighten::IGpuTextureUpdater::Update

...

public: void Update
(
    const TextureSubSection & sub
)

...

Update the GPU copy of the specified sub-region on the render thread.


Anchor
a20a6424aef97bdb97c86eb258b6155ed
a20a6424aef97bdb97c86eb258b6155ed

virtual void Enlighten::RefTextureUpdater::Update

...

public: virtual void Update()

...

Update the texture.


Anchor
a3427d24e5fdff07e4a2c77b2de6c79ef
a3427d24e5fdff07e4a2c77b2de6c79ef

virtual void Enlighten::IGpuTextureUpdater::UpdateOnWorkerThread

...

public: virtual void UpdateOnWorkerThread()

...

Potentially update the GPU copy of the texture on the worker thread.

Implementers should use this method when the texture can safely be updated on a thread other than the render thread. The default implementation does nothing, in which case the update should be done in the regular Update function. The update should be performed here or in Update, not both.


Anchor
a009905f8aafc20111f05a8c4f3df7380
a009905f8aafc20111f05a8c4f3df7380

virtual void Enlighten::IGpuTextureUpdater::UpdateOnWorkerThread

...

public: virtual void UpdateOnWorkerThread
(
    const TextureSubSection & sub
)

...

Equivalent to parameter-less overload, but only update a sub-region of the texture.