Ptex

Classes | Namespaces | Enumerations | Functions
Ptexture.h File Reference

Public API classes for reading, writing, caching, and filtering Ptex files. More...

`#include "PtexExports.h"`
`#include "PtexInt.h"`
`#include "PtexVersion.h"`
`#include <ostream>`

Go to the source code of this file.

## Classes
struct | Ptex::Res
| Pixel resolution of a given texture. More...
struct | Ptex::FaceInfo
| Information about a face, as stored in the Ptex file header. More...
class | Ptex::String
| Memory-managed string. More...
class | PtexMetaData
| Meta data accessor. More...
class | PtexFaceData
| Per-face texture data accessor. More...
class | PtexTexture
| Interface for reading data from a ptex file. More...
struct | PtexTexture::Info
| Get most commonly used info in a single call for convenience / efficiency. More...
class | PtexInputHandler
| Custom handler interface for intercepting and redirecting Ptex input stream calls. More...
class | PtexErrorHandler
| Custom handler interface redirecting Ptex error messages. More...
class | PtexCache
| File-handle and memory cache for reading ptex files. More...
struct | PtexCache::Stats
class | PtexWriter
| Interface for writing data to a ptex file. More...
class | PtexFilter
| Interface for filtered sampling of ptex data files. More...
struct | PtexFilter::Options
| Choose filter options. More...
class | PtexPtr< T >
| Smart-pointer for acquiring and releasing API objects. More...

## Namespaces
namespace | Ptex
| Common data structures and enums used throughout the API.

## Enumerations
enum | Ptex::MeshType { Ptex::mt_triangle , Ptex::mt_quad }
| Type of base mesh for which the textures are defined. More...
enum | Ptex::DataType { Ptex::dt_uint8 , Ptex::dt_uint16 , Ptex::dt_half , Ptex::dt_float }
| Type of data stored in texture file. More...
enum | Ptex::EdgeFilterMode { Ptex::efm_none , Ptex::efm_tanvec }
| How to handle transformation across edges when filtering. More...
enum | Ptex::BorderMode { Ptex::m_clamp , Ptex::m_black , Ptex::m_periodic }
| How to handle mesh border when filtering. More...
enum | Ptex::EdgeId { Ptex::e_bottom , Ptex::e_right , Ptex::e_top , Ptex::e_left }
| Edge IDs used in adjacency data in the Ptex::FaceInfo struct. More...
enum | Ptex::MetaDataType { Ptex::mdt_string , Ptex::mdt_int8 , Ptex::mdt_int16 , Ptex::mdt_int32 , Ptex::mdt_float , Ptex::mdt_double }
| Type of meta data entry. More...

## Functions
const char * | Ptex::MeshTypeName (MeshType mt)
| Look up name of given mesh type.
const char * | Ptex::DataTypeName (DataType dt)
| Look up name of given data type.
const char * | Ptex::BorderModeName (BorderMode m)
| Look up name of given border mode.
const char * | Ptex::EdgeFilterModeName (EdgeFilterMode m)
| Look up name of given edge filter mode.
const char * | Ptex::EdgeIdName (EdgeId eid)
| Look up name of given edge ID.
const char * | Ptex::MetaDataTypeName (MetaDataType mdt)
| Look up name of given meta data type.
int | Ptex::DataSize (DataType dt)
| Look up size of given data type (in bytes).
float | Ptex::OneValue (DataType dt)
| Look up value of given data type that corresponds to the normalized value of 1.0.
float | Ptex::OneValueInv (DataType dt)
| Lookup up inverse value of given data type that corresponds to the normalized value of 1.0.
void | Ptex::ConvertToFloat (float *dst, const void *src, Ptex::DataType dt, int numChannels)
| Convert a number of data values from the given data type to float.
void | Ptex::ConvertFromFloat (void *dst, const float *src, Ptex::DataType dt, int numChannels)
| Convert a number of data values from float to the given data type.

## Detailed Description

Public API classes for reading, writing, caching, and filtering Ptex files.

Definition in file Ptexture.h.