Lugdunum  0.1.0
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
lug::Graphics::Vulkan::Render::Texture Class Referencefinal

#include <Texture.hpp>

Inheritance diagram for lug::Graphics::Vulkan::Render::Texture:
[legend]
Collaboration diagram for lug::Graphics::Vulkan::Render::Texture:
[legend]

Public Member Functions

 Texture (const Texture &)=delete
 
 Texture (Texture &&)=delete
 
Textureoperator= (const Texture &)=delete
 
Textureoperator= (Texture &&)=delete
 
 ~Texture ()
 
const API::DeviceMemorygetDeviceMemory () const
 
const API::ImagegetImage () const
 
const API::ImageViewgetImageView () const
 
const API::SamplergetSampler () const
 
void destroy ()
 
- Public Member Functions inherited from lug::Graphics::Render::Texture
 Texture (const std::string &name)
 
 Texture (const Texture &)=delete
 
 Texture (Texture &&)=delete
 
Textureoperator= (const Texture &)=delete
 
Textureoperator= (Texture &&)=delete
 
uint32_t getWidth () const
 
uint32_t getHeight () const
 
Render::Texture::Format getFormat () const
 
Render::Texture::Filter getMagFilter () const
 
Render::Texture::Filter getMinFilter () const
 
Render::Texture::Filter getMipMapFilter () const
 
Render::Texture::WrappingMode getWrapS () const
 
Render::Texture::WrappingMode getWrapT () const
 
- Public Member Functions inherited from lug::Graphics::Resource
 Resource (Type type, const std::string &name)
 
 Resource (const Resource &)=delete
 
 Resource (Resource &&)=delete
 
Resourceoperator= (const Resource &)=delete
 
Resourceoperator= (Resource &&)=delete
 
virtual ~Resource ()=default
 
Type getType () const
 Returns the type of the Resource. More...
 
Handle getHandle () const
 Returns the handle of the Resource. More...
 
const std::string & getName () const
 Gets the name of the Resource. More...
 
void setName (const std::string &name)
 Sets the name of the Resource. More...
 

Private Member Functions

 Texture (const std::string &name)
 

Private Attributes

API::DeviceMemory _deviceMemory
 
API::Image _image
 
API::ImageView _imageView
 
API::Sampler _sampler
 

Friends

Resource::SharedPtr< lug::Graphics::Render::TextureBuilder::Texture::build (const ::lug::Graphics::Builder::Texture &)
 

Additional Inherited Members

- Public Types inherited from lug::Graphics::Render::Texture
enum  Filter : uint8_t { Filter::Nearest, Filter::Linear }
 
enum  WrappingMode : uint8_t { WrappingMode::ClampToEdge, WrappingMode::MirroredRepeat, WrappingMode::Repeat }
 
enum  Format : uint8_t {
  Format::Undefined, Format::R8G8B8A8_UNORM, Format::R16G16_SFLOAT, Format::R16G16B16_SFLOAT,
  Format::R32G32B32A32_SFLOAT
}
 
- Public Types inherited from lug::Graphics::Resource
enum  Type : uint8_t {
  Type::Scene, Type::SceneNode, Type::Material, Type::Mesh,
  Type::Light, Type::Texture, Type::Pipeline, Type::Camera,
  Type::SkyBox
}
 Type of the resource. More...
 
- Static Public Member Functions inherited from lug::Graphics::Render::Texture
static size_t formatToSize (Render::Texture::Format format)
 
- Protected Attributes inherited from lug::Graphics::Resource
std::string _name
 

Detailed Description

Definition at line 18 of file Texture.hpp.

Constructor & Destructor Documentation

◆ Texture() [1/3]

lug::Graphics::Vulkan::Render::Texture::Texture ( const Texture )
delete

◆ Texture() [2/3]

lug::Graphics::Vulkan::Render::Texture::Texture ( Texture &&  )
delete

◆ ~Texture()

lug::Graphics::Vulkan::Render::Texture::~Texture ( )
virtual

Reimplemented from lug::Graphics::Render::Texture.

Definition at line 11 of file Texture.cpp.

◆ Texture() [3/3]

lug::Graphics::Vulkan::Render::Texture::Texture ( const std::string &  name)
private

Definition at line 9 of file Texture.cpp.

Member Function Documentation

◆ operator=() [1/2]

Texture& lug::Graphics::Vulkan::Render::Texture::operator= ( const Texture )
delete

◆ operator=() [2/2]

Texture& lug::Graphics::Vulkan::Render::Texture::operator= ( Texture &&  )
delete

◆ getDeviceMemory()

const API::DeviceMemory & Texture::getDeviceMemory ( ) const
inline

Definition at line 1 of file Texture.inl.

◆ getImage()

const API::Image & Texture::getImage ( ) const
inline

Definition at line 5 of file Texture.inl.

◆ getImageView()

const API::ImageView & Texture::getImageView ( ) const
inline

Definition at line 9 of file Texture.inl.

◆ getSampler()

const API::Sampler & Texture::getSampler ( ) const
inline

Definition at line 13 of file Texture.inl.

◆ destroy()

void lug::Graphics::Vulkan::Render::Texture::destroy ( )

Definition at line 15 of file Texture.cpp.

Friends And Related Function Documentation

◆ Builder::Texture::build

Member Data Documentation

◆ _deviceMemory

API::DeviceMemory lug::Graphics::Vulkan::Render::Texture::_deviceMemory
private

Definition at line 41 of file Texture.hpp.

◆ _image

API::Image lug::Graphics::Vulkan::Render::Texture::_image
private

Definition at line 42 of file Texture.hpp.

◆ _imageView

API::ImageView lug::Graphics::Vulkan::Render::Texture::_imageView
private

Definition at line 43 of file Texture.hpp.

◆ _sampler

API::Sampler lug::Graphics::Vulkan::Render::Texture::_sampler
private

Definition at line 44 of file Texture.hpp.


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