Euclid
Geometry Processing and Shape Analysis in C++
Euclid::PlyProperty Class Referenceabstract

Base class for ply property. More...

#include <PlyIO.h>

Inheritance diagram for Euclid::PlyProperty:
Euclid::PlyCharProperty Euclid::PlyDoubleProperty Euclid::PlyFloatProperty Euclid::PlyIntProperty Euclid::PlyShortProperty Euclid::PlyUcharProperty Euclid::PlyUintProperty Euclid::PlyUshortProperty

Public Member Functions

 PlyProperty (const std::string &name)
 
 PlyProperty (const std::string &name, bool is_list)
 
 PlyProperty (const PlyProperty &)=default
 
 PlyProperty (PlyProperty &&)=default
 
PlyPropertyoperator= (const PlyProperty &)=default
 
PlyPropertyoperator= (PlyProperty &&)=default
 
const std::string & name () const
 Return the name of this property.
 
bool is_list () const
 Return if this property is a list property.
 
virtual std::string type_str () const =0
 Return the string for this type in the header.
 
virtual void apply (PlyReader &reader, std::ifstream &stream, PlyFormat format) const =0
 Apply a PlyReader visitor on this property.
 
virtual void apply (PlyWriter &writer, std::ofstream &stream, PlyFormat format) const =0
 Apply a PlyWriter visitor on this property.
 

Detailed Description

Property represents a value, or a list of values in a ply file. Every element in ply has one or more properties. Each property should have a name and a type. Note that the type of a property acts more like an indicator for its bit width rather than a type specifier, for example unsigned char values represent numbers ranging from 0 to 255, rather than a single character as comprehended in c++. In practice, you should use one of the derived typed-classes and they are the only supported types by ply specification.


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