RenderManAPI  24.0
RixDeepTexture Class Referenceabstract

RixDeepTexture. More...

#include <RixDeepTexture.h>

Inherits RixInterface.

Classes

class  DeepCache
 
class  DeepFile
 DeepFile. More...
 
class  DeepImage
 DeepImage. More...
 
class  DeepMetadata
 DeepMetadata. More...
 
class  DeepPixel
 DeepPixel. More...
 

Public Types

enum  Compression {
  k_CmpNone = 0, k_CmpRLE = 2, k_CmpLZW = 3, k_CmpHUFFMAN = 5,
  k_CmpZIP = 6
}
 
enum  DataType {
  k_TypeBYTE = 1, k_TypeSHORT = 2, k_TypeWORD = 3, k_TypeFLOAT = 4,
  k_TypeHALF = 5
}
 
enum  ErrorCodes {
  k_ErrNOMETADATA = -14, k_ErrBADCHANNEL = -13, k_ErrREADONLY = -12, k_ErrCAPACITY = -11,
  k_ErrTILECOMPRESSION = -10, k_ErrUNFINISHED = -9, k_ErrRANGE = -8, k_ErrNOMEM = -7,
  k_ErrEMPTY = -6, k_ErrNOIMAGE = -5, k_ErrUNSUPPORTED = -4, k_ErrBADFILE = -3,
  k_ErrNOFILE = -2, k_ErrERR = -1, k_ErrNOERR = 0
}
 
enum  Type {
  k_Float, k_Integer, k_StringV, k_Color,
  k_Normal, k_Vector, k_Point, k_HPoint,
  k_MPoint, k_Matrix
}
 

Public Member Functions

virtual DeepCacheCreateCache (int numTiles)=0
 Create a new tile cache. More...
 
virtual int DestroyCache (DeepCache *)=0
 Destroy a cache. More...
 
virtual int CreateFile (const char *name, DeepCache *, DeepFile **result)=0
 Open a deep texture file with the given filename, managed by the given cache. More...
 
virtual int IsDeepFile (const char *name, DeepCache *, int *version)=0
 Open and file and check whether it appears to be a deep texture. More...
 
virtual int OpenFile (const char *name, const char *mode, DeepCache *, DeepFile **result)=0
 Open a deep texture file with the given filename, managed by the given cache. More...
 
virtual int DestroyFile (DeepFile *)=0
 Destroy a DeepFile produced by either OpenFile or CreateFile. More...
 
virtual DeepPixelCreatePixel (int numChan)=0
 Create a DeepPixel for use with DeepImage channel data. More...
 
virtual void DestroyPixel (DeepPixel *)=0
 Destroy a DeepPixel. More...
 
virtual int GetVersion () const
 Get the version number of this interface. More...
 

Protected Member Functions

 RixDeepTexture ()
 Constructor is for internal use only. More...
 

Protected Attributes

int m_version
 Version number of this interface. More...
 

Detailed Description

RixDeepTexture.

NOTICE: This Rix Interface is now deprecated and will be removed in a future release

This interface provides the classes and methods necessary to create, load, and modify Pixar deep texture files. It maintains a tile cache, under the covers, making it possible to work on files without loading them entirely into memory.

The API supports an arbitrary number of images in a single file, each with its own resolution, tile size, and view matrices.

The library can read and write old deep shadow files in addition to newer, more general deep texture files. Deep shadow files are limited to a single sub-image, but otherwise have the same API as the newer interface.

Member Enumeration Documentation

◆ Compression

Enumerator
k_CmpNone 
k_CmpRLE 
k_CmpLZW 
k_CmpHUFFMAN 
k_CmpZIP 

◆ DataType

Enumerator
k_TypeBYTE 
k_TypeSHORT 
k_TypeWORD 
k_TypeFLOAT 
k_TypeHALF 

◆ ErrorCodes

Enumerator
k_ErrNOMETADATA 

Metadata entry was not found.

k_ErrBADCHANNEL 

Channel mismatch between pixels or tiles.

k_ErrREADONLY 

Attempt to modify file loaded as read only.

k_ErrCAPACITY 

Tried to go past 2GB on a small capacity file.

k_ErrTILECOMPRESSION 

Error during tile compression.

k_ErrUNFINISHED 

Illegal operation on pixel with unresolved compression state.

k_ErrRANGE 

Out of range parameter.

k_ErrNOMEM 

Ran out of memory.

k_ErrEMPTY 

Illegal operation on an empty structure.

k_ErrNOIMAGE 

The specified image was not found.

k_ErrUNSUPPORTED 

The specified operation is not supported.

k_ErrBADFILE 

File was corrupt.

k_ErrNOFILE 

File was not found or was invalid.

k_ErrERR 

File was not found or was invalid.

k_ErrNOERR 

No worries.

◆ Type

enum RixInterface::Type
inherited
Enumerator
k_Float 
k_Integer 
k_StringV 
k_Color 
k_Normal 
k_Vector 
k_Point 
k_HPoint 
k_MPoint 
k_Matrix 

Constructor & Destructor Documentation

◆ RixDeepTexture()

RixDeepTexture::RixDeepTexture ( )
inlineprotected

Constructor is for internal use only.

Member Function Documentation

◆ CreateCache()

virtual DeepCache* RixDeepTexture::CreateCache ( int  numTiles)
pure virtual

Create a new tile cache.

This cache can be associated with one more more images and enables out-of-core DeepFile manipulation.

◆ CreateFile()

virtual int RixDeepTexture::CreateFile ( const char *  name,
DeepCache ,
DeepFile **  result 
)
pure virtual

Open a deep texture file with the given filename, managed by the given cache.

◆ CreatePixel()

virtual DeepPixel* RixDeepTexture::CreatePixel ( int  numChan)
pure virtual

Create a DeepPixel for use with DeepImage channel data.

◆ DestroyCache()

virtual int RixDeepTexture::DestroyCache ( DeepCache )
pure virtual

Destroy a cache.

This must not be called until all open files associated with the cache have been destroyed.

◆ DestroyFile()

virtual int RixDeepTexture::DestroyFile ( DeepFile )
pure virtual

Destroy a DeepFile produced by either OpenFile or CreateFile.

◆ DestroyPixel()

virtual void RixDeepTexture::DestroyPixel ( DeepPixel )
pure virtual

Destroy a DeepPixel.

◆ GetVersion()

virtual int RixInterface::GetVersion ( ) const
inlinevirtualinherited

Get the version number of this interface.

Different interfaces might have different version numbers in a given release.

References RixInterface::m_version.

◆ IsDeepFile()

virtual int RixDeepTexture::IsDeepFile ( const char *  name,
DeepCache ,
int *  version 
)
pure virtual

Open and file and check whether it appears to be a deep texture.

Returns k_ErrNOERR and sets version to the file format version if the named file is a deep texture.

◆ OpenFile()

virtual int RixDeepTexture::OpenFile ( const char *  name,
const char *  mode,
DeepCache ,
DeepFile **  result 
)
pure virtual

Open a deep texture file with the given filename, managed by the given cache.

Member Data Documentation

◆ m_version

int RixInterface::m_version
protectedinherited

Version number of this interface.

Referenced by RixInterface::GetVersion().


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