HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PDG_AttributeGeometry Class Reference

#include <PDG_AttributeGeometry.h>

+ Inheritance diagram for PDG_AttributeGeometry:

Public Types

using Data = PDG_ApplicationShim::Geometry *
 
using Map = UT_StringMap< Data >
 

Public Member Functions

 PDG_AttributeGeometry ()
 
 PDG_AttributeGeometry (Data geometry)
 
 ~PDG_AttributeGeometry () override
 
int64 getMemoryUsage (bool inclusive) const override
 Returns the memory usage of the attribute and its data. More...
 
bool hash (SYS_HashType &hash_value, UT_WorkBuffer &errors) const override
 Return a hash value derived from the attribute data. More...
 
PDG_AttributeDataclone () const override
 Deep copies this attribute. More...
 
bool saveData (UT_JSONWriter &writer) const override
 Serializes the data to a JSON writer. More...
 
bool loadData (const UT_JSONValue &value) override
 Loads data from a JSON value. More...
 
bool compare (const PDG_AttributeData *other) const override
 Compares this data object with another data object. More...
 
PDG_AttributeMergeError merge (PDG_AttributeMergeOp merge_op, int stride) override
 Applies a merge op to the data in this attribute. More...
 
Data geometry () const
 
void setGeometry (Data geometry)
 
bool desc (UT_StringHolder &str) const
 
bool hasData () const
 
int size () const
 
bool valid (int component) const
 
bool value (Data &geometry, int component) const
 
void setValue (Data geometry, int index)
 
void swap (PDG_AttributeGeometry *other)
 
void copy (const PDG_AttributeGeometry *other)
 
- Public Member Functions inherited from PDG_AttributeData
 PDG_AttributeData ()
 
virtual ~PDG_AttributeData ()
 

Static Public Attributes

static constexpr PDG_AttributeType TypeEnum = PDG_AttributeType::eGeometry
 
- Static Public Attributes inherited from PDG_AttributeData
static constexpr PDG_AttributeType TypeEnum = PDG_AttributeType::eUndefined
 Attribute data version number. More...
 
static const UT_StringHolder theFlagKey
 
static const UT_StringHolder theTypeKey
 
static const UT_StringHolder theRuntimeKey
 
static const UT_StringHolder theConcatKey
 
static const UT_StringHolder theOwnKey
 
static const UT_StringHolder theValueKey
 

Additional Inherited Members

- Static Public Member Functions inherited from PDG_AttributeData
static PDG_AttributeDatafromType (PDG_AttributeType type)
 
static PDG_EventType eventType (PDG_AttributeType type)
 Static utility for returnign an event from type from an attribute type. More...
 
static PDG_AttributeType typeFromString (const UT_StringHolder &type_name)
 Returns an attribute type enum from the specified string name. More...
 
static PDG_AttributeIntrinsic intrinsicFromName (const UT_StringRef &name)
 Returns an intrinsic type from an attribue name. More...
 
static UT_StringHolder nameFromIntrinsic (PDG_AttributeIntrinsic attrib_type, const UT_StringHolder &name)
 Returns an attribute name from a intrinsic type a name string. More...
 
static bool validName (const UT_StringHolder &str, bool allow_internal=false)
 
static bool makeValidName (UT_StringHolder &name, const UT_StringHolder &str, bool allow_internal=false)
 
static UT_StringHolder typeName (PDG_AttributeType type)
 Returns the string name for the specififed attribute type. More...
 
static UT_StringHolder mergeName (PDG_AttributeMergeOp merge)
 Returns the string name for the specified merge op. More...
 
- Static Protected Member Functions inherited from PDG_AttributeData
static PDG_AttributeMergeError merge (UT_StringArray &data, PDG_AttributeMergeOp merge_op, int stride)
 Merge op utility for string array data. More...
 
static PDG_AttributeMergeError merge (PDG_File::Array &data, PDG_AttributeMergeOp merge_op, int stride)
 Merge op utility for file array data. More...
 
static PDG_AttributeMergeError merge (UT_ValArray< fpreal > &data, PDG_AttributeMergeOp merge_op, int stride)
 Merge op utility for float array data. More...
 
static PDG_AttributeMergeError merge (UT_ValArray< exint > &data, PDG_AttributeMergeOp merge_op, int stride)
 Merge op utility for int array data. More...
 

Detailed Description

Attribute that contains a single PDG_AttributeShim::Geometry* for storing geometry on a work item.

Definition at line 25 of file PDG_AttributeGeometry.h.

Member Typedef Documentation

Constructor & Destructor Documentation

PDG_AttributeGeometry::PDG_AttributeGeometry ( )
PDG_AttributeGeometry::PDG_AttributeGeometry ( Data  geometry)
explicit
PDG_AttributeGeometry::~PDG_AttributeGeometry ( )
override

Member Function Documentation

PDG_AttributeData* PDG_AttributeGeometry::clone ( ) const
overridevirtual

Deep copies this attribute.

Implements PDG_AttributeData.

bool PDG_AttributeGeometry::compare ( const PDG_AttributeData ) const
overridevirtual

Compares this data object with another data object.

Implements PDG_AttributeData.

void PDG_AttributeGeometry::copy ( const PDG_AttributeGeometry other)
bool PDG_AttributeGeometry::desc ( UT_StringHolder str) const
Data PDG_AttributeGeometry::geometry ( ) const
int64 PDG_AttributeGeometry::getMemoryUsage ( bool  inclusive) const
overridevirtual

Returns the memory usage of the attribute and its data.

Implements PDG_AttributeData.

bool PDG_AttributeGeometry::hasData ( ) const
inline

Definition at line 56 of file PDG_AttributeGeometry.h.

bool PDG_AttributeGeometry::hash ( SYS_HashType hash_value,
UT_WorkBuffer errors 
) const
overridevirtual

Return a hash value derived from the attribute data.

Implements PDG_AttributeData.

bool PDG_AttributeGeometry::loadData ( const UT_JSONValue )
overridevirtual

Loads data from a JSON value.

Implements PDG_AttributeData.

PDG_AttributeMergeError PDG_AttributeGeometry::merge ( PDG_AttributeMergeOp  merge_op,
int  stride 
)
overridevirtual

Applies a merge op to the data in this attribute.

Implements PDG_AttributeData.

bool PDG_AttributeGeometry::saveData ( UT_JSONWriter ) const
overridevirtual

Serializes the data to a JSON writer.

Implements PDG_AttributeData.

void PDG_AttributeGeometry::setGeometry ( Data  geometry)
void PDG_AttributeGeometry::setValue ( Data  geometry,
int  index 
)
inline

Definition at line 80 of file PDG_AttributeGeometry.h.

int PDG_AttributeGeometry::size ( void  ) const
inline

Definition at line 61 of file PDG_AttributeGeometry.h.

void PDG_AttributeGeometry::swap ( PDG_AttributeGeometry other)
inline

Definition at line 85 of file PDG_AttributeGeometry.h.

bool PDG_AttributeGeometry::valid ( int  component) const
inline

Definition at line 66 of file PDG_AttributeGeometry.h.

bool PDG_AttributeGeometry::value ( Data geometry,
int  component 
) const
inline

Definition at line 71 of file PDG_AttributeGeometry.h.

Member Data Documentation

constexpr PDG_AttributeType PDG_AttributeGeometry::TypeEnum = PDG_AttributeType::eGeometry
static

Definition at line 28 of file PDG_AttributeGeometry.h.


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