Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
ph::PlyElement Struct Referencefinal

PLY element storage. More...

#include <PlyFile.h>

Public Member Functions

 PlyElement ()
 
bool isLoaded () const
 
bool containsList () const
 
PlyPropertyfindProperty (std::string_view name)
 
PlyPropertyValues propertyValues (PlyProperty *prop)
 
PlyPropertyListValues listPropertyValues (PlyProperty *prop)
 

Public Attributes

std::string name
 
std::size_t numElements
 
std::vector< PlyPropertyproperties
 
std::size_t strideSize
 
std::vector< std::byte > rawBuffer
 

Detailed Description

PLY element storage.

Constructor & Destructor Documentation

◆ PlyElement()

ph::PlyElement::PlyElement ( )

Member Function Documentation

◆ containsList()

bool ph::PlyElement::containsList ( ) const

◆ findProperty()

PlyProperty * ph::PlyElement::findProperty ( std::string_view name)

◆ isLoaded()

bool ph::PlyElement::isLoaded ( ) const

◆ listPropertyValues()

PlyPropertyListValues ph::PlyElement::listPropertyValues ( PlyProperty * prop)

◆ propertyValues()

PlyPropertyValues ph::PlyElement::propertyValues ( PlyProperty * prop)

Member Data Documentation

◆ name

std::string ph::PlyElement::name

◆ numElements

std::size_t ph::PlyElement::numElements

◆ properties

std::vector<PlyProperty> ph::PlyElement::properties

◆ rawBuffer

std::vector<std::byte> ph::PlyElement::rawBuffer

Raw data storage for properties in a PLY element. Note that this buffer is for non-list properties only, as list may be variable-sized which will make properties no longer locatable via a constant stride size (properties in a PLY element is stored in AoS). Fixed size lists, in theory, can fit into non-list properties without problem; however, most data have list properties separated into its own element already and we find it is also easier to deal with lists with the current policy. Each list has its own raw data storage in PlyProperty::rawListBuffer.

◆ strideSize

std::size_t ph::PlyElement::strideSize

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