HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GA_AIFBlobArray Class Referenceabstract

Attribute Interface for accessing generic blob data. More...

#include <GA_AIFBlobArray.h>

Public Member Functions

 GA_AIFBlobArray ()
 
virtual ~GA_AIFBlobArray ()
 
virtual GA_Size getBlobCount (const GA_Attribute *attrib) const =0
 Return the total number of unique blobs stored in the attribute. More...
 
virtual GA_BlobRef lookupBlob (const GA_Attribute *attrib, GA_BlobIndex handle) const =0
 Given a blob integer identifier, return a handle to the actual blob data. More...
 
virtual GA_BlobRef lookupOrderedBlob (const GA_Attribute *attrib, exint index) const =0
 
virtual void getBlobIndex (const GA_Attribute *atr, UT_Array< GA_BlobIndex > &indices, GA_Offset offset) const =0
 
virtual void getBlob (const GA_Attribute *attrib, UT_Array< GA_BlobRef > &blobs, GA_Offset offset) const =0
 Get the blob data associated with the tuple index of the given element. More...
 
virtual bool setBlob (GA_Attribute *attrib, const UT_Array< GA_BlobRef > &blobs, GA_Offset offset) const =0
 Store a blob on the given element. More...
 
virtual bool replaceBlob (GA_Attribute *attrib, GA_BlobIndex handle, const GA_BlobRef &new_blob) const =0
 
virtual void compactStorage (GA_Attribute *attrib) const =0
 Compact the storage by removing empty indexes. More...
 

Protected Member Functions

virtual GA_BlobIndex addBlobReference (GA_Attribute *attrib, const GA_BlobRef &blob) const =0
 
virtual void delBlobReference (GA_Attribute *attrib, GA_BlobIndex handle) const =0
 

Detailed Description

Attribute Interface for accessing generic blob data.

This attribute interface allows access to blob data on an attribute. This is provided automatically if you inherit from GA_ATIBlob.

Definition at line 39 of file GA_AIFBlobArray.h.

Constructor & Destructor Documentation

GA_AIFBlobArray::GA_AIFBlobArray ( )
virtual GA_AIFBlobArray::~GA_AIFBlobArray ( )
virtual

Member Function Documentation

virtual GA_BlobIndex GA_AIFBlobArray::addBlobReference ( GA_Attribute attrib,
const GA_BlobRef blob 
) const
protectedpure virtual

Methods used by the BlobBuffer methods to add an unreferenced blob to the attribute.

virtual void GA_AIFBlobArray::compactStorage ( GA_Attribute attrib) const
pure virtual

Compact the storage by removing empty indexes.

virtual void GA_AIFBlobArray::delBlobReference ( GA_Attribute attrib,
GA_BlobIndex  handle 
) const
protectedpure virtual
virtual void GA_AIFBlobArray::getBlob ( const GA_Attribute attrib,
UT_Array< GA_BlobRef > &  blobs,
GA_Offset  offset 
) const
pure virtual

Get the blob data associated with the tuple index of the given element.

virtual GA_Size GA_AIFBlobArray::getBlobCount ( const GA_Attribute attrib) const
pure virtual

Return the total number of unique blobs stored in the attribute.

virtual void GA_AIFBlobArray::getBlobIndex ( const GA_Attribute atr,
UT_Array< GA_BlobIndex > &  indices,
GA_Offset  offset 
) const
pure virtual

Get the integer identifier for the blob associated with the tuple index of the given element. An element with no blob data will have an index less than 0.

virtual GA_BlobRef GA_AIFBlobArray::lookupBlob ( const GA_Attribute attrib,
GA_BlobIndex  handle 
) const
pure virtual

Given a blob integer identifier, return a handle to the actual blob data.

virtual GA_BlobRef GA_AIFBlobArray::lookupOrderedBlob ( const GA_Attribute attrib,
exint  index 
) const
pure virtual

Blob handles (GA_BlobIndex) may not be contiguous. This may be an expensive operation.

virtual bool GA_AIFBlobArray::replaceBlob ( GA_Attribute attrib,
GA_BlobIndex  handle,
const GA_BlobRef new_blob 
) const
pure virtual

Replace the value of the blob at the given index with a new value. Implementors should be careful to check whether the new_blob exists (i.e. renaming an existing blob to another existing blob). All blobs which reference the original handle will now reference the new blob.

virtual bool GA_AIFBlobArray::setBlob ( GA_Attribute attrib,
const UT_Array< GA_BlobRef > &  blobs,
GA_Offset  offset 
) const
pure virtual

Store a blob on the given element.


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